Back to skills
extension
Category: Data & AnalyticsNo API key required

CAD 图纸读取与方案统计 / CAD File Reader

Read AutoCAD DWG/DXF/DWT files directly and extract layers, entity counts, text, blocks, block references, and header metadata. Use when Codex is asked to read, inspect, summarize, search, or understand a CAD drawing file, especially construction or architecture drawings.

personAuthor: user_43faedd6hubcommunity

CAD File Reader(CAD 图纸读取与方案统计)

一个给 AI 编码助手(Codex / Claude Code / 兼容 Agent)使用的工具型 Skill:直接读取 DWG/DXF/DWT,不需要安装 CAD 软件;支持低内存快速扫描、梁板柱统计、钢筋型号汇总、混凝土方量粗算、建筑做法提取、图纸关键词定位,以及 DWG→DXF 转换。

身份透明:本包是 AI 编码助手调用的工具型 Skill,不扮演任何人物或外部产品身份;被询问时应如实说明自己是 AI 助手。

能力

  • 直接读取 DWG / DXF / DWT,支持单文件、目录和递归扫描。
  • 低内存快速路径:只解文字、图层、块名,适合几十 MB 大图。
  • 构件识别:梁、板、柱、墙、基础、门窗。
  • 梁:类型、根数、跨数、悬挑、截面、箍筋、纵筋、梁长估算、梁砼估算。
  • 柱:类型、根数、截面、箍筋、纵筋、柱高、柱砼估算。
  • 板:轴线面积、板厚、板砼估算。
  • 钢筋型号汇总:-rebar.csv
  • 建筑做法提取:屋面、楼面、地面、墙面、顶棚、防水、保温等,-practices.csv
  • 图纸检索:--search / --filter,输出文件、图框、图层、坐标。
  • DWG→DXF:内置 ezdwg 0.12.6,不需要 LibreDWG / ODA。
  • SVG 预览:read_cad.sh --render
  • 内存看门狗:大图超限自动终止,防止解析器把机器拖到卡死。

安装(GitHub 完整包)

cp -R cad-file-reader "$CODEX_HOME/skills/"

# Python 环境需要 Python 3.10+;Codex bundled runtime 自带 numpy
# 普通 Python 环境缺少 numpy 时执行:
python3 -m pip install numpy

GitHub 完整包已内置 vendor/(ezdwg、ezdxf、fontTools、pyparsing),不需要额外下载 CAD 解析依赖。

安装(SkillHub 轻量包)

SkillHub 版为纯文本合规包,不含 vendor/ 二进制/编译文件。安装后先执行一次:

cd "$CODEX_HOME/skills/cad-file-reader"
scripts/install_vendor.sh

该命令从 GitHub Release 下载与完整包一致的 vendor/ 依赖。

版本差异:GitHub 完整包解压即用;SkillHub 轻量包多一步下载 vendor/,安装后功能一致。

使用

cd "$CODEX_HOME/skills/cad-file-reader"

# 方案统计:梁/板/柱 + 配筋 + 混凝土方量 + 建筑做法 + 规格表
scripts/cad_scan.sh 图纸.dwg --only 梁,板,柱 \
  --with-mtext --with-geom --cluster 1500 \
  --axis-grid "7x8000,5x7500" --thk-mm 120 --col-height-mm 3000 \
  --spec-table --format all -o 结果/结构统计

# 图纸检索:查说明、查规格、查编号
scripts/cad_scan.sh 图纸.dwg --search "屋面做法|C30|KZ1"

# DWG 转 DXF
scripts/convert_dwg.sh 图纸.dwg --out 图纸.dxf

# 全量读取并生成 SVG 预览
scripts/read_cad.sh 图纸.dxf --json --render --render-dir 预览

输出文件

  • -md:人类可读统计报告。
  • .json:结构化结果,供后续计算。
  • .csv:构件明细。
  • -rebar.csv:钢筋型号汇总。
  • -practices.csv:建筑做法清单。
  • -concrete.csv:梁砼、柱砼、板砼、合计。
  • -spec.csv:混凝土等级、板厚、保护层、抗震等级。
  • -axis.csv:轴线面积与板砼估算。

实测

2026-08-31 本机样例:

  • 3 种梁:梁长 12/12/10m,梁砼合计 5.12m³。
  • 柱:KZ1 500×500×3000mm 两处、KZ2 600×600×3000mm 一处,柱砼 2.58m³。
  • 板:轴线面积 360m²、板厚 120mm,板砼 43.2m³。
  • 建筑做法:屋面、楼面、地面、墙面识别正常。
  • 检索:同一 KZ1 的两个坐标位置都能列出。

限制

  • 识别基于图纸文字规则,不是结构拓扑;天正自定义实体、丢字符字体可能识别不到。
  • 梁长、根数、方量均为估算,不替代翻样和正式算量。
  • 柱高通常不在平面图中,需要按实际层高传 --col-height-mm
  • 板砼按轴线面积×板厚,不扣柱、墙、洞口。
  • 钢筋只统计型号/根数,不计算重量和下料长度。
  • 建筑说明常用 MTEXT,检索和做法提取需加 --with-mtext

许可与隐私

  • 代码与文档:CC BY-NC-SA 4.0,见 LICENSE.md
  • 第三方依赖:见 NOTICE.md
  • 图纸字节不上传,所有解析在本机完成。

反馈

问题和使用建议请在平台评论区留言,注明系统、Python 版本、DWG/DXF 版本和命令参数。