EgtMachKernel :
- modifiche per gestione aggregato da sotto in foratura e fresatura - modifiche per nuovi tipi di uscite lame allungate.
This commit is contained in:
+8
-25
@@ -919,7 +919,7 @@ Operation::CalculateClPathAxesValues( int nClPathId, int nLinAxes, int nRotAxes,
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
Operation::AdjustStartEndMovements( bool bOnlyStart)
|
||||
Operation::AdjustStartEndMovements( void)
|
||||
{
|
||||
if ( m_pMchMgr == nullptr || m_pGeomDB == nullptr)
|
||||
return false ;
|
||||
@@ -1018,9 +1018,6 @@ Operation::AdjustStartEndMovements( bool bOnlyStart)
|
||||
if ( ! AdjustOneStartMovement( nClPathId, vAxVal, bHomeZ))
|
||||
bOk = false ;
|
||||
bHomeZ = false ;
|
||||
//// se solo inizio, ho finito
|
||||
// if ( bOnlyStart)
|
||||
// return bOk ;
|
||||
// recupero nuovi finali
|
||||
if ( ! GetClPathFinalAxesValues( nClPathId, vAxVal))
|
||||
bOk = false ;
|
||||
@@ -1031,27 +1028,8 @@ Operation::AdjustStartEndMovements( bool bOnlyStart)
|
||||
// aggiungo risalita finale
|
||||
bOk = bOk && AddRise( vAxVal) ;
|
||||
|
||||
//// recupero la lavorazione successiva non vuota
|
||||
// int nNextOpId = m_pMchMgr->GetNextActiveOperation( m_nOwnerId) ;
|
||||
// Operation* pNextOp = GetOperation( m_pGeomDB->GetUserObj( nNextOpId)) ;
|
||||
// while ( pNextOp != nullptr) {
|
||||
// if ( ! pNextOp->IsEmpty())
|
||||
// break ;
|
||||
// else {
|
||||
// nNextOpId = m_pMchMgr->GetNextActiveOperation( nNextOpId) ;
|
||||
// pNextOp = GetOperation( m_pGeomDB->GetUserObj( nNextOpId)) ;
|
||||
// }
|
||||
// }
|
||||
// verifico se disposizione
|
||||
|
||||
|
||||
//// se non esiste lavorazione successiva, vado in home
|
||||
// if ( pNextOp == nullptr)
|
||||
bOk = bOk && AddHome() ;
|
||||
|
||||
//// altrimenti aggiusto l'inizio della lavorazione successiva con il finale di questa
|
||||
// else
|
||||
// bOk = bOk && pNextOp->AdjustStartEndMovements( true) ;
|
||||
// vado in home
|
||||
bOk = bOk && AddHome() ;
|
||||
|
||||
return bOk ;
|
||||
}
|
||||
@@ -1077,6 +1055,7 @@ Operation::AdjustOneStartMovement( int nClPathId, const DBLVECTOR& vAxPrev, bool
|
||||
if ( m_pGeomDB->Copy( nEntId, GDB_ID_NULL, nEntId, GDB_AFTER) == GDB_ID_NULL)
|
||||
return false ;
|
||||
// modifico quella originale (è la prima del percorso)
|
||||
m_pGeomDB->RemoveName( nEntId) ;
|
||||
DBLVECTOR vAxNew = vAxCurr ;
|
||||
vAxNew[2] = vAxPrev[2] ;
|
||||
// eventuale aggiustamenti speciali dipendenti dalla macchina
|
||||
@@ -1115,6 +1094,7 @@ Operation::AdjustOneStartMovement( int nClPathId, const DBLVECTOR& vAxPrev, bool
|
||||
if ( pNew1CamData == nullptr)
|
||||
return false ;
|
||||
// modifico questa entità
|
||||
m_pGeomDB->RemoveName( nNew1Id) ;
|
||||
DBLVECTOR vAxNew1 = vAxPrev ;
|
||||
vAxNew1[2] = dHomeZ ;
|
||||
int nMask = CamData::MSK_L3 ;
|
||||
@@ -1151,6 +1131,7 @@ Operation::AdjustOneStartMovement( int nClPathId, const DBLVECTOR& vAxPrev, bool
|
||||
if ( pNew2CamData == nullptr)
|
||||
return false ;
|
||||
// modifico quella originale (è la prima del percorso)
|
||||
m_pGeomDB->RemoveName( nNew2Id) ;
|
||||
DBLVECTOR vAxNew2 = vAxCurr ;
|
||||
vAxNew2[2] = dHomeZ ;
|
||||
pNew2CamData->SetAxes( CamData::AS_OK, vAxNew2) ;
|
||||
@@ -1168,6 +1149,7 @@ Operation::AdjustOneStartMovement( int nClPathId, const DBLVECTOR& vAxPrev, bool
|
||||
if ( m_pGeomDB->Copy( nEntId, GDB_ID_NULL, nEntId, GDB_AFTER) == GDB_ID_NULL)
|
||||
return false ;
|
||||
// modifico quella originale (è la prima del percorso)
|
||||
m_pGeomDB->RemoveName( nEntId) ;
|
||||
DBLVECTOR vAxNew = vAxPrev ;
|
||||
vAxNew[2] = vAxCurr[2] ;
|
||||
pCamData->SetAxes( CamData::AS_OK, vAxNew) ;
|
||||
@@ -1180,6 +1162,7 @@ Operation::AdjustOneStartMovement( int nClPathId, const DBLVECTOR& vAxPrev, bool
|
||||
if ( m_pGeomDB->Copy( nEntId, GDB_ID_NULL, nEntId, GDB_AFTER) == GDB_ID_NULL)
|
||||
return false ;
|
||||
// modifico quella originale (è la prima del percorso)
|
||||
m_pGeomDB->RemoveName( nEntId) ;
|
||||
DBLVECTOR vAxNew = vAxCurr ;
|
||||
vAxNew[2] = vAxPrev[2] ;
|
||||
// eventuali aggiustamenti speciali dipendenti dalla macchina
|
||||
|
||||
Reference in New Issue
Block a user