EgtMachKernel 1.8c1 :

- liberalizzati nomi di utensili e lavorazioni (ora vietato solo carattere '\n')
- migliorati controlli su reset lavorazione corrente
- corretta elevazione di fresatura, svuotatura e scalpellatura quando percorso su superficie superiore del grezzo
- corretto controllo step di fresatura e svuotatura quando nullo.
This commit is contained in:
Dario Sassi
2017-03-02 18:08:09 +00:00
parent 284525c926
commit aec93d06fb
10 changed files with 46 additions and 23 deletions
+6 -2
View File
@@ -1073,7 +1073,7 @@ Pocketing::ProcessPath( int nPathId, int nPvId, int nClId)
if ( dElev < EPS_SMALL && AreSameVectorApprox( vtExtr, Z_AX)) {
BBox3d b3Crv ;
pCompo->GetLocalBBox( b3Crv) ;
dElev = max( 0., b3Raw.GetMax().z - b3Crv.GetMin().z + dDepth) ;
dElev = max( 0., b3Raw.GetMax().z - b3Crv.GetMin().z + min( 0., dThick) + dDepth) ;
}
}
else
@@ -1091,7 +1091,7 @@ Pocketing::ProcessPath( int nPathId, int nPvId, int nClId)
// verifico che lo step dell'utensile sia sensato
double dOkStep = m_Params.m_dStep ;
const double MIN_ZSTEP = 1.0 ;
if ( dOkStep < MIN_ZSTEP) {
if ( dOkStep >= EPS_SMALL && dOkStep < MIN_ZSTEP) {
dOkStep = MIN_ZSTEP ;
string sInfo = "Warning in Pocketing : machining step too small (" +
ToString( m_Params.m_dStep, 2) + ")" ;
@@ -1997,6 +1997,10 @@ Pocketing::AddLeadIn( const Point3d& ptP1, const Point3d& ptStart, const Vector3
// Eseguo a seconda del tipo
switch ( nType) {
case POCKET_LI_NONE :
if ( ! AreSamePointApprox( ptP1, ptStart)) {
if ( AddLinearMove( ptStart, MCH_CL_LEADIN) == GDB_ID_NULL)
return false ;
}
return true ;
case POCKET_LI_GLIDE :
// !!! DA FARE !!!