#pragma once #include "aecdbewpipebase.h" #ifdef EARTHWORM_EXPORT #define DLLIMPEXP __declspec(dllexport) #else #define DLLIMPEXP __declspec(dllimport) #endif typedef struct BalconyData { int nRailEdge; //无扶手的边 double dRailHeight; //阳台高 double dRailWidth; //阳台宽 double dSlabThick; //底板板厚 double dGirderThick; //阳台板厚 BOOL bAddOpening; //阳台加铝合金门窗 double duFrame; //窗框(竖直)高度 double dvFrame; //窗框(水平)厚度 double dWinHeight; //窗高 double dBomEl; //底板底部标高 double dBeamH; //阳台梁高 double dBeamW; //阳台梁宽 TCHAR m_sMaterial[256];// TCHAR m_sFactory[256]; //厂家 TCHAR m_sNo[256]; // //... }BALCONYDATA; //阳台 class DLLIMPEXP AecDbBalcony : public AecDbEwPipeBase { public: ACRX_DECLARE_MEMBERS(AecDbBalcony); protected: static Adesk::UInt32 kCurrentVersionNumber; public: AecDbBalcony(void); ~AecDbBalcony(void); void SetBalconyData(const BalconyData& data); void GetBalconyData(BalconyData& data) const; 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 subTransformBy(const AcGeMatrix3d &xform); virtual Acad::ErrorStatus Draw2d(AcGiDraw &dc) const; virtual Acad::ErrorStatus Draw3d(AcGiDraw &dc) const; };