Files
envi-code/SourceCode/Code2026/inc/AdsXRx/XPoly.h
T
2026-09-28 15:28:50 +08:00

67 lines
1.5 KiB
C++

//-----------------------------------------------------------------------------+
// Copyright (C), 1998-2007, SH Software Co. Ltd.
// = FileName : XPolyÀà
// = Version : ver2.0
// = Author : zjq
// = CreateDate : 2002-09-09
// = Description: XPolyÀàÉùÃ÷
// = Maintainers:
//
//-----------------------------------------------------------------------------+
#ifndef _XPOLY_H_
#define _XPOLY_H_
#ifndef _XPOINTLISTT_H_
#include "XPointList.h"
#endif
#ifndef _ENTITY_H_
#include "Entity.h"
#endif
#ifndef _XSHAPE_H_
#include "XCell.h"
#endif
class XCell;
class XLine;
class GEOAPI XPoly : public XCell, public XPointList
{
public:
XPoly();
XPoly(resbuf *pts);
XPoly(const Entity &entPLine);
XPoly(const XPoly &src);
virtual ~XPoly();
virtual bool IsKindOf(TEntityId entType) const;
virtual TEntityId Type() const;
virtual void CopyFrom(const XEntity* pSrc);
virtual ShapeType GetShapeType () const;
virtual void Center(ads_point ptCen);
virtual XPoly& operator = (const XPoly &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, XLine &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(XPoint &ptlow, XPoint &ptup) const;
};
#endif