EgtMachKernel 1.6t1 :
- aggiunto a Disposizione flag di presenza movimenti manuali - portata in interfaccia funzione per rimovere movimento finale in home da operazione.
This commit is contained in:
+10
-10
@@ -455,11 +455,11 @@ Operation::CalculateAxesValues( void)
|
||||
{
|
||||
if ( m_pMchMgr == nullptr || m_pGeomDB == nullptr)
|
||||
return false ;
|
||||
// recupero l'operazione precedente non vuota
|
||||
// recupero l'operazione precedente non vuota o che richiede home precedente
|
||||
int nPrevOpId = m_pMchMgr->GetPrevActiveOperation( m_nOwnerId) ;
|
||||
Operation* pPrevOp = GetOperation( m_pGeomDB->GetUserObj( nPrevOpId)) ;
|
||||
while ( pPrevOp != nullptr) {
|
||||
if ( ! pPrevOp->IsEmpty())
|
||||
if ( ! pPrevOp->IsEmpty() || pPrevOp->NeedPrevHome())
|
||||
break ;
|
||||
else {
|
||||
nPrevOpId = m_pMchMgr->GetPrevActiveOperation( nPrevOpId) ;
|
||||
@@ -468,15 +468,15 @@ Operation::CalculateAxesValues( void)
|
||||
}
|
||||
// recupero l'utensile precedente
|
||||
string sPrevTool ;
|
||||
if ( pPrevOp != nullptr)
|
||||
if ( pPrevOp != nullptr && ! pPrevOp->IsEmpty())
|
||||
sPrevTool = pPrevOp->GetToolName() ;
|
||||
|
||||
// imposto l'utensile per i calcoli macchina
|
||||
if ( ! m_pMchMgr->SetCalcTool( GetToolName(), GetHeadName(), GetExitNbr()))
|
||||
return false ;
|
||||
|
||||
// rimuovo posizionamento home da lavorazione precedente (non può più essere l'ultima)
|
||||
if ( pPrevOp != nullptr)
|
||||
// rimuovo posizionamento home da lavorazione precedente se non richiesto (non può più essere l'ultima)
|
||||
if ( pPrevOp != nullptr && ! NeedPrevHome())
|
||||
pPrevOp->RemoveHome() ;
|
||||
|
||||
// recupero il numero di assi lineari e rotanti attivi
|
||||
@@ -758,11 +758,11 @@ Operation::AdjustStartEndMovements( bool bOnlyStart)
|
||||
if ( nClId == GDB_ID_NULL)
|
||||
return false ;
|
||||
|
||||
// recupero la lavorazione precedente non vuota
|
||||
// recupero ultima operazione precedente non vuota o che richiede home precedente
|
||||
int nPrevOpId = m_pMchMgr->GetPrevActiveOperation( m_nOwnerId) ;
|
||||
Operation* pPrevOp = GetOperation( m_pGeomDB->GetUserObj( nPrevOpId)) ;
|
||||
while ( pPrevOp != nullptr) {
|
||||
if ( ! pPrevOp->IsEmpty())
|
||||
if ( ! pPrevOp->IsEmpty() || pPrevOp->NeedPrevHome())
|
||||
break ;
|
||||
else {
|
||||
nPrevOpId = m_pMchMgr->GetPrevActiveOperation( nPrevOpId) ;
|
||||
@@ -771,14 +771,14 @@ Operation::AdjustStartEndMovements( bool bOnlyStart)
|
||||
}
|
||||
// recupero l'utensile precedente e i dati della sua testa
|
||||
string sPrevTool ;
|
||||
if ( pPrevOp != nullptr)
|
||||
if ( pPrevOp != nullptr && ! pPrevOp->IsEmpty())
|
||||
sPrevTool = pPrevOp->GetToolName() ;
|
||||
|
||||
// determino posizione precedente assi
|
||||
DBLVECTOR vAxVal ;
|
||||
bool bHomeZ = false ;
|
||||
// se primo utensile, uso la posizione home
|
||||
if ( sPrevTool.empty()) {
|
||||
// se primo utensile o richiesto, uso la posizione home
|
||||
if ( sPrevTool.empty() || NeedPrevHome()) {
|
||||
// imposto l'utensile per i calcoli macchina
|
||||
if ( ! m_pMchMgr->SetCalcTool( GetToolName(), GetHeadName(), GetExitNbr()))
|
||||
return false ;
|
||||
|
||||
Reference in New Issue
Block a user