EgtMachKernel :

- in calcolo angoli macchina aggiunta segnalazione di direzione utensile irraggiungibile
- in disposizione aggiunti controlli di sottopezzo e grezzo in tavola
- in simulazione la Move ora restituisce uno stato
- migliorato calcolo elevazione per lavorazioni con lama
- la tavola macchina conserva l'area utile.
This commit is contained in:
Dario Sassi
2015-11-23 09:06:44 +00:00
parent 8dd67afcb7
commit 2f016585bb
15 changed files with 134 additions and 49 deletions
+5 -6
View File
@@ -349,7 +349,7 @@ Machining::GetFinalAxesValues( DBLVECTOR& vAxVal)
return false ;
// assegno i valori degli assi
vAxVal = pCamData->GetAxisVal() ;
return true ;
return ( vAxVal.size() > 0) ;
}
//----------------------------------------------------------------------------
@@ -375,10 +375,10 @@ Machining::CalculateAxesValues( void)
// assegno gli angoli iniziali
double dAngAprec = 0 ;
double dAngBprec = 0 ;
DBLVECTOR vAxVal ;
// se utensile non cambiato, uso gli angoli finali della lavorazione precedente
if ( ! sPrevTool.empty() && GetToolData().m_sName == sPrevTool) {
DBLVECTOR vAxVal ;
pPrevMch->GetFinalAxesValues( vAxVal) ;
if ( ! sPrevTool.empty() && GetToolData().m_sName == sPrevTool &&
pPrevMch->GetFinalAxesValues( vAxVal)) {
if ( nRotAxes >= 1)
dAngAprec = vAxVal[nLinAxes - 1 + 1] ;
if ( nRotAxes >= 2)
@@ -386,7 +386,6 @@ Machining::CalculateAxesValues( void)
}
// altrimenti uso gli angoli home
else {
DBLVECTOR vAxVal ;
m_pMchMgr->GetAllCalcAxesHomePos( vAxVal) ;
if ( nRotAxes >= 1)
dAngAprec = vAxVal[nLinAxes - 1 + 1] ;
@@ -438,7 +437,7 @@ Machining::CalculateClPathAxesValues( int nClPathId, int nLinAxes, int nRotAxes,
bool bROk = m_pMchMgr->GetCalcAngles( pCamData->GetToolDir(), pCamData->GetCorrDir(), nRStat, dAngA1, dAngB1, dAngA2, dAngB2) ;
if ( ! bROk || nRStat == 0) {
bOk = false ;
pCamData->SetAxes( CamData::AS_ERR, vAxVal) ;
pCamData->SetAxes( CamData::AS_DIR_ERR, vAxVal) ;
continue ;
}
if ( nRStat == 1) {