//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, SH Software Co. Ltd. // = FileName : XHoleModel Àà // = Version : ver2.0 // = Author : zjq // = CreateDate : 2002-09-09 // = Description: XHoleModel ÀàÉùÃ÷ // = Maintainers: // //-----------------------------------------------------------------------------+ #ifndef _XHOLEMODEL_H_ #define _XHOLEMODEL_H_ #ifndef _XPOINT_H_ #include "XPoint.h" #endif #ifndef _XTRIANGLE_H_ #include "XTriangle.h" #endif #ifndef _XPOLYGONEX_H_ #include "XPolygonEx.h" #endif #ifndef _DLIST_H_ #include "DList.h" #endif class GEOAPI XHoleModel { public: XHoleModel(); virtual ~XHoleModel(); virtual void SetOutLine(const XPolygonEx& outline); virtual void GetOutLine(XPolygonEx& outline); virtual XPolygonEx& GetOutLine(); virtual void AppendHoleList(XPolygonEx* pHole); virtual DList& GetHoleList(); virtual int GetHoleList(DList& lstPolygonEx); virtual BOOL IsValid() const ; virtual BOOL Wcs2Ecs(XVector3D &vtEcs, double &nElev); virtual BOOL Triangulate(BOOL bKeepConstant, DList &lstTris, BOOL bAs3D = TRUE); public: XPolygonEx m_outline; DList m_holes; }; #endif