Files
envi-code/SourceCode/Code2026/tg_shs/inc/pipebase/TDb.h
T
2026-09-28 15:28:50 +08:00

602 lines
19 KiB
C++

#ifndef _TDB_H__
#define _TDB_H__
#include "getol.h"
#include "gegbl.h"
#include "acarray.h"
#include "gepnt3d.h"
#ifndef PI
#define PI 3.1415926535897932384626433832795
#endif
//整数
#define TXINT VT_I4
//字符串
#define TXSTR VT_BSTR
//实数
#define TXDBL VT_R8
//扩展数据点,随实体变换
#define TXPT3D (VT_BYREF | VT_R8)
//扩展数据点,随实体变换
#define TXPT3DX (VT_BYREF | VT_R8 + 1)
//扩展数据向量
#define TXVT3D (VT_BYREF | VT_R8 + 2)
//扩展数据向量,随实体变换
#define TXVT3DX (VT_BYREF | VT_R8 + 3)
//对象id soft
#define TXID VT_UI4
//对象id hard
#define TXHID VT_UI8
#define MAX_SET_FOROP 1
#define KEY_MAX_SET_FOROP _T("MAX_SET_FOROP")
namespace TDb
{
enum Position //夹点位置解释
{
eStart = 0, //夹点 Start 点
eMid = 1, //夹点 中点
eEnd = 2, //夹点 End点
eBr1 = 3, //夹点 分支点1
eBr2 = 4, //夹点 分支点2
eBr3 = 5, //夹点 分支点3
eBr4 = 6, //夹点 分支点4 1~4一般用于三通,四通
eInf1 = 7, //夹点 接口点1
eInf2 = 8, //夹点 接口点2
eInf3 = 9, //夹点 接口点3
eInf4 = 10, //夹点 接口点4
eInf5 = 11, //夹点 接口点5
eInf6 = 12, //夹点 接口点6
eInf7 = 13, //夹点 接口点7
eInf8 = 14, //夹点 接口点8
eInf9 = 15, //夹点 接口点9
eInf10 = 16, //夹点 接口点10 1~10 用于小型设备的接口
eSizeMid0 = 30, //夹点 尺寸0
eSizeMid1 = 31, //夹点 尺寸1
eSizeMid2 = 32, //夹点 尺寸2
eSizeMid3 = 33, //夹点 尺寸3 0~3 用于尺寸拉动的夹点
eCommand0 = 40, //夹点 命令点0
eCommand1 = 41, //夹点 命令点1
eCommand2 = 42, //夹点 命令点2
eCommand3 = 43, //夹点 命令点3 0~3 用于启动命令的夹点
eDim0 = 44, //夹点 标注0
eDim1 = 45, //夹点 标注1
eDim2 = 46, //夹点 标注2 0~2 用于埋标注的夹点解释
eAdjust0 = 47, // 调整点
};
enum InterfaceOper
{
eMoveGripPoint = 0, //夹点
eTransformBy = 1, //变换
eSize = 2, //尺寸
eNewCommand = 3, //命令
eUpdateIntf = 4, //接口
eUpdateCover = 5, //遮挡
eUpdateDisp = 6, //刷新图形
eUpdateRel = 7, //更新关系
eAutoWorkOn = 8, //自动影响,对象移走,原位置管子自动融合,新位置管子自动断开
};
enum InterObjOper //接口对象的操作类型 对应Database反应器函数
{
eUnknowOper = 0,//未知
eObjectAppended = 1,//对象添加到数据库
eObjectReAppended = 2,//对象二次添加到数据库
eObjectErased = 3,//对象被删除
};
enum ObjectKind //描述对象类型
{
eCabletry = 1, //桥架
ePipe = 1, //管子,如水管
eElbow = 2, //弯头
eReduceElbow = 3, //变径弯头
eReduce = 4, //变径
eTee = 5, //三通
eValve = 6, //阀门
eCross = 7, //四通
eEquipment = 8, //设备
eFlange = 9, //法兰
eOffset = 10, //乙字弯
eAirlets = 11, //风口
eFan = 12, //风机
eAirHanding = 13, //空气处理机
eVRVBrPipe = 14, //多联机分歧管
eVRVEqu = 15, //多联机室外机/室外机
eWall, // 墙
eOpeing, // 门
eWindow, // 窗
eHold, // 洞
eRectStair, // 双直梯
eStair, // 楼梯
eColumn, // 立柱
eWindowDoor, // 门窗
eCornerWindow, // 转角/带形窗
eWallPatch, // 墙造型
eBracket, // 吊架
eSupport, // 支架
eDeDustCover, // 除尘罩
eBroSymbol, // 断管符号
eEnclosure //桥架终端封头 axc add 2014-04-24
};
//axc add 2014-04-24 桥架终端封头类型
enum CabEnclosureKind
{
eStartEnclosure = 1, //起点终端封头
eEndEnclosure = 2 //终点终端封头
};
enum EquipKind // 设备种类
{
eHeating = 1, // 采暖设备
eAirCondition // 空调设备
};
//桥架的对象的覆盖解释
typedef ObjectKind CableFitting;
enum CabletryStyle //桥架样式
{
eC = 0, //槽式
eP = 1, //盘式
eT = 2, //梯式
};
//桥架是否大跨距 added by lsd 2013-8-15
enum CableBigSpan
{
eUnBigSpan = 0,//非大跨距
eBigSpan = 1,
};
// 桥架拐角画法
enum CableCorner
{
eLine = 0, //单线段画法
eArc = 1, //单弧度画法
eDblLine = 2, //双线段画法
eDblArc = 3, //双弧度画法
eNLine = 4, //90度角画法
};
enum CableStyle
{
eNorCabletray = 0, //普通桥架
eSilo = 1, //竖井
eArcCabletray = 2, //弧形桥架
};
enum CableElbowStyle
{
eCHorEqualR = 1, // 槽式水平等径弯通
eCHorEqual135R = 2, // 槽式135度水平等径弯通
eCVerEqualTop = 3, // 槽式垂直等径上弯通
eCVerEqual135Top = 4, // 槽式135度垂直等径上弯通
eCVerEqualBottom = 5, // 槽式垂直等径下弯通(右方向)
eCVerEqual135Bottom = 6, // 槽式135度垂直等径下弯通
eCVerEqualLeftBottom = 7, // 槽式垂直等径左下弯通
eCVerEqualRightBottom = 8, // 槽式垂直等径右下弯通
eCVerEqualLeftTop = 9, // 槽式垂直等径左上弯通
eCVerEqualRightTop = 10, // 槽式垂直等径右上弯通
eCVerEqualTurn = 11, // 槽式垂直等径转动弯通
eCHorEqualZRight = 12, // 槽式垂直等径Z字右偏弯通
eCHorEqualZLeft = 13, // 槽式垂直等径Z字左偏弯通
eCVerEqualHightLow = 14, // 槽式垂直高低等径弯通
eCVerEqualBottom2 = 15, // 槽式垂直等径下弯通(左方向)
//....
};
enum CableTeeStyle
{
eTHorEqualR = 1, // 1槽式水平等径三通
eTVerEqualR = 2, // 2槽式上垂直等径三通
eTDVerEqualR = 3, // 3槽式下垂直等径三通
eTUpSideMidVerEqualR = 4, // 4槽式上边中间垂直等径三通
eTDSideVerEqualR = 5, // 5槽式下边垂直等径三通
eTUpAngleVerEqualR = 6, // 6槽式上角垂直等径三通
eTDAngleVerEqualR = 7, // 7槽式下角垂直等径三通
eTDSideMidVerEqualR = 8, // 8槽式下边中间垂直等径三通
eTUpSideVerEqualR = 9, // 9槽式上边垂直等径三通
};
enum CableCrossStyle
{
eOldCbotHorEqualCross = 0, // 槽式下平等径四通(8.2之前版本)
eCbotHorEqualCross = 1, // 槽式下平等径四通
eCrossForSpace = 2, // 垂直四通
};
enum CableReducerStyle
{
eRbotHorDifR = 1, // 槽式下平异径接头
eRbotHorNormalDifR = 2, // 槽式下平普通异径接头
eRbotHorOffsetDifR = 3, // 槽式下平偏移(左)异径接头
eRbotHorOffsetDifR2 = 4 // 槽式下平偏移(右)异径接头
};
enum CableOffsetStyle
{
eHorLeftOffset = 1, // 槽式水平左偏移乙字弯通
eHorRightOffset = 2, // 槽式水平右偏移乙字弯通
eVerOffset = 3, // 槽式垂直偏移乙字弯通
};
enum GougeStyle
{
eGNull = 1, // 空
eGLSide = 2, // 靠左边
eGRSide = 3, // 靠右边
eGOrder = 4, // 两边对齐
eGInter = 5 // 两边交错
};
enum EAppType
{
eCableTray = 1, // 桥架
eSock = 2, // 线槽
eGouge = 3 // 电缆沟
};
enum CableCoverStyle
{
eUnCover = 0, // 不封顶
eCover = 1, // 封顶
};
enum CableClapBoard
{
eUnBoard = 0, //无隔板
eBoard = 1, //有隔板
};
enum ShowClapBoard
{
eUnShowBoard = 0, //不显示隔板
eShowBoard = 1, //显示隔板
};
enum SortStyle //排序规则
{
eSortByID = 1, //根据 id 排序
eSortByEl = 2, //根据标高排序
};
enum BracketStyle //吊架类型
{
eDoubleBracket = 1, //双臂吊架
eSingleBracket = 2, //单臂吊架
eDRowSingleBracket = 3, //单臂双排吊架
};
enum PillarStyle //立柱样式
{
eSquareSteel = 1, //方钢
eAngleIron = 2, //角钢
};
enum BracketArmType // 托壁类型 mcl add 2011.3.1
{
eLineShape = 1, // 线状(默认桥架的样式)
eRectShape = 2, // 矩形框 (暖通增加的)
};
//表达基本图元的曲线单位,三点有两点相同直线,三点不同圆弧
typedef struct TCurveElement
{
AcGePoint3d ptGe[3]; //ARC: 0起点 1 中点 2终点; LINE: 0起点, 1,2两点重合
BOOL bHided; //是否显示
int gsMark; //gs标记
double dWidth; //宽度
AcDbObjectId idSubLay; //子实体图层
AcDbObjectId idSubLty; //子实体线型
int nColorIndex; //颜色索引
}TCURVEELEMENT,*PTCURVEELEMENT;
typedef struct GripAppData //夹点应用程序定义
{
int nIndex; //夹点索引
AcGePoint3d ptGrip; //夹点位置
TDb::Position ePos; //夹点位置解释
TCHAR szTip[65]; //夹点提示
AcDbEntity* pOwner;
}GRIPAPPDATA;
/* delete by hh 2014-02-10 pipebase升级到T20 不再使用该结构
typedef struct TXData
{
int nVt; //VT_I4,VT_BSTR,VT_R8,VT_BYREF | VT_R8,VT_BYREF | VT_R8 + 1 pt
//VT_BYREF | VT_R8 + 2,VT_BYREF | VT_R8 + 3 vect
//VT_UI4 : id VT_BYREF | VT_R8 + 4 : matrix3d
LONG_PTR npszLen; //对应字符数据长度
union
{
LONG_PTR nVal; // 整型数据
double dVal[3]; // 浮点数据
TCHAR* pszVal; // 字符数据
};
}TXData;
*/
typedef struct TIntfData
{
int nType; // 类型0 : cir 1: ret 2: custm
double dL; // 长度 (直径)
double dW; // 宽度
AcGeVector3d vt; // 长度方向向量
}TIntfData;
typedef struct TInfUpdate
{
int nIntf;
bool bInfAll;
AcGePoint3d ptOld;
AcGeMatrix3d xForm;
AcDbObjectId idOwner;
}TINFUPDATE,*pTInfUpdate;
}
//各专业公用键, 底层内部使用
#define KEY_DXF _T("DXF") // dxf名称
#define KEY_THISID _T("Thisid") // 自身id
#define KEY_START _T("Start") // 开始点
#define KEY_END _T("End") // 端点
#define KEY_MID _T("Mid") // 中点
#define KEY_XFORM _T("Xform") // 变换
#define KEY_RUNTIME _T("Runtime") // 运行时
#define KEY_IGNORETGCPCMD _T("ignoretgcpcmd") // 忽略上华的cp 命令导致的消息传递错误
#define KEY_IDCNT1 _T("IdCNT1") // 连接ID1 内部使用
#define KEY_IDCNT2 _T("IdCNT2") // 连接ID2 内部使用
#define KEY_IDCNT3 _T("IdCNT3") // 连接ID3 内部使用
#define KEY_IDCNT4 _T("IdCNT4") // 连接ID4 内部使用
#define KEY_IDCNT_ _T("IdCNT") // 连接ID? 内部使用,?可以是自然数
#define KEY_NORMAL _T("Normal") // 法向量
#define KEY_HIDEDRAW _T("HideDraw") // 遮挡的虚线是否画 0:不画 1:画
#define KEY_HASCENLINE _T("HasCenLine") // 中心线是否画 0:不画 1:画 [dwg]
#define KEY_SINGLE _T("Single") // 单线画法
#define KEY_EDAGEWEIGHT _T("EdageWeight") // 边线加粗 [dwg]
#define KEY_CENLWEIGHT _T("CenWeight") // 中线加粗 [dwg]
#define KEY_EL _T("El") // 标高
#define KEY_FITSRV _T("FitSrv") // 管件创建服务
#define KEY_IRECORD _T("IRecord") // 接口记录
// 通用设备公共键, 底层内部使用
#define KEY_INTF _T("Intf") // 接口定义 (vt),(pt),(Descr),L(D),W,nType
#define KEY_BODY _T("Body") // 体脚本
#define KEY_BOX _T("CUBE") // 长方体 面 L,W,H,(中心点pt),(x,y,z),(x,y,z),(x,y,z) //坐标系: XYZ向量
#define KEY_CONE _T("CONE") // 圆锥体 面 R,h,(中心点pt),(中心向量)
#define KEY_ECONE _T("ECONE") // 圆台 R,r,h,(中心点pt),(中心向量)
#define KEY_CYLN _T("CYLL") // 圆柱面 r,h,(中心点pt),(中心向量)
#define KEY_DUCTR _T("DRED") // 四边形台柱 L1,W1,L2,W2,H,(中心点pt),(x,y,z),(x,y,z),(x,y,z)标系: 向量
#define KEY_HELB _T("HELB") // 半椭球封头 R,h,(中心点pt),(中心向量)
#define KEY_HESP _T("HESP") // 球缺面封头 R,h,(中心点pt),(中心向量)
#define KEY_PT _T("PT") // 点
#define KEY_VT _T("VT") // 向量
//桥架属性键
#define KEY_B _T("B") //宽度
#define KEY_B1 _T("B1") //宽度1,对应桥架的尺寸 B1
#define KEY_B2 _T("B2") //宽度2,对应桥架的尺寸 B2
#define KEY_B3 _T("B3") //宽度3,对应桥架的尺寸 B3
#define KEY_B4 _T("B4") //宽度4,对应桥架的尺寸 B4
#define KEY_H _T("H") //高度 桥架高度
#define KEY_H1 _T("H1") //高度1 桥架高度尺寸 H1
#define KEY_H2 _T("H2") //高度2 桥架高度尺寸 H2
#define KEY_L _T("L") //长度
#define KEY_L1 _T("L1") //长度L1
#define KEY_L2 _T("L2") //长度L2
#define KEY_F _T("F") //折边
#define KEY_TYPE _T("Type") //型号
#define KEY_STYLE _T("Style") //0: 槽式 1:盘式 2: 梯式
#define KEY_NO _T("No") //桥架编号
#define KEY_ARC _T("Arc") //是否弧形桥架
#define KEY_BIGSPAN _T("BigSpan") //是否大跨距 lsd 2013-8-15
#define KEY_CONNECT_PT1 _T("connectPoint1") //接口点1 axc add 2013-11-27(弯通)
#define KEY_CONNECT_PT2 _T("connectPoint2") //接口点2(弯通)
#define KEY_CONNECT_PT3 _T("connectPoint3") //接口点3(三通)
#define KEY_CONNECT_PT4 _T("connectPoint4") //接口点4(四通)
#define KEY_BRPT1 _T("BrPt1") // 接口点1
#define KEY_BRPT2 _T("BrPt2") // 接口点2
#define KEY_BRPT3 _T("BrPt3") // 接口点3
#define KEY_BRPT4 _T("BrPt4") // 接口点4 1~4 三通,四通使用
#define KEY_INCLINE_FIT _T("InclineFit") // 斜向构件 add by wzh 2013/1/17
#define KEY_MAJBR _T("MajBr") //主分支向量
#define KEY_MINBR _T("MinBr") //分支向量
#define KEY_MINBR2 _T("MinBr2") //分支向量2 add by wzh 2012/10/26
#define KEY_MAJNOR _T("MajNor") //主开口方向
#define KEY_MINNOR _T("MinNor") //分支开口方向
#define KEY_MINNOR2 _T("MinNor2") //分支开口方向2 add by wzh 2012/10/26
#define KEY_TRANS_FIT _T("bTransFit") // 变径构件 add by wzh 2012/12/17
#define KEY_MAJBR_B _T("MajBrB") // 主分支宽度 add by wzh 2012/12/17
#define KEY_MINBR_B _T("MinBrB") // 次分支宽度 add by wzh 2012/12/17
#define KEY_MAJBR_L _T("MajBrL") // 主分支长度 add by wzh 2012/12/17
#define KEY_MINBR_L _T("MinBrL") // 次分支长度 add by wzh 2012/12/17
// 三通四通 斜向参量
#define ETEE_StartPoint _T("ETee_StartPoint") // 起点位置
#define ETEE_StartDir _T("ETee_StartDir") // 起点方向
#define ETEE_EndPoint _T("ETee_EndPoint") // 终点位置
#define ETEE_EndDir _T("ETee_EndDir") // 终点方向
#define ETEE_BranchPoint _T("ETee_BranchPoint") // 分支位置
#define ETEE_BranchDir _T("ETee_BranchDir") // 分支方向
#define ECROSS_StartPoint _T("ECross_StartPoint") // 起点位置
#define ECROSS_StartDir _T("ECross_StartDir") // 起点方向
#define ECROSS_EndPoint _T("ECross_EndPoint") // 终点位置
#define ECROSS_EndDir _T("ECross_EndDir") // 终点方向
#define ECROSS_BranchPoint _T("ECross_BranchPoint")// 分支位置
#define ECROSS_BranchDir _T("ECross_BranchDir") // 分支方向
//变径三通,四通使用的各个边的宽度 axc add 2014-08-15
#define KEY_DB1 _T("db1")
#define KEY_DB2 _T("db2")
#define KEY_DB3 _T("db3")
#define KEY_DB4 _T("db4")
//以下2个KEY只有在变径弯通(双弧度画法时)才有值
//变径弯通在双弧度画法带中心线时的中心线的弧度上的点 axc add 2014-09-22
#define KEY_DBLARC_ELBOW_CENTERLINE_PT _T("DblArc_Elbow_CenterLine_pt")
//双弧度变径弯通外弧上的点
#define KEY_DBLARC_ELBOW_CORARC_PT _T("DblArc_Elbow_CorArc_pt")
////////////////////
#define KEY_ANG _T("Angle") //角度
#define KEY_W _T("W") //宽度
#define KEY_R _T("R") //半径
#define KEY_CABST _T("CabSt") //桥架类型键 槽式 盘式 梯式
#define KEY_CABLE _T("TCable") //上华桥架设置键名
#define KEY_ELBOW _T("Elbow") //弯头专业类型
#define KEY_TEE _T("Tee") //三通专业类型
#define KEY_REDUCER _T("Reducer") //接头专业类型
#define KEY_CROSS _T("Cross") //四通
#define KEY_OFFSET _T("Offset") //乙字弯
#define KEY_FITCAB _T("CabFit") //桥架创建服务键名
#define KEY_SEGLEN _T("SegLen") //分段长度,[桥架]
#define KEY_SEGSHOW _T("SegShow") //是否显示分段
#define KEY_CORNER _T("Corner") //转角风格
#define KEY_COVER _T("Cover") //接口是否封盖
#define KEY_MAINDIR _T("Mndir") //主方向
#define KEY_BRDIR _T("Brdir") //支向量
#define KEY_CABGRIPCMD _T("CabGripCmd") //桥架夹点命令
#define KEY_DEEPCLONEFLAG _T("DClnFlag") //深层复制标志
#define KEY_IMSGDIC _T("TIMsg") // 接口传递消息
#define KEY_AMSGDIC _T("TAMsg") // 关系创建消息
#define KEY_UPDATEIMSGDIC _T("TUpdateIMsg") // 接口更新消息
#define MAXINF 20 //最大接口数量, 设备使用
// 桥架类型设置KEY
#define KEY_CABLESET _T("TelCableTraySet") // 扩展词典
#define KEY_SECSIZE _T("SecSize") // 分段尺寸 [dwg]
#define KEY_BORLINECOLOR _T("LineColor") // 边线颜色 [dwg]
#define KEY_LAYERDIST _T("LayerDist") // 层间距离
#define KEY_EDAGEWIDTH _T("EdageWidth") // 边线宽 [dwg]
#define KEY_CENLWIDTH _T("CenLineWidth") // 中线宽 [dwg]
#define KEY_SHOWCNTLINE _T("ShowCntLine") // 连接间连接线显示 [dwg]
#define KEY_MOVEASS _T("MoveAss") // 移动桥架关联拉伸
#define KEY_SHOWSEC _T("Section") // 是否显示分段 [dwg]
#define KEY_CABLE_HIDEEXTENT _T("CableHideExtent") // 遮挡扩展宽度 [dwg]
#define KEY_CABLWSTYLE _T("Style") // 桥架类型
#define KEY_OBJECT _T("TelCableTray") // 桥架注册表
#define KEY_SHOW_CLAPBOARD _T("ShowClapboard") // 显示隔板
#define KEY_HAVE_CLAPBOARD _T("HaveClapboard") // 有无隔板
#define KEY_SHOW_EXTEND _T("ShowExtend") // 显示遮挡延伸
#define KEY_CLAPBOARD_DATA _T("ClapboardData") // 隔板数据:隔板尺寸*通道码;隔板尺寸*通道码;
#define KEY_CLAPBOARD_DATA2 _T("ClapboardData2") // 隔板数据:隔板尺寸*通道码;隔板尺寸*通道码;
#define KEY_CLAPBOARD_MAINBR _T("ClapboardMainBr") // 隔板向量1
#define KEY_CLAPBOARD_SUBBR _T("ClapboardSubBr") // 隔板向量2
#define KEY_CLP_MAIN_KEY _T(";") // 多个隔板数据分隔符
#define KEY_CLP_SUB_KEY _T("*") // 隔板尺寸和通道号数据分隔符
#define KEY_CLP_COLORINDEX 3 // 桥架隔板颜色索引
#define KEY_EAPPTYPE _T("EAppType") // 桥架应用类型 ,对应 TDb::EAppType 类型
// 电缆沟
#define KEY_GSTYLE _T("GStyle") // 电缆沟拐角样式
#define KEY_GMODE _T("GMode") // 电缆沟样式
#define KEY_GDIST _T("GDist") // 电缆沟桩间距
#define KEY_GLEN _T("GLen") // 电缆沟的状长度
#define KEY_GTRAY_WIDTH _T("GTrayWidth") // 电缆沟托臂线宽
// 支吊架key值
#define KEY_BLOCK_2D _T("Block_2d") // 二维图块1
#define KEY_BLOCK_2D2 _T("Block_2d2") // 二维图块2
#define KEY_ROATEANGLE _T("Block_Roateangle") // 底座图块1旋转角度
#define KEY_ROATEANGLE2 _T("Block_Roateangle2") // 底座图块2旋转角度
#define KEY_PILLAR_START _T("Pillar_Start") // 立柱1起点
#define KEY_PILLAR_END _T("Pillar_End") // 立柱1终点
#define KEY_PILLAR_START2 _T("Pillar_Start2") // 立柱2起点
#define KEY_PILLAR_END2 _T("Pillar_End2") // 立柱2终点
#define KEY_PILLAR_W _T("Pillar_W") // 立柱截面宽度
#define KEY_PILLAR_L _T("Pillar_L") // 立柱截面长度
#define KEY_SUPPORT_PTLST _T("Support_ptlist") // 多层托臂起点集
#define KEY_BRACKET_STYLE _T("BracketStyle") // 吊架样式 1: 双臂 2: 单臂
#define KEY_ISDRAWPEDESTAL _T("IsDrawPedestal") // 是否绘制底座. mcl add 2011.3.1
#define KEY_BRACKETARMTYPE _T("BracketArmType") // 托壁类型. mcl add 2011.3.1
#define KEY_RECTARMWIDTH _T("RectArmWidth") // 矩形托壁宽度. mcl add 2011.3.1
#define KEY_DROW_HEIGHT _T("DRow_height") // 双排吊架标高集 bsl add 2011.11.9
#define KEY_DROW_START1 _T("DRow_Start1") // 双排吊架托臂2d起点1 bsl add 2011.11.10
#define KEY_DROW_START2 _T("DRow_Start2") // 双排吊架托臂2d起点2 bsl add 2011.11.10
#define KEY_DROW_LENGTH _T("DRow_Length") // 双排吊架 托臂长度 bsl add 2011.11.10
#define KEY_DROWSUPPORT_H _T("Support_ptlist_H") //双排托臂高度 add by axc 2013.7.8
//add by wx //支吊架参数
#define KEY_BRACKET_BRASTYLE _T("Bracket_BraStyle") //立柱类型
#define KEY_BRACKET_BRAMODEL _T("Bracket_BraModel") //立柱型号
#define KEY_BRACKET_SUPSTYLE _T("Bracket_SupStyle") //托臂类型
#define KEY_BRACKET_SUPMODEL _T("Bracket_SupModel") //托臂型号
#define KEY_BRACKET_NAME _T("Bracket_Name") //支吊架名称
//add end
// 暖通专业键名定义
#define KEY_FITHVAC _T("HvacFit") // 暖通创建服务键名
// 暖通专业数据KEY
#define EXTENDDATAID _T("THvac_") // 暖通动态扩展数据KEY前缀
#define THvac_DuctShowCover _T("THvac_ShowCover") // 风管 显示遮挡
#define THvac_DuctHideWidth _T("THvac_HideWidth") // 风管 遮挡打断间隙
#define THvac_DuctShowWidth _T("THvac_ShowWidth") // 是否加粗
//碰撞实体类型定义
#define KEY_CON_CABLETRAY 0x0002
#define KEY_CON_DUCT 0x0004
#define KEY_CON_PIPE 0x0008
#define KEY_CON_EQUM 0x0016
#define KEY_CON_BUILD 0x0020
#define KEY_USER_CALL 0x2000
#ifdef _TCHPIPEBASE_
#define THVACAPI __declspec(dllexport)
#else
#ifdef _TCHPIPEBASE_COM_
#define THVACAPI
#else
#define THVACAPI __declspec(dllimport)
#endif
#endif
extern THVACAPI AcGeTol g_globalTol;
// 临时改变比较精度
// class CTempTol,mcl changed 2010.04.19.跟建筑底层重名
class CTempTolPipe
{
public:
CTempTolPipe(double dTol)
: m_geDefTol(AcGeContext::gTol)
{
AcGeContext::gTol.setEqualPoint(dTol);
AcGeContext::gTol.setEqualVector(dTol);
}
~CTempTolPipe()
{
AcGeContext::gTol = m_geDefTol;
}
private:
AcGeTol m_geDefTol;
};
#include "THvac.h"
#endif