//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TGObject2D.h // = Version : ver2.0 // = Author : xlc // = CreateDate : 2002-09-09 // = Description: 类的声明 平面实体基类 // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _TGOBJECT2D_H_ #define _TGOBJECT2D_H_ #ifndef _TGOBJECT_H_ #include "TGObject.h" #endif #ifndef _TPGEEXTEND3D_H_ #include "TPGeExtend3D.h" #endif #ifndef _TGPOINT_H_ #include "TGPoint.h" #endif class TGObject3D; class GEOAPI TGObject2D : public TGObject { DECLARE_RUN_TIME_CLASS(TGObject2D) public: virtual ~TGObject2D(); //overridable virtual void SetElev(double elev);//设标高 virtual double GetElev()const;//取标高 //转化为对应三维实体 virtual TGObject3D * Convert3D()const; //override TGObject //此处在TGObject基础由增加包含TGPoint2D判断 virtual bool IsInclude(const TGObject&obj)const; //此处GetExtend2D()+Z=GetElev virtual bool GetExtend3D(TPGeExtend3D&ext)const; //transform void Move(double cx,double cy); void Scale(double sx,double sy); void Scale(double sx,double sy,const TGPoint&basePoint); void Rotate(double angle); void Rotate(double angle,const TGPoint& basePoint); }; #endif