59 lines
1.2 KiB
C++
59 lines
1.2 KiB
C++
//-----------------------------------------------------------------------------+
|
|
// 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<XPolygonEx>& GetHoleList();
|
|
virtual int GetHoleList(DList<XPolygonEx>& lstPolygonEx);
|
|
|
|
virtual BOOL IsValid() const ;
|
|
|
|
virtual BOOL Wcs2Ecs(XVector3D &vtEcs, double &nElev);
|
|
|
|
virtual BOOL Triangulate(BOOL bKeepConstant, DList<XTriangle> &lstTris, BOOL bAs3D = TRUE);
|
|
|
|
public:
|
|
XPolygonEx m_outline;
|
|
DList<XPolygonEx> m_holes;
|
|
};
|
|
|
|
#endif
|