#ifndef __DBAIRLETS_H #define __DBAIRLETS_H #include "HDbEquipment.h" /*============================================================================* * Copyright(c), 1994-2007, Beijing Tangent Engineering Software Co.Ltd. * 文 件 名: DbAirLets.h * 归属项目: 暖通 =============================================================================*/ /*============================================================================* * 类 名: TDbAirLets(风口) * 功能描述: 记录风口相关信息,参数 * 备 注: 图块实体 ==============================================================================*/ class PS_EXP TDbAirLets : public THDbEquipment { DECLARE_TENTBASE(); ACRX_DECLARE_MEMBERS(TDbAirLets); private: static const Adesk::UInt8 g_nVersion; public: enum Shape { // 风口形状 kRectangle = 0, // 矩形 kCircle = 1 // 圆形 }; public: TDbAirLets(); protected: Shape m_sShape; // 风口形状 double m_dDuctIfLength; // 接风管(喉口)尺寸长 double m_dDuctIfWidth; // 接风管(喉口)尺寸宽 double m_dAirLoad; // 风量 double m_dRadius; // 只有圆形时有 double m_dAreaRatio; // 有效喷风面积系数 // double m_dResistance; // 阻力损失(暂时用不着) public: void SetAirLoad(double dAirLoad) { assertWriteEnabled(); m_dAirLoad = dAirLoad; } double GetAirLoad() const { return m_dAirLoad; } void SetDuctIfLength(double dIfLength){ m_dDuctIfLength = dIfLength; } double GetDuctIfLength() const { return m_dDuctIfLength; } void SetDuctIfWidth(double dIfWidth) { m_dDuctIfWidth = dIfWidth; } double GetDuctIfWidth() const { return m_dDuctIfWidth; } Shape GetShape() const { return m_sShape; } void SetShape(Shape shape) { assertWriteEnabled(); m_sShape = shape; } double GetRadius() const { return m_dRadius; } void SetRadius(double dRadius) { assertWriteEnabled(); m_dRadius = dRadius; } double GetAreaRatio() const { return m_dAreaRatio; } void SetAreaRatio(double dAreaRatio) { assertWriteEnabled(); m_dAreaRatio = dAreaRatio; } public: // Override TDbEntity virtual void CopyPropertiesFrom(AcDbEntity *pSrc, unsigned gMatchFlag); virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const; virtual void GetTips(DList &) const; virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const; virtual Acad::ErrorStatus ExplodeOrDraw3d(XExplodeDraw &dc) const; public: // Override AcDbEntity virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler*); virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const; virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler*); virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler*) const; private: void DrawSys(XExplodeDraw &dc, int nType) const; }; #endif