90 lines
2.5 KiB
C++
90 lines
2.5 KiB
C++
#pragma once
|
|
#include "AecDbEntityBase.h"
|
|
#include "AecDbObjXDataMap.h"
|
|
|
|
#ifdef EARTHWORM_EXPORT
|
|
#define DLLIMPEXP __declspec(dllexport)
|
|
#else
|
|
#define DLLIMPEXP __declspec(dllimport)
|
|
#endif
|
|
|
|
class DLLIMPEXP AcDbXFloorFrame : public AecDbEntityBase
|
|
{
|
|
public:
|
|
ACRX_DECLARE_MEMBERS(AcDbXFloorFrame);
|
|
|
|
protected:
|
|
static Adesk::UInt32 kCurrentVersionNumber;
|
|
|
|
public:
|
|
AcDbXFloorFrame(void);
|
|
~AcDbXFloorFrame(void);
|
|
|
|
bool SetFloorFrame(LPCTSTR pszFloor, const AcGePoint3d &pt1, const AcGePoint3d &pt2, const AcGePoint3d &ptAg);
|
|
bool GetFloorFrame(CString& sFloor, AcGePoint3d &pt1, AcGePoint3d &pt2, AcGePoint3d &ptAg) const;
|
|
|
|
bool SetFloorViewName(LPCTSTR pszViewName);
|
|
bool GetFloorViewName(CString& sViewName) const;
|
|
|
|
bool SetFloorName(LPCTSTR pszName);
|
|
bool GetFloorName(CString &sName) const;
|
|
|
|
bool SetFloorHeight(Adesk::Int16 nHeight);
|
|
Adesk::Int16 GetFloorHeight() const;
|
|
|
|
bool AddHandle(LPCTSTR szHd);
|
|
bool GetHandles(CStringArray &arHds) const;
|
|
bool GetHandles(AcDbObjectIdArray &arIds) const;
|
|
bool RemoveAll();
|
|
|
|
public:
|
|
|
|
virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler *pFiler);
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler *pFiler) const;
|
|
virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler *pFiler);
|
|
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler *pFiler) const;
|
|
|
|
virtual void subList() const;
|
|
|
|
virtual Acad::ErrorStatus copyFrom(const AcRxObject *pSrc);
|
|
|
|
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d &xform);
|
|
|
|
#if ARX>16
|
|
virtual Acad::ErrorStatus subGetGripPoints(AcDbGripDataPtrArray &grips,
|
|
const double curViewUnitSize,
|
|
const int gripSize,
|
|
const AcGeVector3d &curViewDir,
|
|
const int bitflags) const;
|
|
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbVoidPtrArray &appData, const AcGeVector3d &offset, const int bitflags);
|
|
|
|
virtual Acad::ErrorStatus subGetGeomExtents(AcDbExtents &extents) const;
|
|
|
|
#endif
|
|
|
|
//AEC 派生
|
|
virtual Acad::ErrorStatus Draw2d(AcGiDraw &dc) const;
|
|
virtual Acad::ErrorStatus Draw3d(AcGiDraw &dc) const;
|
|
|
|
public:
|
|
|
|
//专业数据 和 绘制设置
|
|
AecDbObjXDataMap *GetSpecialtyData(AcDb::OpenMode bMode = AcDb::kForWrite);
|
|
virtual const AecDbObjXDataMap *GetSpecialtyData() const;
|
|
|
|
protected:
|
|
|
|
TCHAR m_szFloorNo[17];//2-15 3 5 ...
|
|
AcGePoint3d m_ptLB;
|
|
AcGePoint3d m_ptRT;
|
|
AcGePoint3d m_ptAg;
|
|
TCHAR m_szFloorName[33]; //视图名称
|
|
TCHAR m_szName[65]; //
|
|
Adesk::Int16 m_nFloorH;
|
|
CStringArray m_arHds;
|
|
|
|
public:
|
|
AecGripData *m_pGripAppData; //夹点
|
|
};
|
|
|