Commit Graph
10 Commits
Author SHA1 Message Date
company-desktop-computer 199abb989c 重构: AecDbObjXDataMap 解耦 UI,并统一 SetAt/数组实现
- AecXData 的 ctor/Free/CopyFrom 由头部 inline 移入 .cpp,结构体加
  AECDLLIMPEXP 导出,修复其它模块构造 AecXData 时的 LNK2019。
- 抽出私有 SetXData(pszKey, xdata) 助手,替换各 SetAt 中重复的
  find/Free+覆盖/insert 逻辑,并接管 xdata 所有权。
- 数组二进制块统一为 [kArrayMagic][元素类型][元素个数][数据...],元素类型
  复用 AecXData::EType;新增元素类型无需再加魔数或类型标签。
- 矩阵/数组魔数集中到 .cpp 顶部常量,便于维护。
- List(CListCtrl*, int) 改为 List(std::vector<CString>&):去掉 MFC 控件与
  nImage 依赖,每个元素输出 key/value 两项;CCKSXDlg::ListXDataMap 相应改为
  构造 vector 后填充两列列表。
2026-10-13 15:28:19 +08:00
company-desktop-computer 0467086e65 重构: AecXData 类型标签改用枚举 AecXData::EType
- 在 AecXData 内新增 enum EType,取值直接采用 wtypes.h 的 VARENUM(VT_*),
  与原实现逐位一致(nVt 会序列化进 DWG/DXF/XData,数值必须保持不变)。
- 各模块共 303 处 nVt 判断由裸 VT_* 改为 AecXData::kTypeXxx,涉及 18 个文件;
  仅调试打印用的字符串字面量保持原样。
- AecDbObjXDataMap.h 增加 #include <wtypes.h>(EType 引用 VT_*)。
2026-10-13 09:55:42 +08:00
company-desktop-computer 9d9077a03e fix(FlangeDlg): 修正 GetEndF1/GetEndF2 端面取值下标
- CFlangeDlg::GetEndF1/GetEndF2 原先取 m_arFlangeVals 下标 0/1(公称直径/法兰外径),
  端面型式实际在下标 5/6,导致 PIPE_FLANGF 被写成 DN 字符串
- 改为下标 5/6,且为空时回退 "FF"
2026-10-09 14:09:23 +08:00
gjm d107cfd47f 法兰双击改用法兰对话框:AecDbEwFitting 法兰双击弹出 CFlangeDlg 并回写法兰/垫片数据
- DBL_AEC_DBEWFIT:GetFittingType()==eFlange 时改用 CFlangeDlg(其余管件仍用 CGJSXDlg)
- 对话框初值取自实体专业数据(DN/压力/等级/项目/外径系列)
- 确定后回写 PIPE_WD/PIPE_WTHICK/PIPE_THICK/PIPE_N/PIPE_FLANGF 及垫片数据并重绘
- 沿用接口位移后收缩相邻管段逻辑
2026-10-09 10:31:04 +08:00
gjm cb38f5071b 新增 PCF→ISO 图(DWG)模块 PcfIso:P3D 一致的分图分层与图面样式
- 新增 PcfIso.h/.cpp:PCF 解析、等轴测投影(朝向与 Plant 3D 一致)、
  A3 图框/标题栏/材料表/切割表/尺寸/标高/焊口气泡/北针/跨图续接。
- 分图 4 级:模型连通性 → 断点(法兰/现场焊口) → 管段尺寸 → 图幅/拥塞。
- 新增命令 EW_PCFISO(单图)、EW_PCFISOSPLIT(分图,运行时选层级 1/2/3/4)。
- 注册到 EarthWorm.cpp、StdArx.h,并接入 cmakelists.txt。
- 附《PCF-ISO分图规则说明.md》。
2026-10-08 08:29:49 +08:00
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00
gjm 2b0c2055ff 新增管道ISO图PCF导出(EW_PCF/EW_PCFSPLIT),完善ITEM-CODE与WELD
CoreCommand 新增管道 ISO 图 PCF 导出功能:
- EW_PCF:整个管道系统导出为单个 PCF 文件。
- EW_PCFSPLIT:按管道系统/连通子网拆分为多张 PCF。

内容完善:
- 组件齐全:直管、管件(弯头/三通/变径/管帽等)、法兰、阀门、设备、支吊架。
- ITEM-CODE:按 等级+管径(+类型/类别) 查规格库,写出 ITEM-CODE/ITEM-DESCRIPTION/PIPING-SPEC;
  弯头按实测夹角区分 90°/45°,阀门按 VLVTYPE 映射类别过滤。
- WELD:两侧接口连接类型均为焊接(0) 时生成焊口;法兰螺栓面不计焊口。

构建:cmakelists.txt 加入 pcf.cpp;StdArx.h 声明 EW_PCF/EW_PCFSPLIT 命令。
2026-10-03 22:20:08 +08:00
gjm 8ac3fe9197 移除旧的 Visual Studio 工程文件,统一使用 CMake 构建
删除 527 个 *.vcxproj、1 个 *.vcxproj.filters、2 个旧版 *.vcproj
以及 8 个 shs_image*.sln 解决方案文件(保留 StartApp C# 工程)。
2026-09-28 15:53:36 +08:00
gjm 44197f41af 增加了post build 功能 需要的文件 2026-09-28 15:42:32 +08:00
gjm 345044cb46 初始化提交 2026-09-28 15:28:50 +08:00