Files
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

53 lines
961 B
C++

#pragma once
#include "ADSGePoint3d.h"
class GeEntity
{
public:
enum TEntityId
{
eEntity,
e3DFace,
ePlane,
eHatch,
eCurve,
eShape,
eCircle,
eArc,
eLinearEnt,
eLine,
eCurveSegment,
eAFace3D,
eDbCurveSegEntity,
eRegionSide,
eDirectionCurve,
eCurveSegSeg,
eCurveSegunique,
ePoly,
ePolygonEx,
ePoly2D,
ePoly3D,
eRegion2D
};
virtual bool IsKindOf(TEntityId entType) const;
virtual TEntityId Type() const;
virtual void CopyFrom(const GeEntity* pImpSrc);
virtual void TransformBy(ads_matrix mat);
virtual int GetExtend(ADSGePoint3d &ptlow, ADSGePoint3d &ptup) const;
//图形长度,周长
virtual double GetLength() const;
virtual int Make(const TCHAR *szlay = NULL) const;
virtual int MakeEntity(const EntitySet* pEntity) const;
virtual int HitTest2d(const ADSGePoint3d &ptTest) const;
virtual int OSnap(int nMode, ADSGePoint3d &ptPick) const;
protected:
GeEntity();
virtual ~GeEntity();
};