//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TGGePolyÀà // = Version : ver2.0 // = Author : wlw // = CreateDate : 2002-09-09 // = Description: TGGePolyÀàÉùÃ÷ // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _TGGEPOLY_H_ #define _TGGEPOLY_H_ #ifndef _TADSGEPOINTLIST_H_ #include "TADSGePointList.h" #endif #ifndef _TENTITYSET_H_ #include "TEntitySet.h" #endif #ifndef _TGGESHAPE_H_ #include "TGGeShape.h" #endif class TGGeShape; class TGGeLine; class GEOAPI TGGePoly : public TGGeShape, public TADSGePointList { public: TGGePoly(); TGGePoly(resbuf *pts); TGGePoly(const TEntitySet &entPLine); TGGePoly(const TGGePoly &src); virtual ~TGGePoly(); virtual bool IsKindOf(TEntityId entType) const; virtual TEntityId Type() const; virtual void CopyFrom(const TGGeEntity* pSrc); virtual ShapeType GetShapeType () const; virtual void Center(ads_point ptCen); virtual TGGePoly& operator = (const TGGePoly &src); virtual int operator ! (); virtual int IsPoint(); virtual int IsLinear(); virtual int IsRectAngle(ads_point ptcen = NULL, ads_real *pdwidth = NULL, ads_real *pdheight = NULL); virtual int NthLine(int index, TGGeLine &res); virtual int CreatePface(const TCHAR *szlay = NULL); virtual resbuf *Fence(); virtual resbuf *Polygon(); virtual resbuf *ResbufList(int nIsClosed = 0); virtual ads_real PathArea(); virtual ads_real Area(); virtual int GetExtend(TADSGePoint3d &ptlow, TADSGePoint3d &ptup) const; }; #endif