EgtMachKernel 1.9i3 :
- in fresature e svuotature aggiunto controllo massimo affondamento anche con lavorazione a step.
This commit is contained in:
+12
-5
@@ -136,22 +136,29 @@ Machine::LoadTool( Exit* pExit, const string& sTool)
|
||||
int nSolidId = m_pGeomDB->GetFirstNameInGroup( nTGrpId, "SOLID") ;
|
||||
if ( nSolidId == GDB_ID_NULL)
|
||||
return false ;
|
||||
// sposto eventuali info relative al porta utensile (ToolHolder) nel gruppo SOLID
|
||||
double dVal ;
|
||||
if ( m_pGeomDB->GetInfo( nTGrpId, TTH_LEN, dVal))
|
||||
m_pGeomDB->SetInfo( nSolidId, TTH_LEN, dVal) ;
|
||||
if ( m_pGeomDB->GetInfo( nTGrpId, TTH_DIAM, dVal))
|
||||
m_pGeomDB->SetInfo( nSolidId, TTH_DIAM, dVal) ;
|
||||
if ( m_pGeomDB->GetInfo( nTGrpId, TTH_STEM_DIAM, dVal))
|
||||
m_pGeomDB->SetInfo( nSolidId, TTH_STEM_DIAM, dVal) ;
|
||||
// sposto il gruppo SOLID nell'uscita ed elimino la sua vecchia base
|
||||
m_pGeomDB->RelocateGlob( nSolidId, nExGrp, GDB_FIRST_SON) ;
|
||||
m_pGeomDB->Erase( nTGrpId) ;
|
||||
// rinomino il gruppo SOLID con il nome dell'utensile
|
||||
if ( ! m_pGeomDB->SetName( nSolidId, sTool)) {
|
||||
string sOut = "LoadTool error : " + sTool + " invalid name" ;
|
||||
LOG_INFO( GetEMkLogger(), sOut.c_str())
|
||||
return false ;
|
||||
}
|
||||
// lo ruoto 90 deg attorno alla X locale
|
||||
int nT = m_pGeomDB->GetFirstGroupInGroup( nExGrp) ;
|
||||
if ( nT == GDB_ID_NULL)
|
||||
return false ;
|
||||
m_pGeomDB->Rotate( nT, ORIG, X_AX, 0, 1) ;
|
||||
m_pGeomDB->Rotate( nSolidId, ORIG, X_AX, 0, 1) ;
|
||||
// se mortasa, lo ruoto 90 deg attorno a Z
|
||||
int nType ;
|
||||
if ( m_pMchMgr->TdbGetCurrToolParam( TPA_TYPE, nType) && nType == TT_MORTISE_STD)
|
||||
m_pGeomDB->Rotate( nT, ORIG, Z_AX, 0, 1) ;
|
||||
m_pGeomDB->Rotate( nSolidId, ORIG, Z_AX, 0, 1) ;
|
||||
pExit->SetTool( sTool) ;
|
||||
return true ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user