diff --git a/EgtMachKernel.rc b/EgtMachKernel.rc index 45676ab..91071b1 100644 Binary files a/EgtMachKernel.rc and b/EgtMachKernel.rc differ diff --git a/MachMgrDBTools.cpp b/MachMgrDBTools.cpp index abd0d94..0249df0 100644 --- a/MachMgrDBTools.cpp +++ b/MachMgrDBTools.cpp @@ -721,7 +721,7 @@ MachMgr::UpdateStandardToolDraw( const ToolData* pTdata, int nGenCtx, int nToolC if ( ! ExeLuaGetGlobIntVar( "TOOL.ERR", &nErr) || nErr != 0) return nErr ; // Se per salvataggio - if ( bOk && bToSave) { + if ( bOk && bToSave) { // Nascondo layer ausiliario int nAuxId = ExeGetFirstNameInGroup( ExeGetFirstGroupInGroup( GDB_ID_ROOT), "AUX") ; ExeSetStatus( { nAuxId}, GDB_ST_OFF) ; @@ -731,6 +731,16 @@ MachMgr::UpdateStandardToolDraw( const ToolData* pTdata, int nGenCtx, int nToolC ExeRotate( { nPartId}, ORIG, Z_AX, -90, RTY_GLOB) ; } } + // altrimenti per visualizzazione + else if ( bOk) { + // Nascondo oggetto/i Carter + int nSolidId = ExeGetFirstNameInGroup( ExeGetFirstGroupInGroup( GDB_ID_ROOT), "SOLID") ; + int nCarterId = ExeGetFirstNameInGroup( nSolidId, "Carter") ; + while ( nCarterId != GDB_ID_NULL) { + ExeSetStatus( { nCarterId}, GDB_ST_OFF) ; + nCarterId = ExeGetNextName( nCarterId, "Carter") ; + } + } return ( bOk ? 0 : TD_INT_ERR) ; } diff --git a/OutputConst.h b/OutputConst.h index 6398959..468f5ef 100644 --- a/OutputConst.h +++ b/OutputConst.h @@ -60,6 +60,7 @@ static const std::string GVAR_TOOL = ".TOOL" ; // (string) nome uten static const std::string GVAR_HEAD = ".HEAD" ; // (string) nome testa static const std::string GVAR_EXIT = ".EXIT" ; // (int) indice uscita static const std::string GVAR_TCPOS = ".TCPOS" ; // (string) eventuale posizione utensile nel TC +static const std::string GVAR_TTYPE = ".TTYPE" ; // (int) tipo utensile static const std::string GVAR_TCOMP = ".TCOMP" ; // (int) numero correttore utensile static const std::string GVAR_TDIAM = ".TDIAM" ; // (num) diametro utensile static const std::string GVAR_TTOTDIAM = ".TTOTDIAM" ; // (num) diametro totale utensile diff --git a/Processor.cpp b/Processor.cpp index 914daec..aca3ace 100644 --- a/Processor.cpp +++ b/Processor.cpp @@ -603,6 +603,7 @@ Processor::ProcessToolData( void) string sHead ; int nExit ; string sTcPos ; + int nType ; int nComp ; double dDiam ; double dTDiam ; @@ -611,7 +612,7 @@ Processor::ProcessToolData( void) double dDist ; double dMaxSpeed ; MyToolData( void) - : sName(), sHead(), nExit( 0), sTcPos(), nComp(0), dDiam( 0), dLen( 0), dDist( 0), dMaxSpeed( 0) {} + : sName(), sHead(), nExit( 0), sTcPos(), nType(0), nComp(0), dDiam( 0), dLen( 0), dDist( 0), dMaxSpeed( 0) {} } ; typedef vector TDATAVECTOR ; TDATAVECTOR vTdata ; @@ -636,6 +637,7 @@ Processor::ProcessToolData( void) m_pMchMgr->TdbGetCurrToolParam( TPA_HEAD, Tdata.sHead) ; m_pMchMgr->TdbGetCurrToolParam( TPA_EXIT, Tdata.nExit) ; m_pMchMgr->TdbGetCurrToolParam( TPA_TCPOS, Tdata.sTcPos) ; + m_pMchMgr->TdbGetCurrToolParam( TPA_TYPE, Tdata.nType) ; m_pMchMgr->TdbGetCurrToolParam( TPA_CORR, Tdata.nComp) ; m_pMchMgr->TdbGetCurrToolParam( TPA_DIAM, Tdata.dDiam) ; m_pMchMgr->TdbGetCurrToolParam( TPA_TOTDIAM, Tdata.dTDiam) ; @@ -674,7 +676,8 @@ Processor::ProcessToolData( void) bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_EXIT, nExit) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TCPOS, sTcPos) ; if ( m_pMchMgr->TdbSetCurrTool( sTool)) { - int nComp ; double dDiam ; double dTDiam ; double dLen ; double dTLen ; double dDist ; double dMaxSpeed ; + int nType ; int nComp ; double dDiam ; double dTDiam ; double dLen ; double dTLen ; double dDist ; double dMaxSpeed ; + m_pMchMgr->TdbGetCurrToolParam( TPA_TYPE, nType) ; m_pMchMgr->TdbGetCurrToolParam( TPA_CORR, nComp) ; m_pMchMgr->TdbGetCurrToolParam( TPA_DIAM, dDiam) ; m_pMchMgr->TdbGetCurrToolParam( TPA_TOTDIAM, dTDiam) ; @@ -682,6 +685,7 @@ Processor::ProcessToolData( void) m_pMchMgr->TdbGetCurrToolParam( TPA_TOTLEN, dTLen) ; m_pMchMgr->TdbGetCurrToolParam( TPA_DIST, dDist) ; m_pMchMgr->TdbGetCurrToolParam( TPA_MAXSPEED, dMaxSpeed) ; + bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TTYPE, nType) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TCOMP, nComp) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TDIAM, dDiam) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TTOTDIAM, dTDiam) ; @@ -721,6 +725,7 @@ Processor::ProcessToolData( void) bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_HEAD, vTdata[i].sHead) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_EXIT, vTdata[i].nExit) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TCPOS, vTdata[i].sTcPos) ; + bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TTYPE, vTdata[i].nType) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TCOMP, vTdata[i].nComp) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TDIAM, vTdata[i].dDiam) ; bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_TTOTDIAM, vTdata[i].dTDiam) ; diff --git a/Simulator.cpp b/Simulator.cpp index 8d1c24b..1b392cb 100644 --- a/Simulator.cpp +++ b/Simulator.cpp @@ -125,12 +125,17 @@ Simulator::Start( bool bFirst) m_pMchMgr->ResetLastError() ; m_pMchMgr->ResetWarnings() ; - // Forzo aggiornamento attrezzaggio della macchinata - bool bOk = m_pMchMgr->UpdateCurrSetup() ; + bool bOk = true ; - // Se avvio vero, verifico attrezzaggio - if ( bFirst && ! VerifySetup()) - bOk = false ; + // Se avvio vero + if ( bFirst) { + // Forzo aggiornamento attrezzaggio della macchinata + if ( ! m_pMchMgr->UpdateCurrSetup()) + bOk = false ; + // Verifico attrezzaggio + if ( ! VerifySetup()) + bOk = false ; + } // Reset utensile, interpolazione e assi correnti m_sTool.clear() ; @@ -141,6 +146,7 @@ Simulator::Start( bool bFirst) ResetInterpolation() ; ResetAxes() ; ResetAuxAxes() ; + // porto la macchina in home if ( ! GoHome()) bOk = false ;