45 lines
1.1 KiB
C++
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;
|
|
};
|