Files
envi-code/SourceCode/Code2026/inc/AecWPipe.h
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

391 lines
13 KiB
C

#ifndef __AECWPIPE_H__
#define __AECWPIPE_H__
typedef struct WPipe
{
enum PipeDim
{
kDN = 0, // 公称直径
kMedium = 1, // 介质
kPipeNo = 2, // 管号
kPipeGrade = 3, // 管道等级
kDxt = 4, // 外径x 壁厚
kEl = 5, // 标高
kType = 6, // 类型-->系统代号
kHeatIns = 7, // 保温伴热
kElbowRat = 8, // 弯头比率
kStandard = 9, // 标准
kMaterial = 10, // 材质
kZone = 11, // 区号
};
enum ElBase
{
kTop = 0,
kCen = 1,
kBom = 2,
kDefault = 3,
};
enum EReducer
{
eCen = 0,
eUp = 1,
eDown= 2,
};
enum ELookDir
{
eLookUnknown = 0,
eLookDown = 1,
eLookUp = 2,
};
enum DrawMode
{
kSingle = 1, //单线画法
kDouble = 2, //双线画法
};
enum PipeDraw
{
eToPreView = 1,
eToCreate = 2,
};
enum EApp
{
eButtweld = 0,
eVictaulic = 1, //气体,螺纹结构
eLined = 2,
eFiberglass = 3,
eSanitary = 4, //污水,承插结构
};
enum EDia
{
eDN = 1, //公称直径
eOD = 2, //外径
eID = 3, //内径
};
enum ECap
{
kEllipseEnd = 0, //椭圆封头
kPlaneEnd = 1, //平端封头
kBoltEnd = 2, //螺帽封头
};
typedef struct PipeParam
{
double m_dD; //画法采用的直径
EDia m_eD; //画法采用的直径
double m_dDN; //公称
double m_dOD; //外径
double m_dThick; //壁厚
double m_dEl; //标高
double m_dRRatio; //弯头曲率半径
//插焊或螺纹
int m_nConnectType; //0 焊接 1: 承插 2 螺纹
double m_dInterfaceL; //管件承插焊或螺纹 长度
double m_dInterfaceD; //管件承插焊或螺纹 接口直径
double m_dInterfaceD2; //管件承插焊或螺纹 接口直径 变径大端
double m_dInterfaceL2; //管件承插焊或螺纹 螺纹长度,变径大端
double m_dInsThk; //保温层厚
double m_dInterfaceL3; //变径长度
EReducer m_eRed; //如果是变径,变径类型
AcGeVector3d m_vtECCen; //变径偏心方向
AcGeVector3d m_vtDir; //管子末端方向
ElBase m_eElBase; //标高基准
TCHAR szPipeno[255]; //管号
TCHAR szMertial[255]; //材料
TCHAR szMertialFit[255]; //材料
TCHAR szZoneNo[255]; //区号m_sZoneNo
TCHAR szInsMtr[255]; //保温材质
TCHAR szDescr[255]; //描述
int m_nGroupID; //undo参数
}PIPEPARAM;
} KPIPE;
const LPCTSTR g_pszPipeDim[] = { _T("公称直径"),
_T("介质"),
_T("管号"),
_T("压力等级"),
_T("外径x 壁厚"),
_T("标高"),
_T("系统代号"),
_T("保温伴热"),
_T("弯头比率"),
_T("标准"),
_T("材质"),
_T("区号"),
NULL
};
const LPCTSTR g_pszPIDPipeDim[] = { _T("公称直径"),
_T("介质"),
_T("管号"),
_T("压力等级"),
_T("外径x 壁厚"),
_T("系统代号"),
_T("保温伴热"),
_T("标准"),
_T("材质"),
_T("区号"),
NULL
};
const LPCTSTR g_pszElTypeTxt = _T("标高类型");
const LPCTSTR g_pszElType[] = {_T("符号标注"),
_T("简写标注"),
_T("自定义标注"),
NULL
};
const LPCTSTR g_pszPipeDimTag[] = {
_T("DN"),
_T("Media"),
_T("No"),
_T("Level"),
_T("OD x Thick"),
_T("EL"),
_T("Descr"),
_T("InsTag"),
_T("Ratio"),
_T("Standard"),
_T("Material"),
_T("Zone"),
NULL
};
#define PIPE_D _T("D") //画法直径
#define PIPE_CONNECT _T("CNTYPE") //连接类型
#define PIPE_DSEL _T("ED") //画法采用的d类型
#define PIPE_DN _T("DN") //公称直径
#define PIPE_OD _T("OD") //外径
#define PIPE_PIDD _T("PIDD") //pid 画法的直径
#define PIPE_EDN _T("EDN") //变径END 端公称直径
#define PIPE_EOD _T("EOD") //变径END 端外径
#define PIPE_TDN _T("TDN") //三通 T 方向公称直径
#define PIPE_TOD _T("TOD") //三通 T 方向外径
#define PIPE_E _T("E") //L三通E
#define PIPE_M _T("M") //L,Y三通M
#define PIPE_B _T("B") //L,Y三通B
#define PIPE_WD _T("WD") //发兰盘外径
#define PIPE_N _T("FN") //法兰颈部直径
#define PIPE_INTERFACED _T("IFD") //接口直径,弯头的承插口直径
#define PIPE_INTERFACEL _T("IFL") //接口直径,弯头的承插口长度
#define PIPE_INTERFACED2 _T("IFD2") //接口直径,弯头的承插口直径
#define PIPE_INTERFACEL2 _T("IFL2") //接口直径,弯头的承插口长度
#define PIPE_THICK _T("Thick") //壁厚,或法兰总厚
#define PIPE_WTHICK _T("WThick") //法兰盘厚度
#define PIPE_EL _T("EL") //标高
#define PIPE_RATIO _T("Ratio") //弯头曲率
#define PIPE_ELBOWANG _T("EAng") //弯头角度,如90度弯头,计算方便保存
#define PIPE_INSTHICK _T("InsThick") //保温厚
#define PIPE_EAPP _T("EApp") //应用类型
#define PIPE_ZONE _T("Zone") //区号
#define PIPE_MEDIA _T("Media") //介质
#define PIPE_LEVEL _T("Level") //等级
#define PIPE_INSTAG _T("InsTag") //保温标志
#define PIPE_NO _T("No") //序号
#define PIPE_DESCR _T("Descr") //描述
#define PIPE_SPEC _T("Spec") //管子上标
#define PIPE_LINENO _T("LineNo") //管号
#define PIPE_ELBASE _T("ElBase") //标高基准
#define PIPE_DIR _T("Vector3d") //管线末端向量
#define PIPE_APP _T("WPipe") //扩展数据APP
#define PIPE_MATERIAL _T("Material") //材料
#define PIPE_MATERIALFT _T("MaterialFT") //材料
#define PIPE_DRAWMOD _T("Drawmod") //画法 单线 1 双线 2
#define PIPE_DRAWDIR _T("DrawDir") //画法 同 EDia
#define PIPE_OUTDLAY _T("OutDlay") //外线图层
#define PIPE_CENTLAY _T("CentLay") //中心线图层
#define PIPE_SINGLAY _T("SingLay") //单线图层
#define PIPE_ELBOWFLG _T("ElowFlg") //弯头的画法 0: 弧度画法 1:角度画法
#define PIPE_BWELDDOT _T("BWeldDot") //绘制单线是否有焊点
#define PIPE_BROKENNUM 10
#define PIPE_FITTING _T("Fitting") //类型
#define PIPE_REDUCER _T("Reducer") //变径
#define PIPE_REDECEN _T("RedEcen") //变径方向
#define PIPE_CAP _T("CAP") //堵头
#define PIPE_MTOALL _T("MtoAll") //管件,管子 详细信息
#define PIPE_FITTYPE _T("FitType") //管件类型
#define PIPE_BREAK _T("Break") //管子的断口省略尺寸
#define PIPE_HASBREAK _T("bBreak") //是否有断口标志
#define PIPE_BREAKPOS _T("BrekPos") //断口省略位置
#define PIPE_VALVE _T("VLVTYPE") //阀门类型
#define KEY_VLV2D _T("Vlv2d") //阀门2d示意
#define PIPE_GASKET _T("Gasket") //垫片的厚度
#define PIPE_GASKETM _T("GasketM") //垫片的材料
#define PIPE_PRESSURE _T("GasketP") //垫片的压力
#define PIPE_GASKETDSC _T("GasketR") //垫片的描述
#define GRIP_MAXNUM 24 // Rem:
#define PIPE_SYS _T("PIPE_PSYSTEM") //管道系统
// 暖通专业键名定义
#define KEY_FITWPIPE _T("AecWFit") //水管创建服务键名
#define DOC_TRADE _T("Trade") //应用行业
#define DOC_PROJECT _T("Project") //项目名称
#define DOC_SCALE _T("Scale") //出图比例
#define DOC_PLOTWIDTH _T("PlotWidth") //打印宽度
#define DOC_WELDDIA _T("WeldDia") //焊点直径
#define DOC_DPLOTWIDTH _T("DPlotWidth") //双线打印线宽
#define DOC_PIPEMINDIA _T("PipeMinDia") //管子最小直径[]
#define DOC_PIPEMAXDIA _T("PipeMaxDia") //管子最大直径
#define DOC_PERELBOWDIA _T("PerElbowDia") //垂直管子弯头半径
#define DOC_BREAKSPACE _T("BreakSpace") //交叉断线间距
#define DOC_UNIT _T("Unit") //单位
#define DOC_INCH _T("Inch") //英制
#define DOC_DIMTERM _T("DimTerm") //标注端符
#define DOC_DIMTXTH _T("DimTxtH") //标注文字高度
#define DOC_DIMTXTF _T("DimTxtF") //标注文字宽度系数
#define DOC_EQPTXTH _T("DimEqpTxtH") //设备标注文字高度
#define DOC_EQPTXTF _T("DimEqpTxtF") //设备标注文字宽度系数
#define DOC_STRTXTH _T("DimStrTxtH") //结构标注文字高度
#define DOC_STRTXTF _T("DimStrTxtF") //结构标注文字系数
#define DOC_SCRIPTT _T("ScriptT") //上标脚本
#define DOC_SCRIPTB _T("ScriptB") //下标脚本
#define DOC_ELTYPE _T("ElType") //标高设置
#define DOC_ELDESCR _T("ElDescr") //标高描述
#define DOC_DNPRE _T("DNPRE") //
#define DOC_DPRE _T("DPRE") //
#define DOC_ADPRE _T("ADPRE") //统一前缀
#define DOC_INSTRATAG _T("InsTra") //保温伴热标志 0: 无 1:保温 2:伴热+保温
#define DOC_INSDIM _T("InsDim") //保温标注
#define DOC_INSMATER _T("InsMat") //保温材料
#define DOC_INSSPEC _T("InsSpec") //保温规格
#define DOC_TRADESCR _T("TraDescr") //伴热描述
#define DOC_TRAMTOINF _T("TraMto") //伴热mto
#define DOC_PIPECOLOR _T("PCOLOR") //管线颜色
#define DOC_2DPIPE _T("Is2D") //是否2d
#define DOC_2DISO _T("ISO") //iso实体
#define PIPE_TEEMAINDIR _T("IsMain") //主方向
//PIDINIT
#define DOC_PIDTRADE _T("Trade") //应用行业
#define DOC_PIDPROJECT _T("Project") //项目名称
#define DOC_PIDUNIT _T("Unit") //单位
#define DOC_PIDINCH _T("Inch") //英制
#define DOC_PIDDIMTERM _T("DimTerm") //标注端符
#define DOC_PIDMPIPE1W _T("mPipe1W") //主管道线宽1
#define DOC_PIDMPIPE2W _T("mPipe2W") //主管道线宽2
#define DOC_PIDSPIPE1W _T("sPipe1W") //次管道线宽1
#define DOC_PIDSPIPE2W _T("sPipe2W") //次管道线宽2
#define DOC_PIDBSPACE _T("BreakSpace") //交叉断线间距
#define DOC_PIDINSRDN _T("InsrDN") //仪表泡直径
#define DOC_VALVESCALE _T("ValveScale") //阀门比例
#define DOC_EQUSCALE _T("EquScale") //设备比例
#define DOC_NODESCALE _T("NodeScale") //管嘴比例
#define DOC_CONSIGN _T("ConSign") //续接符号
#define DOC_LINEARSCALE _T("lScale") //线性比例
#define DOC_PIDDIMTXTH _T("DimTxtH") //标注文字高度
#define DOC_PIDDIMTXTF _T("DimTxtF") //标注文字宽度系数
#define DOC_PIDEQPTXTH _T("DimEqpTxtH") //设备标注文字高度
#define DOC_PIDEQPTXTF _T("DimEqpTxtF") //设备标注文字宽度系数
#define DOC_PIDVALVTXTH _T("DimStrTxtH") //阀门标注文字高度
#define DOC_PIDVALVTXTF _T("DimStrTxtF") //阀门标注文字系数
#define DOC_PIDVWITHDIM _T("vWithDim") //阀门插入标注
#define DOC_PIDEWITHDIM _T("eWithDim") //设备插入标注
#define DOC_PIDBARROW _T("BArrow") //大箭头
#define DOC_PIDMARROW _T("MArrow") //中箭头
#define DOC_PIDSARROW _T("LArrow") //小箭头
#define DOC_PIDSCRIPTT _T("ScriptT") //上标脚本
#define DOC_PIDSCRIPTB _T("ScriptB") //下标脚本
#define KEY_MSGPT _T("MsgPt")
#define KEY_EOPER _T("Eoper")
#define KEY_IDON _T("IdOn")
#define KEY_XFORM _T("Xform")
#define KEY_INDEX _T("Index")
#define KEY_MSG _T("Msg")
#define KEY_INTFPT _T("IntfPt")
#define KEY_INTFVT _T("IntfVt")
#define KEY_UPGRADE _T("UpGrade")
#define AEC_OPEN_BRACE_CHAR _T('{')
#define AEC_CLOSE_BRACE_CHAR _T('}')
#define AEC_OPEN_BRACE_STR _T("{")
#define AEC_CLOSE_BRACE_STR _T("}")
#define PIPE_EL _T("EL")
#define PIPE_TOP_EL _T("TOP.EL")
#define PIPE_CEN_EL _T("CEN.EL")
#define PIPE_BOM_EL _T("BOM.EL")
#define DIM_EL _T("\\U+2200")
#define DIM_TOP_EL _T("\\U+2201")
#define DIM_CEN_EL _T("\\U+2202")
#define DIM_BOM_EL _T("\\U+2203")
#define AEC_SEPARATOR_STR _T("|")
#define AEC_SEPARATOR_CHAR _T('|')
#define AEC_SUBTRACT_CHAR _T('-')
#define AEC_COLON_CHAR _T(':')
#define AEC_PIPEPARAM _T("PIPEPARAM")
// [CHAR]暖通风管夹点命令
#define KEY_PIPEGRIPCMD _T("WPipeAdd")
#define DOC_DIMTERM _T("DimTerm") //标注端符
#define DOC_DIMTXTH _T("DimTxtH") //标注文字高度
#define DOC_DIMTXTF _T("DimTxtF") //标注文字宽度系数
#define DOC_EQPTXTH _T("DimEqpTxtH") //设备标注文字高度
#define DOC_EQPTXTF _T("DimEqpTxtF") //设备标注文字宽度系数
#define DOC_STRTXTH _T("DimStrTxtH") //结构标注文字高度
#define DOC_STRTXTF _T("DimStrTxtF") //结构标注文字系数
#define DOC_SCRIPTT _T("ScriptT") //上标脚本
#define DOC_SCRIPTB _T("ScriptB") //下标脚本
#define DOC_ELTYPE _T("ElType") //标高设置
#define DOC_ELDESCR _T("ElDescr") //标高描述
//PIDINIT
#define DOC_PIDDIMTERM _T("DimTerm") //标注端符
#define DOC_PIDDIMTXTH _T("DimTxtH") //标注文字高度
#define DOC_PIDDIMTXTF _T("DimTxtF") //标注文字宽度系数
#define DOC_PIDEQPTXTH _T("DimEqpTxtH") //设备标注文字高度
#define DOC_PIDEQPTXTF _T("DimEqpTxtF") //设备标注文字宽度系数
#define DOC_PIDVALVTXTH _T("DimStrTxtH") //阀门标注文字高度
#define DOC_PIDVALVTXTF _T("DimStrTxtF") //阀门标注文字系数
#define DOC_PIDVWITHDIM _T("vWithDim") //阀门插入标注
#define DOC_PIDEWITHDIM _T("eWithDim") //设备插入标注
#define DOC_PIDBARROW _T("BArrow") //大箭头
#define DOC_PIDMARROW _T("MArrow") //中箭头
#define DOC_PIDSARROW _T("LArrow") //小箭头
#define DOC_PIDSCRIPTT _T("ScriptT") //上标脚本
#define DOC_PIDSCRIPTB _T("ScriptB") //下标脚本
#define KT_OPEN_BRACE_CHAR _T('{')
#define KT_CLOSE_BRACE_CHAR _T('}')
#define KT_OPEN_BRACE_STR _T("{")
#define KT_CLOSE_BRACE_STR _T("}")
#define KT_SEPARATOR_STR _T("|")
#define KT_SEPARATOR_CHAR _T('|')
#define KT_SUBTRACT_CHAR _T('-')
#define KT_COLON_CHAR _T(':')
#define KT_PIPEINIT _T("AECWPIPE")
#endif