Files
envi-code/SourceCode/Code2026/Dimension/GePoly.h
T
2026-09-28 15:28:50 +08:00

45 lines
1.1 KiB
C++

#pragma once
#include "ADSGePointList.h"
#include "EntitySet.h"
#include "GeShape.h"
class GeShape;
class GeLine;
class GePoly : public GeShape, public ADSGePointList
{
public:
GePoly();
GePoly(resbuf *pts);
GePoly(const EntitySet &entPLine);
GePoly(const GePoly &src);
virtual ~GePoly();
virtual bool IsKindOf(TEntityId entType) const;
virtual TEntityId Type() const;
virtual void CopyFrom(const GeEntity* pSrc);
virtual ShapeType GetShapeType () const;
virtual void Center(ads_point ptCen);
virtual GePoly& operator = (const GePoly &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, GeLine &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(ADSGePoint3d &ptlow, ADSGePoint3d &ptup) const;
};