Files
envi-code/SourceCode/Code2026/Pool3dCmd/ParamEquJson.h
T
2026-09-28 15:28:50 +08:00

1598 lines
38 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#pragma once
#pragma warning(disable:4005)
#include "shjson.h"
#include <set>
#include "CSelectTankDLG.h"
#include "AecDbXEquipment.h"
using namespace SHJson;
#pragma region CEquJsonObject
class CParaDesignDlg;
class CEquJsonObject
{
public:
//CEquJsonObject():_bInplace(false) {}
CEquJsonObject(const std::wstring &class_type):_bInplace(false), _class_type(class_type){}
virtual ~CEquJsonObject() {}
public:
struct Param
{
std::wstring _name, _type, _value, _key;
std::vector<std::wstring> _data;
bool _canModify, _readOnly, _show;
WValue _extend; // 扩展数据存放
// 如果 type=string 则 max/min 取整后为字符串长度最长,最短值
// json文件内,可有可无
double _max, _min;
Param() { clear(); }
Param(const CEquJsonObject::Param &src): _max(src._max)
, _min(src._min)
, _name(src._name)
, _type(src._type)
, _value(src._value)
, _key(src._key)
, _data(src._data)
, _canModify(src._canModify)
, _readOnly(src._readOnly)
, _show(src._show)
{
_extend.CopyFrom(src._extend, SHJson::getJsonAllocator());
}
Param& operator = (const Param &src)
{
_max = src._max;
_min = src._min;
_name = src._name;
_type = src._type;
_value = src._value;
_key = src._key;
_data = src._data;
_canModify = src._canModify;
_readOnly = src._readOnly;
_show = src._show;
_extend.CopyFrom(src._extend, SHJson::getJsonAllocator());
return *this;
}
void clear()
{
_max = DBL_MAX;
_min = -DBL_MAX;
_name = _type = _value = _key = _T("");
_data.clear();
_canModify = false;
_readOnly = false;
_show = true;
_extend.SetObject();
}
std::wstring getValue2String();
int getValue2Integer();
double getValue2Double();
std::wstring getCombo2String();
double getCombo2Double();
};
typedef std::vector<Param> Params;
public:
virtual bool modifyParams(const int &curIdx) = 0;
virtual bool initParams() = 0;
virtual bool checkParams(const int &curIdx, LPCTSTR value, CString &errMsg) = 0;
virtual void start(CParaDesignDlg &dlg) = 0;
virtual AcDbEntity* start2Ptr(CParaDesignDlg &dlg) { return NULL; }
virtual void onSigleClickItem(const int &idx);
virtual void inplace(AcDbObjectId &id, CParaDesignDlg &dlg) = 0;
virtual bool getDatasByDlg(CParaDesignDlg &dlg) = 0;
virtual void setDatasToEqu(AecDbObjXDataMap *pXData) = 0;
virtual void inplace(AcDbObjectIdArray &ar, CParaDesignDlg &dlg){}
virtual void setItemText(CXListCtrl &lstCtrl, const int &idxLen, const int &idxPara);
public:
std::wstring getSrcString();
public:
void clear()
{
_params.clear();
_name = _pic = _T("");
_bInplace = false;
}
void copy(const CEquJsonObject *pSrc)
{
_name = pSrc->_name;
_pic = pSrc->_pic;
_type = pSrc->_type;
_subtype = pSrc->_subtype;
_dbType = pSrc->_dbType;
_params.clear();
_params.assign(pSrc->_params.begin(), pSrc->_params.end());
_bInplace = pSrc->_bInplace;
_class_type = pSrc->_class_type;
}
static CEquJsonObject* createParamEqu(LPCTSTR type, LPCTSTR subType);
public:
std::wstring _name, _pic;
Params _params;
std::wstring _type, _subtype; // 对应着 JSON结构的 类型 子类型 (例:类型:GESHAN 子类型:XHG_I)
int _dbType; // 对应 AecDbParamEquipment类内的CParamEquImplBase类型
bool _bInplace; // 是否是在位编辑状态
std::wstring _class_type;
public: // 下面变量与绘制有关
int _COLOR; // 颜色
AcGePoint3d _Pos; // 位置
AcGeVector3d _Dir; // 方向
};
typedef std::vector<std::pair<std::wstring, CEquJsonObject*> > JsonObjects;
#pragma endregion
#pragma region JSON
namespace ParseJson
{
bool writeObject(WValue &value, const CEquJsonObject &obj);
bool readParam(WCValue &value, CEquJsonObject::Param &param);
bool readObject(WCValue &value, CEquJsonObject &obj);
bool readObjects(LPCTSTR pszFile, LPCTSTR typeName, JsonObjects &objs);
bool writeObjects(LPCTSTR pszJson, CEquJsonObject &objs);
}
#pragma endregion
///////////////////////////////////////////////////////////////////////////////////////////////////
#define DECLARATION_SUBCLASS(class_name)\
public:\
##class_name(): CEquJsonObject(L#class_name){}\
~##class_name(){}\
public:\
virtual bool modifyParams(const int &curIdx);\
virtual bool initParams();\
virtual bool checkParams(const int &curIdx, LPCTSTR value, CString &errMsg);\
virtual void start(CParaDesignDlg &dlg);\
virtual void inplace(AcDbObjectId &id, CParaDesignDlg &dlg);\
virtual bool getDatasByDlg(CParaDesignDlg &dlg);\
virtual void setDatasToEqu(AecDbObjXDataMap *pXData)
#define DECLARATION_SUBCLASS_NO_CONSTRUCTOR(class_name)\
public:\
##class_name();\
~##class_name(){}\
public:\
virtual bool modifyParams(const int &curIdx);\
virtual bool initParams();\
virtual bool checkParams(const int &curIdx, LPCTSTR value, CString &errMsg);\
virtual void start(CParaDesignDlg &dlg);\
virtual void inplace(AcDbObjectId &id, CParaDesignDlg &dlg);\
virtual bool getDatasByDlg(CParaDesignDlg &dlg);\
virtual void setDatasToEqu(AecDbObjXDataMap *pXData)
///////////////////////////////////////////////////////////////////////////////////////////////////
namespace GESHAN
{
class XHG_I : public CEquJsonObject
{
DECLARATION_SUBCLASS(XHG_I);
private:
double getFlow(int idxB, int idxb);
void getRange(const int &idx, double &max, double &min);
private:
enum a
{
clr = 0, m = 1, H = (7 + 1), H1 = (8 + 1), H2 = (9 + 1), H3 = (10 + 1), H4 = (18 + 1)
, B = (11 + 1), B1 = (12 + 1), B2 = (13 + 1), B3 = (14 + 1), B4 = (15 + 1)
, B5 = (19 + 1), B6 = (20 + 1), L1 = (3 + 1), L2 = (4 + 1), a = (5 + 1)
, w = (6 + 1), b = (16 + 1), flow = (17 + 1)
};
public:
double _H1, _H2, _H3, _H4, _B, _B1, _B2, _B3, _B4, _B5, _B6, _b, _L1, _L2, _a, _w;
};
class XHG_II : public CEquJsonObject
{
DECLARATION_SUBCLASS(XHG_II);
private:
double getFlow(int idxB, int idxb);
void getRange(const int &idx, double &max, double &min);
private:
enum
{
clr = 0, m = 1, H = (7 + 1), H1 = (8 + 1), H2 = (9 + 1), H3 = (10 + 1)
, B = (11 + 1), B1 = (12 + 1), B2 = (13 + 1), B3 = (14 + 1)
, B4 = (15 + 1), L1 = (3 + 1), L2 = (4 + 1), a = (5 + 1)
, w = (6 + 1), b = (16 + 1), flow = (17 + 1), B_B1 = (18 + 1)
, B2_B = (19 + 1), B_B3 = (20 + 1), B4_B = (21 + 1)
};
public:
double _H1, _H2, _H3, _B, _B1, _B2, _B6, _b, _L1, _L2, _a, _w;
};
class SG : public CEquJsonObject
{
DECLARATION_SUBCLASS(SG);
private:
void getRange(const int &idx, double &max, double &min);
private:
enum
{
clr = 0, m = (0+1), P1 = (2+1), P2 = (3+1), B = (4+1), B1 = (5+1), B_B1 = (6+1), b = (7+1)
, a = (8+1), HH = (9+1), H = (10+1), H1 = (11+1), H2 = (12+1), H2_H1 = (13+1)
, H3 = (14+1), H4 = (15+1), L = (16+1)
};
static double g_P1[6];
static double g_P2[6];
public:
double _H, _H1, _H2, _H3, _H4, _B, _B1, _B6, _b, _L, _L1, _a;
};
class BLQ : public CEquJsonObject
{
DECLARATION_SUBCLASS(BLQ);
private:
void getRange(const int &idx, double &max, double &min);
private:
enum
{
clr = 0, m = (0+1), mo = (2+1), B = (6+1), B1 = (7+1), B_B1 = (8+1), b = (9+1)
, a = (10+1), HH = (11+1), H = (12+1), H1 = (13+1), H2 = (14+1)
, H2_H1 = (15+1), H3 = (16+1), H4 = (17+1), L = (18+1)
};
};
class ZG_I : public CEquJsonObject
{
DECLARATION_SUBCLASS(ZG_I);
private:
CString getFlow(const int &idxbb, const int idxD);
CString calcA(const double &dH, const double &dD);
CString calcL(const double &dH, const double &dD);
CString setModel(const CString &sD);
private:
enum
{
clr = 0, m = (0+1), D = (2+1), d = (3+1), l = (4+1), H4 = (5+1), H1 = (9+1)
, H2 = (10+1), H3 = (11+1), H = (12+1), A = (13+1), L = (14+1), bb = (15+1), v = (16+1)
};
public:
double _H1, _H2, _H3, _B, _L, _l, _a, _A, _D, _d;
};
class ZG_II : public CEquJsonObject
{
DECLARATION_SUBCLASS(ZG_II);
private:
CString getFlow(const int &idxbb, const int idxD);
CString calcA(const double &dH, const double &dD);
CString calcL(const double &dH, const double &dD);
CString setModel(const CString &sD);
private:
enum
{
clr = 0, m = (0+1), D = (2+1), d = (3+1), l = (4+1), B = (5+1), H4 = (6+1), H1 = (8+1), H2 = (9+1), H3 = (10+1)
, H = (11+1), A = (12+1), L = (13+1), bb = (14+1), v = (15+1)
};
public:
double _H1, _H2, _H3, _B, _L, _l, _a, _A, _D, _d;
};
class XGC : public CEquJsonObject
{
DECLARATION_SUBCLASS(XGC);
private:
CString getFlow(const int& idxbb, const int idxD);
CString calcA(const double& dH, const double& dD);
CString calcL(const double& dH, const double& dD);
CString setModel(const CString& sD);
private:
enum
{
clr = 0, m = 1, type = 3, D1 = 4, v = 5, P = 6, D2 = 7
, B = 8, B1 = 9, B2 = 10, A = 11, B3 = 12, H = 13, H1 = 14
, L1 = 15, L2 = 16, T = 17
};
public:
double _D1, _D2, _B, _B1, _B2, _A, _B3, _H, _H1, _L1
, _L2, _T;
CString _type;
};
class XJT : public CEquJsonObject
{
DECLARATION_SUBCLASS(XJT);
private:
CString getFlow(const int& idxbb, const int idxD);
CString calcA(const double& dH, const double& dD);
CString calcL(const double& dH, const double& dD);
CString setModel(const CString& sD);
private:
enum
{
clr = 0, m = 1, D1 = 5, D2 = 6, W = 7, B = 8
, B1 = 9, H = 10, H1 = 11, A = 12, L1 = 13, T = 14
};
public:
double _D1, _D2, _W, _B, _B1, _H, _H1, _A, _L1, _T;
};
class ZSB : public CEquJsonObject
{
DECLARATION_SUBCLASS(ZSB);
private:
CString getFlow(const int& idxbb, const int idxD);
CString calcA(const double& dH, const double& dD);
CString calcL(const double& dH, const double& dD);
CString setModel(const CString& sD);
private:
enum
{
clr = 0, m = 1, W = 4, B = 5, B2 = 6, B3 = 7, α = 8, H = 9, L1 = 10
};
public:
double _W, _B, _B2, _B3, _α, _H, _L1;
};
class BS : public CEquJsonObject
{
DECLARATION_SUBCLASS(BS);
private:
CString getFlow(const int& idxbb, const int idxD);
CString calcA(const double& dH, const double& dD);
CString calcL(const double& dH, const double& dD);
CString setModel(const CString& sD);
private:
enum
{
clr = 0, m = 1, bRect = 3, S = 4, B = 5, H = 6, H1 = 7, W1 = 8
};
public:
double _S, _B, _H, _H1, _W1;
CString _bRect;
};
class XL : public CEquJsonObject
{
DECLARATION_SUBCLASS(XL);
private:
CString getFlow(const int& idxbb, const int idxD);
CString calcA(const double& dH, const double& dD);
CString calcL(const double& dH, const double& dD);
CString setModel(const CString& sD);
private:
enum
{
clr = 0, m = 1, style = 3, num = 8, W = 9, H = 10, B = 11
, A = 12, B1 = 13, L1 = 14, T = 15
};
public:
double _num, _W, _H, _B, _A, _B1, _L1, _T;
CString _style;
};
}
namespace BAOQIQI
{
class PAN_SI : public CEquJsonObject
{
DECLARATION_SUBCLASS(PAN_SI);
public:
static bool getUserInput(std::vector<AcDbObjectId> &ids);
virtual void inplace(AcDbObjectIdArray &ar, CParaDesignDlg &dlg);
};
class GUAN_SI : public CEquJsonObject
{
DECLARATION_SUBCLASS(GUAN_SI);
virtual void inplace(AcDbObjectIdArray &ar, CParaDesignDlg &dlg);
};
class XUANLIU_SI : public CEquJsonObject
{
DECLARATION_SUBCLASS(XUANLIU_SI);
};
}
class AecDbRiverGroove;
namespace FLUME
{
class PARSHALL : public CEquJsonObject
{
DECLARATION_SUBCLASS(PARSHALL);
void setDatasToEqu(AecDbRiverGroove *pGroove);
private:
enum
{
clr = 0, m = 1, b = 4, B1 = 5, B2 = 6, L1 = 7, L2 = 8, L = 9, D = 10
, K = 11, N = 12, T = 13, GCK = 14, h = 15, D1 = 16, D2 = 17, La = 18, j = 19, x = 20
};
public:
CString s;
bool bLook;
double dD, dN, dK, dL1, dL, dL2, dT, dj, db, dB1, dB2, dx, dD1, dD2, dh, dLa;
};
}
class AecDbEwEquipment;
namespace VALVE_PIPE
{
class VALVE: public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(VALVE);
virtual AcDbEntity* start2Ptr(CParaDesignDlg & dlg);
private:
enum
{
clr = 0, m = 2, DN = 3, PN = 4, L = 5, H = 6, W = 7, F = 8, R = 9, M = 10,
};
public:
CString sMaterial, sPN;
double dDN, dL, dW, dH;
bool bHasFlange;
int nValveType;
std::map<CString, CString> bims;
};
// 自带等级查询的阀门
class LEVEL_VALVE: public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(LEVEL_VALVE);
virtual AcDbEntity* start2Ptr(CParaDesignDlg & dlg);
virtual void onSigleClickItem(const int &idx);
private:
enum
{
clr = 0, m = 2, DN = 3, PN = 4, L = 5, H = 6, W = 7, F = 8, R =9, M = 10
, PROJ, LEVEL, TRADE, GASKET
/*
L 阀长
H 手轮高度
W 手轮宽度
F 是否插入法兰
R 法兰端面(插入法兰时,显示)
M 驱动方式
PROJ 工程名
LEVEL 等级
TRADE 行业
GASKET 法兰垫片
*/
};
public:
CString sMaterial, sPN;
double dDN, dL, dW, dH;
bool bHasFlange;
CString sEndType;
int nValveType;
std::map<CString, CString> bims;
};
}
namespace HVAC_VALVE
{
class HVAC_VALVE: public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(HVAC_VALVE);
virtual AcDbEntity* start2Ptr(CParaDesignDlg & dlg);
virtual void onSigleClickItem(const int &idx);
private:
enum
{
// 颜色,厂家,材质, 风管形状(圆/方),圆形时管直径,方形管宽,方形管高
clr = 0 ,fa = 1, m = 2, D2D = 3, shape = 4, DN = 5, W = 6 , H = 7
// 压力, 阀长,阀宽,阀高,插入阀门带法兰,驱动类型
, PN = 8, FL = 9, FW = 10, FH = 11, Flange = 12, powerType = 13
// 适用温度,"泄漏率,风量比,阻力特性,全行程工作时间,叶片运动方式
, Te = 14, Xe = 15, Av = 16, Re = 17, Ti = 18, moveType = 19
// 风叶开度,噪音,轻型,法兰厚,法兰卷边
, Kd = 20, Ni = 21, Lg = 22, FlT = 23, FlE = 24,
};
public:
CString _sMaterial, _sFactory, _s2DBlk;
double _dDN, _dW, _dH, _dFL, _dFW, _dFH, _dPN, _dFlT, _dFlE;
bool _bHasFlange;
int _nPowerType, _nMoveType;
// 0 方 1 圆
int _nShape;
std::map<CString, CString> _bims;
};
class XICHENZHAO : public CEquJsonObject
{
DECLARATION_SUBCLASS(XICHENZHAO);
virtual AcDbEntity* start2Ptr(CParaDesignDlg & dlg);
private:
enum
{
// 颜色,厂家,材质,风管形状,圆形时直径,方形时管长,方形时管宽
clr = 0, fa = 1, m = 2, FShape = 3, FDN = 4, FL = 5, FW = 6
// 罩口形状,圆形时罩口直径,方形时罩口宽,方形时罩口长
, ZShape = 7 , ZDN = 8, ZL = 9, ZW = 10
// 总高,下边高,插入时风管带法兰,法兰厚,法兰卷边
, H = 11, HB = 12, Flange = 13, FlT = 14, FlE = 15
};
double _dFDN, _dFL, _dFW, _dZDN, _dZL, _dZW, _dHH, _dHB, _dFlT, _dFlE;
int _nFshape, _nZshape;
bool _bHasFlange;
};
}
namespace FENGKOU
{
class FENGKOU_CZ : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGKOU_CZ);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
virtual void onSigleClickItem(const int& idx);
private:
enum
{
// 颜色, 型号, 厂家, 风口形状, 风口公称直径D, 风口长L, 风口宽W, 风口类型, 风口厚度, 风口边框
clr = 0, m = 1, fa = 2, Shape = 3, DN = 4, L = 5, W = 6, Type = 7, T = 8, W1 = 9
// 百叶条数num, 风口间距, 总高,法兰,法兰厚,法兰卷边
, num = 10, dist = 11
};
double _D, _L, _W, _T, _W1, _num, _dist;
// 0 方 1 圆
bool _bShape, _bType;
CString _s2DBlk;
std::map<CString, CString> _bims;
};
class FENGKOU_SP : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGKOU_SP);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
virtual void onSigleClickItem(const int& idx);
private:
enum
{
// 颜色, 型号, 厂家, 风口形状, 风口公称直径D, 风口长L, 风口宽W, 风口类型, 风口厚度, 风口边框
clr = 0, m = 1, fa = 2, Shape = 3, DN = 4, L = 5, W = 6, Type = 7, T = 8, W1 = 9
// 百叶条数num, 风口间距, 总高,法兰,法兰厚,法兰卷边
, num = 10, dist = 11
};
double _D, _L, _W, _T, _W1, _num, _dist;
// 0 方 1 圆
bool _bShape, _bType;
CString _s2DBlk;
std::map<CString, CString> _bims;
};
}
namespace FENGJI
{
class FENGJI_LIXIN : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGJI_LIXIN);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 转速, 压力, 风量, 轴动率, 电机功率, 机子重量
clr = 0, model = 1, factory = 2, r = 3, N = 4, m3 = 5, p = 6, P = 7, m = 8
// 安装长度, 安装宽度, 安装高度, 叶轮半径, 叶轮高度, 出风口形状
, L0 = 9, W0 = 10, H0 = 11, R1 = 12, H1 = 13, Shape = 14
// 方口长度, 方口宽度, 圆口半径, 风口高度
, L2 = 15, W2 = 16, R3 = 17, H2 = 18
// 底座长度, 底座宽度, 底座高度
, L4 = 19, W4 = 20, H4 = 21
};
double _L0, _W0, _H0, _R1, _H1, _L2, _W2, _R3, _H2, _L4, _W4, _H4;
int _Shape;
};
class FENGJI_ZHOULIU : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGJI_ZHOULIU);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 转速, 压力, 风量, 轴动率, 电机功率, 机子重量
clr = 0, model = 1, fa = 2, r = 3, N = 4, m3 = 5, p = 6, P = 7, m = 8
// 安装长度, 安装宽度, 安装高度, 风机风口半径
, L0 = 9, W0 = 10, H0 = 11, R1 = 12
// 风机高度, 风机厚度, 风机法兰卷边, 风叶宽度, 风叶高度
, H1 = 13, T1 = 14, fe = 15, W2 = 16, H2 = 17
// 梯形底座上底长度, 梯形底座下底长度, 梯形底座高度
, L30 = 18, L31 = 19, H3 = 20
};
double _L0, _W0, _H0, _R1, _H1, _T1, _fe, _W2, _H2, _L30, _L31, _H3;
};
class FENGJI_HUNLIU : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGJI_HUNLIU);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 转速, 压力, 风量, 轴动率, 电机功率, 机子重量
clr = 0, model = 1, fa = 2, r = 3, N = 4, m3 = 5, p = 6, P = 7, m = 8
// 安装长度, 安装宽度, 安装高度, 风机风口半径
, L0 = 9, W0 = 10, H0 = 11, R1 = 12
// 风机高度, 风机厚度, 风机法兰卷边, 风叶宽度, 风叶高度
, H1 = 13, T1 = 14, fe = 15, W2 = 16, H2 = 17
// 梯形底座上底长度, 梯形底座下底长度, 梯形底座高度
, L30 = 18, L31 = 19, H3 = 20
};
double _L0, _W0, _H0, _R1, _H1, _T1, _fe, _W2, _H2, _L30, _L31, _H3;
};
class FENGJI_WUDING : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGJI_WUDING);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 转速, 压力, 风量, 轴动率, 电机功率, 机子重量
clr = 0, model = 1, fa = 2, r = 3, N = 4, m3 = 5, p = 6, P = 7, m = 8
// 安装长度, 安装宽度, 安装高度, 风机底座长度风机底座宽度风机底座高度
, L0 = 9, W0 = 10, H0 = 11, L1 = 12, W1 = 13, H1 = 14
// 风筒半径, 风筒高度, 风帽半径, 风帽高度
, R2 = 15, H2 = 16, R3 = 17, H3 = 18
};
double _L0, _W0, _H0, _L1, _W1, _H1, _R2, _H2, _R3, _H3;
};
}
namespace FENGMAO
{
class FENGMAO_TX_CZ : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGMAO_TX_CZ);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,型号, 厂家, 风口形状, 风口公称直径D, 风口宽W, 风口高H, 底座半径, 风帽高度,
clr = 0, model = 1, factory = 2, Shape = 3, DN = 4, W = 5, H = 6, R1 = 7, H1 = 8
};
double _dDN, _dW, _dH, _dR1, _dH1;
// 0 方 1 圆
bool _bShape;
};
class FENGMAO_SX_CZ : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGMAO_SX_CZ);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 风口形状, 风口公称直径D, 风口宽W, 风口高H, 底座半径, 底座高度, 支架长度, 支架宽度, 支架高度
clr = 0, model = 1, factory = 2, Shape = 3, DN = 4, W = 5, H = 6, R1 = 7, H1 = 8, L2 = 9, W2 = 10, H2 = 11
};
double _dDN, _dW, _dH, _R1, _H1, _L2, _W2, _H2;
// 0 方 1 圆
bool _bShape;
};
class FENGMAO_ZX_CZ : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGMAO_ZX_CZ);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 风口形状, 风口公称直径D, 风口宽W, 风口高H, 底座半径, 风帽高度,
clr = 0, model = 1, factory = 2, Shape = 3, DN = 4, W = 5, H = 6, R1 = 7, H1 = 8
};
double _dDN, _dW, _dH, _R1, _H1;
// 0 方 1 圆
bool _bShape;
};
class FENGMAO_TX_SP : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGMAO_TX_SP);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 风口形状, 风口公称直径D, 风口宽W, 风口高H, 底座半径, 风帽高度
clr = 0, model = 1, factory = 2, Shape = 3, DN = 4, W = 5, H = 6, R1 = 7, H1 = 8
};
double _dDN, _dW, _dH, _R1, _H1;
// 0 方 1 圆
bool _bShape;
};
class FENGMAO_SX_SP : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGMAO_SX_SP);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 风口形状, 风口公称直径D, 风口宽W, 风口高H, 底座半径, 底座高度, 支架长度, 支架宽度, 支架高度
clr = 0, model = 1, factory = 2, Shape = 3, DN = 4, W = 5, H = 6, R1 = 7, H1 = 8, L2 = 9, W2 = 10, H2 = 11
};
double _dDN, _dW, _dH, _R1, _H1, _L2, _W2, _H2;
// 0 方 1 圆
bool _bShape;
};
class FENGMAO_ZX_SP : public CEquJsonObject
{
DECLARATION_SUBCLASS(FENGMAO_ZX_SP);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,风机型号, 厂家, 风口形状, 风口公称直径D, 风口宽W, 风口高H, 底座半径, 风帽高度
clr = 0, model = 1, factory = 2, Shape = 3, DN = 4, W = 5, H = 6, R1 = 7, H1 = 8
};
double _dDN, _dW, _dH, _R1, _H1;
// 0 方 1 圆
bool _bShape;
};
}
namespace SHUIXIANG
{
class Rect_SHUIXIANG : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(Rect_SHUIXIANG);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
virtual void onSigleClickItem(const int& idx);
private:
enum
{
// 颜色,型号, 厂家,标准水箱, 名称, 页码, 人孔, 方形人孔长度L0, 圆形人孔直径D0
clr = 0, fa = 1, m = 2, table = 3, name = 4, page = 5, hole = 6, L0 = 7, D0 = 8
// 容积V, 重量M, 水箱长度L1, 水箱宽度W1, 水箱高度H1
, V = 9, M = 10, L1 = 11, W1 = 12, H1 = 13
// 水箱是否需要支架support, 支架数目num, 支架位置location, 支架长度L2, 支架宽度W2, 支架高度H2
, support = 14, num = 15, location = 16, L2 = 17, W2 = 18, H2 = 19,
};
public:
CString _sMaterial, _sFactory, _sTable, _sName, _sPage;
double _dL0, _dD0, _dL1, _dW1, _dH1, _dNum, _dL2, _dW2, _dH2;
bool _bSupport;
int _nHole, _nLocation;// _nHole: 0 方 1 圆
std::map<CString, CString> _bims;
};
class Circle_SHUIXIANG : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(Circle_SHUIXIANG);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
virtual void onSigleClickItem(const int& idx);
private:
enum
{
// 颜色,型号, 厂家,标准水箱, 页码
clr = 0, fa = 1, m = 2, table = 3, page = 4
// 容积V, 重量M, 水箱放置形状shape, 水箱直径D1, 水箱高度H1
, V = 5, M = 6, shape = 7, D1 = 8, H1 = 9
// 支架高度H2, 支架边距L2, 支架间距D2
, H2 = 10, L2 = 11, D2 = 12,
};
public:
CString _sMaterial, _sFactory, _sTable, _sPage;
double _dD1, _dH1, _dH2, _dL2, _dD2;
int _nShape;// _nShape: 0 方 1 圆
std::map<CString, CString> _bims;
};
}
namespace FENGGUANRUANLIANJIE
{
class FGRLJ : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(FGRLJ);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,型号, 厂家, 风管形状(圆/方),圆形管直径, 方形管长,方形管宽
clr = 0, m = 1, fa = 2, Shape = 3, DN = 4, L = 5, W = 6
// 风管软连接入口形状, 风管软连接入口长度L1, 风管软连接入口宽度W1, 风管软连接入口直径D1
, EnterShape = 7, L1 = 8, W1 = 9, D1 = 10
// 风管软连接高度H1, 风管软连接法兰延伸长度Flange
, H1 = 11, Flange = 12,
};
public:
double _dL, _dW, _dDN, _dL1, _dW1, _dD1, _dH1, _dFla;
// 0 方 1 圆
bool _bEnterShape, _bShape;
std::map<CString, CString> _bims;
};
}
namespace FENGGUANXIAOSHENGQI
{
class FGXSQ :public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(FGXSQ);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
// 颜色,型号, 厂家, 风管形状(圆/方),圆形管直径, 方形管长,方形管宽
clr = 0, m = 1, fa = 2, Shape = 3, DN = 4, L = 5, W = 6
// 消声器长度, 法兰厚度
, L1 = 7, T1 = 8,
};
public:
double _dL, _dW, _dDN, _dL1, _dT1;
// 0 方 1 圆
bool _bShape;
std::map<CString, CString> _bims;
};
}
namespace NENGLIANGBIAO
{
class NLB :public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(NLB);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{ // 颜色, 型号, 厂家,风管形状(圆/方),圆形管直径, 方形管长,方形管宽
clr = 0, m = 1, fa = 2, Shape = 3, DN = 4, L = 5, W = 6
// 圆环底座高度, 量表边长
, H = 7, L1 = 8,
};
public:
double _dL, _dW, _dDN, _dH, _dL1;
// 0 方 1 圆
bool _bShape;
std::map<CString, CString> _bims;
};
}
namespace BAOJINGFA
{
class SHISHI : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(SHISHI);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
clr = 0, m = 2, R0 = 3, R1 = 4, R2 = 5, H = 6, R3 = 7, R4 = 8, R5 = 9,
};
public:
double dR0, dR1, dR2, dH, dR3, dR4, dR5;
};
class GANSHI : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(GANSHI);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
clr = 0, m = 2, R0 = 3, T0 = 4, L0 = 5, R1 = 6, T1 = 7, L1 = 8
, L2 = 9, W2 = 10, H2 = 11, L3 = 12, W3 = 13, H3 = 14, L4 = 15, W4 = 16, H4 = 17
, R2 = 18, R3 = 19, R4 = 20, R5 = 21, T2 = 22, R6 = 23, R7 = 24,
};
public:
double dR0, dT0, dL0, dR1, dT1, dL1, dL2, dW2, dH2, dL3, dW3, dH3, dL4, dW4, dH4
, dR2, dR3, dR4, dR5, dT2, dR6, dR7;
};
class YUZUOYONG : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(YUZUOYONG);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
clr = 0, m = 2, H5 = 3, R0 = 4, R1 = 5, H0 = 6, H4 = 7, R2 = 8, R3 = 9
, S0 = 10, W0 = 11, R4 = 12, R5 = 13, H3 = 14, S1 = 15, W1 = 16, R6 = 17, L1 = 18
, T0 = 19, R7 = 20, T1 = 21, H = 22, D = 23, H1 = 24, L0 = 25, W2 = 26, H2 = 27,
};
public:
double dH5, dR0, dR1, dH0, dH4, dR2, dR3, dS0, dW0
, dR4, dR5, dH3, dS1, dW1, dR6, dL1, dT0
, dR7, dT1, dH, dD, dH1, dL0, dW2, dH2;
};
class YULIN : public CEquJsonObject
{
public:
DECLARATION_SUBCLASS(YULIN);
virtual AcDbEntity* start2Ptr(CParaDesignDlg& dlg);
private:
enum
{
clr = 0, m = 2, R0 = 3, R1 = 4, R2 = 5, R3 = 6, R4 = 7, R5 = 8, A = 9,
};
public:
double dR0, dR1, dR2, dR3, dR4, dR5, dA;
};
}
class AecDbWeir;
namespace WEIR
{
class SANJIAOYAN: public CEquJsonObject
{
DECLARATION_SUBCLASS(SANJIAOYAN);
void setDatasToEqu(AecDbWeir *p);
private:
enum
{
clr = 0, m = 1, h = (3+1), w = (4+1), t = (5+1), yc = (6+1)
, spac = (7+1), a = (8+1), head = (9+1), tail = (10+1), ele = (12)
, wallmode = (13), holemode = (14), has_bottom_hole = (15), bottom_head = (16)
, bottom_tail = (17), bottom_r = (18), bottom_space = (19), has_bottom = (20),
};
public:
double dh, dw, dt, dyc, dspac, da, dhead, dtail, dele;
int wallMode, holeMode;
int hasBottomHole;
double bottomHead, bottomTail, bottomR, bottomSpace;
int hasBottom;
};
class CULIUKONGYAN: public CEquJsonObject
{
DECLARATION_SUBCLASS(CULIUKONGYAN);
void setDatasToEqu(AecDbWeir *p);
private:
enum
{
clr = 0, m = 1, h = (3+1), w = (4+1), t = (5+1), yc = (6+1)
, spac = (7+1), r = (8+1), head = (9+1), tail = (10+1), ele = 12
, wallmode = (13), holemode = (14), has_bottom_hole = (15), bottom_head = (16)
, bottom_tail = (17), bottom_r = (18), bottom_space = (19), has_bottom = (20),
};
public:
double dh, dw, dt, dyc, dspac, dr, dhead, dtail, dele;
int wallMode, holeMode;
int hasBottomHole;
double bottomHead, bottomTail, bottomR, bottomSpace;
int hasBottom;
};
class BAOBIYAN: public CEquJsonObject
{
DECLARATION_SUBCLASS(BAOBIYAN);
void setDatasToEqu(AecDbWeir *p);
private:
enum
{
clr = 0, m = 1, h = (3+1), w = (4+1), t = (5+1), ele = 7
, wallmode = (8), has_bottom_hole = (9), bottom_head = (10)
, bottom_tail = (11), bottom_r = (12), bottom_space = (13), has_bottom = (14),
};
public:
double dh, dw, dt, dele;
int wallMode;
int hasBottomHole;
double bottomHead, bottomTail, bottomR, bottomSpace;
int hasBottom;
};
}
namespace SHASHUIFENLI
{
class XCS: public CEquJsonObject
{
DECLARATION_SUBCLASS(XCS);
private:
enum
{
clr = 0, model = 0+1, v = 2+1, fai = 5+1, h = 6+1, fai1 = 7+1, h1 = 8+1, p = 9+1, W = 10+1, br = 12,
};
public:
double _fai, _h, _fai1, _h1, _W;
int _hasBr;
};
class HXS: public CEquJsonObject
{
DECLARATION_SUBCLASS(HXS);
private:
enum
{
clr = 0, model = 0+1, T = 2+1, L = 3+1, H = 4+1, L1 = 5+1, L2 = 6+1, W = 15+1,
};
public:
int _Single;
double _L, _L1, _L2, _H, _W;
};
class LCS: public CEquJsonObject
{
DECLARATION_SUBCLASS(LCS);
private:
enum
{
clr = 0, model = 0+1, H = 2+1, L = 3+1, W = 4+1, G = 6+1, P = 7+1, a = 8+1, H1 = 9+1
, H2 = 10+1, H3 = 11+1, L1 = 12+1, L2 = 13+1, L3 = 14+1,
};
public:
double _H, _L, _W, _a, _H1, _H2, _H3, _L1, _L2, _L3;
};
}
namespace LUOXUANBENG
{
class LXB: public CEquJsonObject
{
DECLARATION_SUBCLASS_NO_CONSTRUCTOR(LXB);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, d = 3+1, H = 4+1, P = 5+1, Hz = 6+1, L1 = 7+1, L2 = 8+1, L3 = 9+1
, I1 = 10+1, I2 = 11+1, I3 = 12+1, I4 = 13+1, h1 = 14+1, h2 = 15+1, f = 16+1, a = 17+1, b = 18+1
, e = 19+1, seta = 20+1, mm = 21+1, rr = 22+1, vv = 23+1, hh = 24+1, kk = 25+1,
};
std::set<int> combos;
double getKW(int idxB, int idxb);
void setComboxSel(std::wstring &idx);
public:
double _D, _d, _L1, _L2, _L3, _seta;
};
}
namespace QIBIJI
{
class QS_I_P : public CEquJsonObject
{
DECLARATION_SUBCLASS(QS_I_P);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, D = 3 + 1, D1 = 4 + 1, d = 5 + 1, H = 6 + 1, H1 = 7 + 1, L = 8 + 1, LL = 10,
};
void setComboxSel(std::wstring &idx);
double _D, _D1, _d, _H, _H1, _L, _LL;
};
class QS_I_Y : public CEquJsonObject
{
DECLARATION_SUBCLASS(QS_I_Y);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, D1 = 3 + 1, d = 4 + 1, H = 5 + 1, H1 = 6 + 1, H2 = 7 + 1, L = 8 + 1, L1 = 9 + 1
, LL = 11,
};
void setComboxSel(std::wstring &idx);
double _D1, _d, _H, _H1, _H2, _L, _L1, _LL;
};
class QS_I_L : public CEquJsonObject
{
DECLARATION_SUBCLASS_NO_CONSTRUCTOR(QS_I_L);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, D = 3 + 1, L = 4 + 1, H = 5 + 1, F = 6 + 1,
N = 7 + 1, R = 8 + 1, M = 9 + 1, K = 10 + 1, H1 = 11 + 1, LL = 13,
};
std::set<int> combos;
void setComboxSel(std::wstring &idx);
double _D, _L, _H, _F, _H1, _LL, _M;
};
class QS_II_L : public CEquJsonObject
{
DECLARATION_SUBCLASS_NO_CONSTRUCTOR(QS_II_L);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, a = 3 + 1, F = 4 + 1, G = 5 + 1, L3 = 6 + 1,
N = 7 + 1, K = 8 + 1, M = 9 + 1, R = 10 + 1, H = 11 + 1, L = 12 + 1, LL = 14,
};
std::set<int> combos;
void setComboxSel(std::wstring &idx);
double _F, _G, _L3, _H, _L, _M, _LL;
};
class QS_II_Y : public CEquJsonObject
{
DECLARATION_SUBCLASS(QS_II_Y);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, L3 = 3 + 1, a = 4 + 1, M = 5 + 1, S = 6 + 1, H = 7 + 1, L = 8 + 1, LL = 10,
};
void setComboxSel(std::wstring &idx);
double _L3, _a, _H, _M, _L, _LL;
};
}
namespace ZHAMEN
{
class RECT_ZHAMEN : public CEquJsonObject
{
DECLARATION_SUBCLASS(RECT_ZHAMEN);
private:
enum
{
clr = 0, model = 1, A = 3, H = 4, T = 5,
};
double _A, _H, _T;
};
class CIRCLE_ZHAMEN : public CEquJsonObject
{
DECLARATION_SUBCLASS(CIRCLE_ZHAMEN);
private:
enum
{
clr = 0, model = 1, H = 3, C = 4, I = 5, A = 6, T = 7,
};
double _C, _I, _A, _H, _T;
};
class SHENG_NI_FA : public CEquJsonObject
{
DECLARATION_SUBCLASS(SHENG_NI_FA);
private:
enum
{
clr = 0, model = 1, H = 3, h = 4, DN = 5, D3 = 6, T = 7,
};
double _H, _h, _DN, _D3, _T;
};
}
namespace GUANIJI
{
class XZG: public CEquJsonObject
{
DECLARATION_SUBCLASS(XZG);
private:
enum
{
clr = 0, model = 0 + 1, fai = 2 + 1, H = 3 + 1, N = 4 + 1, W = 9 + 1, a = 11,
};
double _fai, _H, _W, _a;
};
class CZG: public CEquJsonObject
{
DECLARATION_SUBCLASS(CZG);
private:
enum
{
clr = 0, model = 0 + 1, fai = 2 + 1, H = 3 + 1, K = 5 + 1, W = 6 + 1, a = 8,
};
double _fai, _H, _W, _a;
};
class ZG: public CEquJsonObject
{
DECLARATION_SUBCLASS(ZG);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, fai = 3 + 1, H = 4 + 1, K = 5 + 1, p = 8 + 1, w = 9 + 1, W = 10 + 1, a = 12,
};
double _fai, _H, _W, _a;
int _Half;
};
class QG: public CEquJsonObject
{
DECLARATION_SUBCLASS(QG);
private:
enum
{
clr = 0, model = 0+1, T = 2+1, L = 3+1, W = 4+1, H = 5+1, G = 6+1, W1 = 7+1,
};
double _L, _W, _H, _G, _W1;
};
class PJ: public CEquJsonObject
{
DECLARATION_SUBCLASS(PJ);
private:
enum
{
clr = 0, model = 0+1, T = 2+1, L = 3+1, W = 4+1, H = 5+1, W1 = 6+1,
};
double _L, _H, _W, _W1;
};
class SX: public CEquJsonObject
{
DECLARATION_SUBCLASS(SX);
private:
enum
{
clr = 0, model = 0+1, T = 2+1, L = 3+1, Lk = 4+1, A = 5+1, B = 6+1,
H = 7+1, K = 8+1, F = 9+1, G = 10+1, W1 = 11+1,
};
double _L, _H, _Lk, _W1;
};
class SB: public CEquJsonObject
{
DECLARATION_SUBCLASS(SB);
private:
enum
{
clr = 0, model = 0+1, L = 2+1, Lk = 3+1, A = 4+1, B = 5+1,
H = 6+1, K = 7+1, F = 8+1, G = 9+1, W1 = 10+1,
};
double _L, _H, _Lk, _W1;
};
class LIANTIAO : public CEquJsonObject
{
DECLARATION_SUBCLASS(LIANTIAO);
private:
enum
{
clr = 0, model = 1, L = 3, W = 4, H = 5, H1 = 6, DJ = 7, J = 8, L1 = 9, L2 = 10, B = 11, R = 12, L3 = 13,
};
double _L, _W, _H, _H1, _L1, _L2, _L3, _B, _R;
BOOL _LEFT, _DianJi;
};
}
namespace NONGSUOJI
{
class NC: public CEquJsonObject
{
DECLARATION_SUBCLASS(NC);
private:
enum
{
clr = 0, model = 0 + 1, T = 2 + 1, D = 3 + 1, H = 4 + 1, W = 5 + 1, a = 7,
};
double _D, _H, _W, _a;
};
class NB: public CEquJsonObject
{
DECLARATION_SUBCLASS(NB);
private:
enum
{
clr = 0, model = 0 + 1, D = 2 + 1, H = 3 + 1, T = 4 + 1, K = 5 + 1, W = 6 + 1, a = 8,
};
double _D, _H, _W, _a;
};
}
namespace BAOQIJI
{
class YHG: public CEquJsonObject
{
DECLARATION_SUBCLASS(YHG);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, L = 3+1, Q = 4+1, J = 5+1, L1= 6+1, L2 = 7+1,
};
double _D, _L, _L1, _L2;
};
class AD: public CEquJsonObject
{
DECLARATION_SUBCLASS(AD);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, L = 3+1, K = 4+1, L1= 5+1, L2 = 6+1, C = 7+1,
};
double _D, _L, _L1, _L2;
int _DJ;
};
}
namespace JIAYAOHUNHE
{
class GJ: public CEquJsonObject
{
DECLARATION_SUBCLASS(GJ);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, H = 3+1, SP = 4+1,
};
double _D, _H, __SP;
};
class PJ: public CEquJsonObject
{
DECLARATION_SUBCLASS(PJ);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, H = 3+1, L = 4+1, W = 5+1, K = 6+1, E = 7+1, W1 = 8+1,
};
double _D, _H, _L, _W, _E, _W1;
};
class TJ: public CEquJsonObject
{
DECLARATION_SUBCLASS(TJ);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, fai = 3+1, H = 4+1, W1 = 5+1, H1 = 6+1,
};
double _D, _fai, _H, _H1, _W1;
};
class LJF: public CEquJsonObject
{
DECLARATION_SUBCLASS(LJF);
private:
enum
{
clr = 0, model = 0+1, D = 2+1, H = 3+1, L = 4+1, W = 5+1, h0 = 6+1
, h1 = 7+1, K1 = 8+1, K2 = 9+1, K3 = 10+1, R1 = 11+1, R2 = 12+1
, R3 = 13+1, W1 = 14+1, h = 15+1,
};
double _D, _H, _L, _h0, _h1, _W1, _h;
};
}
namespace LVBUJI
{
class ZHUANPAN: public CEquJsonObject
{
DECLARATION_SUBCLASS(ZHUANPAN);
private:
enum
{
clr = 0, model = 1, L = 3, D = 4, H = 5, DJ = 6, J = 7, L1 = 8, L2 = 9, T = 10, S = 11,
};
double _L, _D, _H, _L1, _L2, _T, _S;
BOOL _LEFT, _DianJi;
};
}
class AecDbXBG;
namespace XIEBANGUAN
{
class XBG : public CEquJsonObject
{
DECLARATION_SUBCLASS(XBG);
void setDatasToEqu(AecDbXBG *pXBG);
private:
enum
{
clr = 0, model = 1, M = 3, B = 4 , R = 5, S = 6, T = 7, A = 8, H = 9,
};
CString _M;
double _R, _S, _T, _A, _H;
int _B;
};
}
namespace GUANXIANG
{
class GUANXIANG_I : public CEquJsonObject
{
DECLARATION_SUBCLASS(GUANXIANG_I);
private:
enum
{
clr = 0, model = 1, D = 3, H = 4, H1 = 5, H2 = 6, SG = 7, D1 = 8, XG = 9, D2 = 10, style = 11, L11 = 12, W11 = 13, H11 = 14, H3 = 15, type = 16, R = 17, L1 = 18, R2 = 19, num = 20
};
double _D, _H, _H1, _H2, _D1, _D2, _L11, _W11, _H11, _H3, _R, _L1, _R2;
CString _SG, _XG, _style, _type, _num;
};
}
namespace GUANDAOGUOLVQI
{
class DLD_FZ: public CEquJsonObject
{
DECLARATION_SUBCLASS(DLD_FZ);
private:
enum
{
clr = 0
, model = 1
, factory = 2
, DN1 = 3
, DN2 = 4
, DN3 = 5
, H = 6
, H1 = 7
, H2 = 8
, H3 = 9
, H4 = 10
, H5 = 11
, W1 = 12
, W2 = 13
, W3 = 14
, WJGK = 24
};
double _DN1, _DN2, _DN3, _H, _H1, _H2, _H3, _H4, _H5, _W1, _W2, _W3;
CString _WJGK;
};
}
namespace QIANCENGSHALV
{
class DMF_56: public CEquJsonObject
{
DECLARATION_SUBCLASS(DMF_56);
private:
enum
{
clr = 0
, model = 1
, factory = 2
, DN1 = 3
, DN2 = 4
, DN3 = 5
, H1 = 6
, H2 = 7
, W = 8
};
double _DN1, _DN2, _DN3, _H1, _H2, _W;
};
}
namespace YIBANXIANGTI
{
class FANGXINGXIANG: public CEquJsonObject
{
DECLARATION_SUBCLASS(FANGXINGXIANG);
virtual void onSigleClickItem(const int &idx);
private:
enum
{
clr = 0
, model
, factory
, ma // 材质
, table // 水箱表格
, name // 水箱名称
, page // 水箱所在页码
, V
, M
, L // 罐体长
, W // 罐体宽
, H // 罐体高
, ZJ // 是否有支架
, ZJ_H // 支架高度
, ZJ_N // 支架数量
, ADD // 添加管嘴
};
AcArray<AecDbXEquipment::TANK_NOZZ> m_arNozz;
int _TYPE, _ZJ, _ZJ_N;
double _L, _W, _H, _ZJ_H;
CString _sTable, _sName, _sPage, _ma;
};
}
namespace YIBANGUANTI
{
class YUANXINGGUAN: public CEquJsonObject
{
DECLARATION_SUBCLASS(YUANXINGGUAN);
virtual void onSigleClickItem(const int &idx);
private:
enum
{
clr = 0
, model
, factory
, ma // 材质
, TYPE // 放置形式
, TOP // 顶盖形状
, TOP_H // 顶盖高度
, BOT // 底盖形状
, BOT_H // 底盖高度
, table // 水箱表格
, name // 水箱名称
, page // 水箱所在页码
, V
, M
, H
, D // 罐体直径
, ZJ // 是否有支架
, ZJ_H // 支架高度
, ZJ_N // 支架数量
, ADD // 添加管嘴
};
AcArray<AecDbXEquipment::TANK_NOZZ> m_arNozz;
int _TYPE, _TOP, _BOT, _ZJ, _ZJ_N;
double _TOP_H, _BOT_H, _D, _ZJ_H, _H;
CString _sTable, _sName, _sPage, _ma;
};
}
namespace LABAKOU
{
class YUANXINGLABAKOU: public CEquJsonObject
{
DECLARATION_SUBCLASS(YUANXINGLABAKOU);
private:
enum
{
clr = 0
, model
, factory
, ma // 材质
, RKDN // 出口DN
, CKDN // 入口DN
, CD // 长度
, HD // 厚度
, BZ // 参考标准
};
double _RKDN, _CKDN, _CD, _HD;
CString _BZ;
};
}
namespace CHANSHUDIBAN
{
class YUANXINGDIBAN: public CEquJsonObject
{
DECLARATION_SUBCLASS(YUANXINGDIBAN);
private:
enum
{
clr = 0
, model
, factory
, ma // 材质
, H // 底板标高
, T // 外延边板厚
, H1 // 底板落差
, H2 // 内深
, H3 // 底板厚度
, L1 // 外延边长度
, R // 半径
, L2 // 竖边壁厚
, L3 // 内径
};
double _H, _T, _H1, _H2, _H3, _L1, _R, _L2, _L3;
AecDbX3dPart* makeXPart();
};
}