//---------------------------------------------------------------------------- // EgalTech 2015-2015 //---------------------------------------------------------------------------- // File : Axis.h Data : 24.05.15 Versione : 1.6e7 // Contenuto : Dichiarazione della classe Axis. // // // // Modifiche : 24.05.15 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "Machine.h" #include "/EgtDev/Include/EGkUserObj.h" #include "/EgtDev/Include/EGkPoint3d.h" //---------------------------------------------------------------------------- class Axis : public IUserObj { public : // IUserObj Axis* Clone( void) const override ; const std::string& GetClassName( void) const override ; bool Dump( std::string& sOut, bool bMM = true, const char* szNewLine = "\n") const override ; bool SetOwner( int nId, IGeomDB* pGDB) override ; int GetOwner( void) const override ; IGeomDB* GetGeomDB( void) const override ; public : Axis( void) ; bool Set( const std::string& sName, const std::string& sToken, bool bInvert, int nType, const Point3d& ptPos, const Vector3d& vtDir, const STROKE& Stroke, double dHome) ; bool Modify( const Point3d& ptPos, double dAxisMaxAdjust) ; bool Modify( const Vector3d& vtDir, double dAxisMaxRotAdj) ; bool Modify( const STROKE& Stroke) ; bool Modify( double dHome) ; bool SetCurrVal( double dVal) { m_dCurrVal = dVal ; return true ; } const std::string& GetName( void) const { return m_sName ; } const std::string& GetToken( void) const { return m_sToken ; } bool GetInvert( void) const { return m_bInvert ; } int GetType( void) const { return m_nType ; } const Point3d& GetPos( void) const { return m_ptPos ; } const Vector3d& GetDir( void) const { return m_vtDir ; } const STROKE& GetStroke( void) const { return m_Stroke ; } double GetHomeVal( void) const { return m_dHomeVal ; } double GetCurrVal( void) const { return m_dCurrVal ; } private : int m_nOwnerId ; IGeomDB* m_pGeomDB ; std::string m_sName ; std::string m_sToken ; bool m_bInvert ; int m_nType ; Point3d m_ptPos ; Vector3d m_vtDir ; STROKE m_Stroke ; double m_dHomeVal ; double m_dCurrVal ; } ;