81 lines
2.0 KiB
C++
81 lines
2.0 KiB
C++
#pragma once
|
|
#include "dbmain.h"
|
|
|
|
#ifdef EARTHWORM_EXPORT
|
|
#define DLLIMPEXP __declspec(dllexport)
|
|
#else
|
|
#define DLLIMPEXP __declspec(dllimport)
|
|
#endif
|
|
|
|
typedef struct FloorViewData
|
|
{
|
|
TCHAR m_szID[39];//唯一ID
|
|
TCHAR m_szName[65];//楼层名
|
|
TCHAR m_szFloorView[17];//楼层视图
|
|
TCHAR m_szFilePath[MAX_PATH];//为空时指当前文件名
|
|
Adesk::Int16 m_nFloorIndxFr;
|
|
Adesk::Int16 m_nFloorIndxTo;
|
|
Adesk::Int16 m_bFloorIndxTo;
|
|
Adesk::Int16 m_nFloorH;//层高
|
|
Adesk::Int16 m_nActive;//活动
|
|
}FloorViewData;
|
|
|
|
class DLLIMPEXP AecFloorViewDataRecord: public AcDbObject
|
|
{
|
|
public:
|
|
ACRX_DECLARE_MEMBERS(AecFloorViewDataRecord);
|
|
|
|
protected:
|
|
static Adesk::UInt32 kCurrentVersionNumber;
|
|
|
|
public:
|
|
|
|
AecFloorViewDataRecord();
|
|
virtual ~AecFloorViewDataRecord();
|
|
|
|
void SetProjectName(LPCTSTR pszName);
|
|
void GetProjectName(CString& sName) const;
|
|
|
|
void SetBomEl(double dBomEl);
|
|
double GetBomEl() const;
|
|
|
|
bool SetActive(int nIndex, Adesk::Int16 nActive);
|
|
bool SetActive(LPCTSTR pszName, Adesk::Int16 nActive);
|
|
Adesk::Int16 IsActive(int nIndex) const;
|
|
Adesk::Int32 GetActiveID(CString& sID) const;
|
|
|
|
void SetBasePoint(AcGePoint3d& ptBase);
|
|
void GetBasePoint(AcGePoint3d &ptBase) const;
|
|
|
|
void SetRem(LPCTSTR pszRem);
|
|
void GetRem(CString &sRem) const;
|
|
|
|
void SetFocusOn(bool bSetOn);
|
|
Adesk::Int16 IsFocusOn() const;
|
|
|
|
bool AddFloorViewRecord(FloorViewData& rc);
|
|
bool ModifyFloorViewRecord(const FloorViewData &rc);
|
|
bool RemoveFloorViewRecord(LPCTSTR pszName);
|
|
|
|
int FindFloorViewRecord(LPCTSTR pszName) const;
|
|
|
|
int GetCount() const;
|
|
bool GetFloorViewRecord(int nIndex, FloorViewData &rc) const;
|
|
bool GetFloorViewRecord(LPCTSTR pszName, FloorViewData &vData) const;
|
|
|
|
virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler *filer);
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler *filer) const;
|
|
virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler *filer);
|
|
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler *filer) const;
|
|
|
|
protected:
|
|
|
|
CString m_sProName;
|
|
double m_dBomEl;
|
|
CString m_sRem;
|
|
AcGePoint3d m_ptBase;
|
|
Adesk::Int16 m_nFocusOn;
|
|
AcArray<FloorViewData> m_arDatas;
|
|
};
|
|
|