57 lines
1.2 KiB
C++
57 lines
1.2 KiB
C++
//-----------------------------------------------------------------------------+
|
|
// Copyright (C), 1998-2007, SH Software Co. Ltd.
|
|
// = FileName : XPointList点列表类
|
|
// = Version : ver2.0
|
|
// = Author : zjq
|
|
// = CreateDate : 2002-09-09
|
|
// = Description: XPointList类声明
|
|
// = Maintainers:
|
|
//
|
|
//-----------------------------------------------------------------------------+
|
|
#ifndef _XPOINTLISTT_H_
|
|
#define _XPOINTLISTT_H_
|
|
|
|
#ifndef _DLIST_H_
|
|
#include "DList.h"
|
|
#endif
|
|
|
|
#ifndef _XPOINT_H_
|
|
#include "XPoint.h"
|
|
#endif
|
|
|
|
class GEOAPI XPointList : public DList<XPoint>
|
|
{
|
|
public:
|
|
|
|
XPointList();
|
|
|
|
XPointList(const XPointList &src);
|
|
|
|
~XPointList();
|
|
|
|
virtual void AppendNode(const XPoint &pt, ads_real dBulge = 0.0);
|
|
|
|
XPointList & operator = (const XPointList& src);
|
|
|
|
void TransUCS(const resbuf *pFrom, const resbuf *pTo);
|
|
|
|
void TransUCS(ads_matrix mat);
|
|
|
|
int GetExtend(ads_point ptMin, ads_point ptMax);
|
|
|
|
int GetExtend(ads_point ptMin, ads_point ptMax) const;
|
|
|
|
XPoint *FindPoint(const XPoint &ptSrc);
|
|
|
|
void Center(ads_point ptCen);
|
|
|
|
void AsPoly2D(XPointList &poly) const;
|
|
|
|
void SetElevation(ads_real dElev);
|
|
|
|
//如果不存在,则末尾添入, 返回点的位置序号
|
|
int NewAppend(const XPoint& ptSrc);
|
|
};
|
|
|
|
#endif
|