//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TGPoint3D.h // = Version : ver2.0 // = Author : xlc // = CreateDate : 2002-09-09 // = Description: ÀàµÄÉùÃ÷ // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _TGPOINT3D_H_ #define _TGPOINT3D_H_ #ifndef _TGOBJECT3D_H_ #include "TGObject3D.h" #endif #ifndef _TGPOINT_H_ #include "TGPoint.h" #endif #ifndef _TGOBJECT_H_ #include "TGObject.h" #endif #ifndef _TGOBJECTLIST_H_ #include "TGObjectList.h" #endif #ifndef _TGMATRIX_H_ #include "TGMatrix.h" #endif #ifndef _TPGEEXTEND2D_H_ #include "TPGeExtend2D.h" #endif #ifndef _TPGEEXTEND3D_H_ #include "TPGeExtend3D.h" #endif #ifndef _TWFLAG_H_ #include "TWFlag.h" #endif class TGObject2D; class GEOAPI TGPoint3D : public TGObject3D,public TGPoint { DECLARE_RUN_TIME_CLASS(TGPoint3D) public: TGPoint3D(double *p); TGPoint3D(float *p); TGPoint3D(const TGPoint& pt); TGPoint3D(double X = 0, double Y = 0, double Z = 0); virtual ~TGPoint3D(); //override TGObject3D virtual TGObject2D *Convert2D() const; //override TGObject virtual void TransformBy(const TGMatrix& matrix); virtual bool IsValid() const; virtual bool IsInclude(const TGObject& obj) const; virtual bool Intersect(const TGObject& obj,TGObjectList& res) const; virtual bool GetExtend3D(TPGeExtend3D& ext) const; virtual bool GetExtend2D(TPGeExtend2D& ext) const; virtual TGObject* Clone() const; virtual GRelation HitTest(const TGPoint& pt) const; virtual TGPoint GetSamplePoint() const; double Distance(const TGPoint& pt) const; }; #endif