数据驱动的 AutoCAD 电气系统图生成工具,输入 JSON,输出 DXF。
- 数据唯一真源(SSOT):所有信息存储在 JSON
- 参数覆盖:支持手动修改断路器、电缆选型
- 引用自动聚合:上级配电箱自动汇总下级箱的总负荷
- XData 标记:生成的图元带 ELEC_SYS 扩展数据,安全重绘
- 块定义清单:自动输出所需的所有块名称清单
pip install -r requirements.txtGUI 依赖单独安装:
pip install -r requirements-gui.txt# CLI 示例项目
python run.py
# GUI 模式
python main.py示例项目已包含完整结构(project.json、systems/、constraints/、parameter_overrides/),输出在 examples/sample_project/output/,包含 .dxf、.xlsx 和 report.json。
python -m pytest tests/ -v测试临时目录固定在项目内的 .test-run/,用于规避 Windows 系统临时目录权限问题。该目录不会进入版本管理。
系统提供两种方式获取所需的块定义清单:
# 输出到控制台
python list_required_blocks.py
# 输出到控制台并保存到 JSON 文件
python list_required_blocks.py --output my_blocks.json
# 使用自定义配置文件
python list_required_blocks.py --config my_fm_config.json每次运行 run.py 后,输出目录中会生成 report.json,其中包含:
required_blocks: 所有需要的块定义清单generated_systems: 每个系统的生成状态
- 运行
python list_required_blocks.py获取块清单 - 在 AutoCAD 中创建每个块,确保:
- 块名称与清单完全一致(区分大小写)
- 尺寸按建议的 width/height 设置
- 插入基点建议为 (0,0)
- 将这些块保存到 .dwg 模板文件中
- 引擎生成的 DXF 打开时块会正确显示
核心结构见 docs/PROJECT_MAP.md。CLAUDE.md 保留给 AI 协作上下文,INTEGRATION_README.md 和 REFACTOR_LOG.md 记录历史集成过程。