48 lines
1.9 KiB
Markdown
48 lines
1.9 KiB
Markdown
# 工程概览
|
||
|
||
## 是什么
|
||
|
||
- **产品**:上海华软 **Envi3D 2026(环境设计)** —— CAD/BIM **机电(MEP)插件套件**。
|
||
- **CMake 项目名**:`SHS_Code2026`(版本 1.0.0)。
|
||
- **形态**:ObjectARX / ZRX 插件(DLL),运行在 CAD 宿主内,含大量 MFC 界面与自定义图元实体。
|
||
|
||
## 目标平台
|
||
|
||
| 平台 | SDK | 版本 | 对应 CAD |
|
||
| --- | --- | --- | --- |
|
||
| AutoCAD | ObjectARX | R18 ~ R26 | CAD 2010 ~ 2027 |
|
||
| 中望CAD | ZRX | 2023 ~ 2026 | ZWCAD 2023 ~ 2026 |
|
||
|
||
通过编译宏区分:`ARX=<版本>` / `ZWCAD`;ZRX 产物后缀为 `.zrx`,ARX 为 `.arx`。
|
||
|
||
## 目录结构
|
||
|
||
```
|
||
envi-code/
|
||
├── Arx/ # AutoCAD ObjectARX SDK(R19.0~R26.0,已 gitignore)
|
||
├── SourceCode/
|
||
│ ├── dep_inc/ # 第三方头:modernGlue、rapidjson
|
||
│ ├── dep_lib/ # 第三方库:modernGlue、pub(含 sqlite3)
|
||
│ └── Code2026/ # ★ 主要代码
|
||
├── bin/, lib/ # 编译产物(按 SDK 版本分子目录,已 gitignore)
|
||
├── cmake_output/ # CMake 生成目录(已 gitignore)
|
||
├── autoCompile/ # 打包/加密/发布脚本(.bat/.py/.iss)
|
||
└── utility/ # generateEncryptionTable(授权加密表生成)
|
||
```
|
||
|
||
## 代码规模
|
||
|
||
- `SourceCode/Code2026/` 下 C++ 约 **2888 个 .cpp + 3104 个 .h**。
|
||
- `tg_shs/`(天正系列库)另约 2871 个 cpp/h。
|
||
- 大量 BMP/ICO 资源(540 bmp / 118 ico)。
|
||
|
||
## 分层架构
|
||
|
||
1. **实体层**:`CoreLibrary` 定义自定义图元 `AecDbXxx`(继承 AcDbEntity),是数据模型核心。
|
||
2. **命令层**:各 `*Cmd` 模块实现 MFC 对话框 + Jig 交互 + ARX 命令注册。
|
||
3. **链接关系**:业务模块 → `AecRxBase` / `CoreCommand` / `sqliteserver` / `MFCCtrl`。
|
||
|
||
## 仓库
|
||
|
||
- 远端:`ssh://gjm@47.93.46.28:1216/srv/git/new-start.git`(origin,主分支 `main`)。
|