#pragma once #include "superlist.h" #include "ADSGePoint3d.h" class ADSGePointList : public PtrList { public: ADSGePointList(); ADSGePointList(const ADSGePointList &src); ~ADSGePointList(); virtual void AppendNode(const ADSGePoint3d &pt, ads_real dBulge = 0.0, AcDb::Visibility eVal = AcDb::kVisible); ADSGePointList & operator = (const ADSGePointList& 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; ADSGePoint3d *FindPoint(const ADSGePoint3d &ptSrc); void Center(ads_point ptCen); void AsPoly2D(ADSGePointList &poly) const; void SetElevation(ads_real dElev); //如果不存在,则末尾添入, 返回点的位置序号 int NewAppend(const ADSGePoint3d& ptSrc); };