diff --git a/EgtMachKernel.rc b/EgtMachKernel.rc index 606398f..caf70f5 100644 Binary files a/EgtMachKernel.rc and b/EgtMachKernel.rc differ diff --git a/MachConst.h b/MachConst.h index 46055c8..e8728c2 100644 --- a/MachConst.h +++ b/MachConst.h @@ -77,6 +77,12 @@ const std::string MACHININGS_DIR = "Machinings" ; // Nome file delle lavorazioni const std::string MACHININGS_FILE = "Machinings.data" ; +//---------------------------------------------------------------------------- +// Sezione Generale nel file INI di macchina +const std::string GENERAL_SEC = "General" ; +// Chiave per materiale caratteristico +const std::string MATERIAL_KEY = "Material" ; + //---------------------------------------------------------------------------- // Sezione tastature nel file INI di macchina const std::string PROBING_SEC = "Probing" ; diff --git a/SimulatorSP.cpp b/SimulatorSP.cpp index 413f1fc..3610afa 100644 --- a/SimulatorSP.cpp +++ b/SimulatorSP.cpp @@ -40,6 +40,7 @@ #include "/EgtDev/Include/EGnGetKeyData.h" #include "/EgtDev/Include/EgtPerfCounter.h" #include "/EgtDev/Include/EgtNumUtils.h" +#include "/EgtDev/Include/EgtIniFile.h" #include "/EgtDev/Include/EgtKeyCodes.h" #include "/EgtDev/Include/SELkKeyProc.h" @@ -205,6 +206,9 @@ SimulatorSP::Start( bool bFirst) // Verifico attrezzaggio if ( ! VerifySetup()) bOk = false ; + // Recupero il materiale associato alla macchina + string sMachIni = m_pMachine->GetMachineDir() + "\\" + m_pMachine->GetMachineName() + ".ini" ; + m_sMachineMaterial = GetPrivateProfileStringUtf8( GENERAL_SEC.c_str(), MATERIAL_KEY.c_str(), "", sMachIni.c_str()) ; } // Reset utensile, interpolazione e assi correnti @@ -1677,7 +1681,7 @@ SimulatorSP::EnableToolTipTrace( bool bEnable) { if ( bEnable != m_bEnableTrace) { if ( bEnable) { - + ; } else { int nTraceCrvId = m_nCurrTrace ; @@ -1708,7 +1712,7 @@ SimulatorSP::TraceToolTipMove( int nMoveType) Frame3d frExit ; if ( ! m_pGeomDB->GetGroupGlobFrame( nExitId, frExit)) return false ; - Point3d ptTip = frExit.Orig() - m_dTLen * frExit.VersZ() ; + Point3d ptTip = frExit.Orig() - ( m_sMachineMaterial != "Additive" ? m_dTLen : 0) * frExit.VersZ() ; // disabilito gestione segnalazione modifiche progetto SetModifiedOff modOff ; // eseguo tracciatura diff --git a/SimulatorSP.h b/SimulatorSP.h index b85a538..983c3f6 100644 --- a/SimulatorSP.h +++ b/SimulatorSP.h @@ -144,6 +144,7 @@ class SimulatorSP : public ISimulator MachMgr* m_pMchMgr ; // puntatore al gestore di tutte le lavorazioni IGeomDB* m_pGeomDB ; // puntatore al DB geometrico Machine* m_pMachine ; // puntatore alla macchina + std::string m_sMachineMaterial ; // nome del materiale associato alla macchina PerformanceCounter* m_pPerfCnt ; // timer per calcolo FPS int m_nStatus ; // stato interno del simulatore (creato, inizializzato, pronto al movimento) double m_dStep ; // lunghezza di riferimento per la velocità di simulazione