EgtMachKernel :

- in foratura con teste con uscite multiple non si considerano gli utensili diversi da punta a forare.
This commit is contained in:
Dario Sassi
2024-06-13 12:09:39 +02:00
parent 3d46b4b41b
commit fbf91fcafa
+12 -2
View File
@@ -741,8 +741,18 @@ Drilling::VerifyMultiParallelFixedDrills( void)
continue ;
string sToolName ;
if ( m_pMchMgr->GetLoadedTool( m_TParams.m_sHead, nT + 1, sToolName) && ! sToolName.empty()) {
// verifico sia una punta a forare
int nType = TT_NONE ;
string sCurrTool ; m_pMchMgr->TdbGetCurrToolParam( TPA_NAME, sCurrTool) ;
if ( m_pMchMgr->TdbSetCurrTool( sToolName)) {
m_pMchMgr->TdbGetCurrToolParam( TPA_TYPE, nType) ;
if ( ! IsEmptyOrSpaces( sCurrTool))
m_pMchMgr->TdbSetCurrTool( sCurrTool) ;
}
// verifico punta con direzione corretta
Point3d ptExit ; Vector3d vtTool, vtAux ;
if ( m_pMchMgr->GetCurrMachine()->GetHeadExitPosDirAux(m_TParams.m_sHead, nT + 1, ptExit, vtTool, vtAux) &&
if ( ( nType & TF_DRILLBIT) != 0 &&
m_pMchMgr->GetCurrMachine()->GetHeadExitPosDirAux(m_TParams.m_sHead, nT + 1, ptExit, vtTool, vtAux) &&
AreSameVectorApprox( vtTool, vtMainTool))
return true ;
}
@@ -766,7 +776,7 @@ Drilling::StandardProcess( bool bRecalc, int nPvId, int nClId)
for ( int i = 0 ; i < ( int)tabDrills.size() ; ++i) {
// se richiesto preview
if ( nPvId != GDB_ID_NULL) {
if ( ! GenerateHolePv( i, m_vId[tabDrills[i][0].nInd_id_hole], MCH_PATH, nClId))
if ( ! GenerateHolePv( i, m_vId[tabDrills[i][0].nInd_id_hole], MCH_PATH, nPvId))
return false ;
// creo la regione di ingombro del foro
int nDriId = m_pGeomDB->GetFirstInGroup( m_pGeomDB->GetLastGroupInGroup( nPvId)) ;