43 lines
1.5 KiB
C++
43 lines
1.5 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2013-2013
|
|
//----------------------------------------------------------------------------
|
|
// File : GdbObj.h Data : 08.04.13 Versione : 1.1c1
|
|
// Contenuto : Dichiarazione della classe GdbObj.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 22.01.13 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include <string>
|
|
#include "/EgtDev/Include/EGkGeoObj.h"
|
|
#include "GdbNode.h"
|
|
|
|
|
|
//----------------------------------------------------------------------------
|
|
class GdbObj : public GdbNode
|
|
{
|
|
public :
|
|
virtual ~GdbObj( void) ;
|
|
virtual GdbObj* Clone( int nId, IdManager& IdMgr) const ;
|
|
virtual bool Save( std::ostream& osOut) const ;
|
|
virtual bool Load( const std::string& sType, Scanner& TheScanner, int& nParentId) ;
|
|
virtual bool Translate( const Vector3d& vtMove) ;
|
|
virtual bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dCosAng, double dSinAng) ;
|
|
virtual bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dAngDeg)
|
|
{ double dAngRad = dAngDeg * DEGTORAD ;
|
|
return Rotate( ptAx, vtAx, cos( dAngRad), sin( dAngRad)) ; }
|
|
virtual bool Scale( const Point3d& ptCen, double dCoeffX, double dCoeffY, double dCoeffZ) ;
|
|
|
|
public :
|
|
GdbObj( void) ;
|
|
GeoObjType GetType( void) const ;
|
|
|
|
public :
|
|
IGeoObj* m_pGeoObj ;
|
|
} ;
|