diff --git a/Operation.cpp b/Operation.cpp index 7ed7da4..5fd935d 100644 --- a/Operation.cpp +++ b/Operation.cpp @@ -2718,15 +2718,16 @@ Operation::AdjustStartEndMovements( bool bVerifyPreviousLink) if ( m_pMchMgr == nullptr || m_pGeomDB == nullptr || m_pMchMgr->GetCurrMachine() == nullptr) return false ; - // se lavorazione completamente vuota, non devo fare alcunché - if ( ! IsAtLeastOnePathOk()) + // se operazione vuota, non devo fare alcunché + if ( IsEmpty( NEED_ONE_TP_OK)) return true ; // recupero ultima operazione precedente non vuota o che richiede home precedente + // (disposizione qui considerata non vuota anche se nella path contiene solo comandi ausiliari) int nPrevOpId = m_pMchMgr->GetPrevActiveOperation( m_nOwnerId) ; Operation* pPrevOp = GetOperation( m_pGeomDB->GetUserObj( nPrevOpId)) ; while ( pPrevOp != nullptr) { - if ( pPrevOp->IsAtLeastOnePathOk() || pPrevOp->NeedPrevHome()) + if ( ! pPrevOp->IsEmpty( NEED_ONE_TP_OK) || pPrevOp->NeedPrevHome()) break ; else { nPrevOpId = m_pMchMgr->GetPrevActiveOperation( nPrevOpId) ; @@ -2735,7 +2736,7 @@ Operation::AdjustStartEndMovements( bool bVerifyPreviousLink) } // recupero l'utensile precedente e i dati della sua testa string sPrevTool ; - if ( pPrevOp != nullptr && pPrevOp->IsAtLeastOnePathOk()) + if ( pPrevOp != nullptr && ! pPrevOp->IsEmpty( NEED_ONE_TP_OK)) sPrevTool = pPrevOp->GetToolName() ; // flag nuova gestione collegamenti tra lavorazioni