diff --git a/EgtMachKernel.rc b/EgtMachKernel.rc index 17238ae..c8534fd 100644 Binary files a/EgtMachKernel.rc and b/EgtMachKernel.rc differ diff --git a/MachMgr.h b/MachMgr.h index e20eb49..c8ee9ca 100644 --- a/MachMgr.h +++ b/MachMgr.h @@ -328,6 +328,9 @@ class MachMgr : public IMachMgr bool GetClEntAxesStatus( int nEntId, int& nStatus) const override ; bool GetClEntAxesMask( int nEntId, int& nMask) const override ; bool GetClEntAxesVal( int nEntId, DBLVECTOR& vAxes) const override ; + bool GetClEntTDir( int nEntId, Vector3d& vTDir) const override ; + bool GetClEntCDir( int nEntId, Vector3d& vCDir) const override ; + bool GetClEntADir( int nEntId, Vector3d& vADir) const override ; // Simulation bool SimInit( void) override ; bool SimStart( bool bFirst) override ; diff --git a/MachMgrClEntities.cpp b/MachMgrClEntities.cpp index 22f8a2e..290605e 100644 --- a/MachMgrClEntities.cpp +++ b/MachMgrClEntities.cpp @@ -2,7 +2,7 @@ // EgalTech 2019-2023 //---------------------------------------------------------------------------- // File : MachMgrClEntities.cpp Data : 27.10.23 Versione : 2.5j4 -// Contenuto : Implementazione interrogazione entitŕ CL della classe MachMgr. +// Contenuto : Implementazione interrogazione entitĂ  CL della classe MachMgr. // // // @@ -147,3 +147,57 @@ MachMgr::GetClEntAxesVal( int nEntId, DBLVECTOR& vAxes) const vAxes = pCamData->GetAxesVal() ; return true ; } + +//---------------------------------------------------------------------------- +bool +MachMgr::GetClEntTDir( int nEntId, Vector3d& vTDir) const +{ + // default + vTDir = V_NULL ; + // verifico validitĂ  GeomBD + if ( m_pGeomDB == nullptr) + return false ; + // recupero l'oggetto CamData + const CamData* pCamData = GetCamData( m_pGeomDB->GetUserObj( nEntId)) ; + if ( pCamData == nullptr) + return false ; + // recupero vTDir + vTDir = pCamData->GetToolDir() ; + return true ; +} + +//---------------------------------------------------------------------------- +bool +MachMgr::GetClEntCDir( int nEntId, Vector3d& vCDir) const +{ + // default + vCDir = V_NULL ; + // verifico validitĂ  GeomDB + if ( m_pGeomDB == nullptr) + return false ; + // recupero l'oggetto CamData + const CamData* pCamData = GetCamData( m_pGeomDB->GetUserObj( nEntId)) ; + if ( pCamData == nullptr) + return false ; + // recupero vCDir + vCDir = pCamData->GetCorrDir() ; + return true ; +} + +//---------------------------------------------------------------------------- +bool +MachMgr::GetClEntADir( int nEntId, Vector3d& vADir) const +{ + // default + vADir = V_NULL ; + // verifico validitĂ  GeomDB + if ( m_pGeomDB == nullptr) + return false ; + // recupero l'oggetto CamData + const CamData* pCamData = GetCamData( m_pGeomDB->GetUserObj( nEntId)) ; + if ( pCamData == nullptr) + return false ; + // recupero ADir + vADir = pCamData->GetAuxDir() ; + return true ; +}