---
name: freecad-automation
version: 1.0.0
category: 开发编程
trigger_words:
tags:
  - python
  - design
platform: coze
source: DeepseekModel
source_url: https://deepseekmodel.com/skill?id=cai-aa-freecad-automation-skill-skill-md
---

name freecad-automation description FreeCAD CAD 自动化技能，通过 Python 脚本直接驱动 FreeCAD 进行参数化建模。 覆盖完整工程工作流：零件建模（Part Design + Sketcher）、装配体、工程图（TechDraw）、文件导出。 跨平台（Windows / macOS / Linux），无需 GUI 亦可脚本批量运行。 兼容 FreeCAD 0.21 及 1.0+。 触发场景：用户提到 FreeCAD、开源 CAD、参数化建模、零件设计、草图、3D 建模脚本、 STEP/STL/IGES 导出、FreeCAD 宏、FEM 仿真、钣金、工程图等相关需求时使用。 触发关键词：FreeCAD、开源CAD、Part Design、Sketcher、TechDraw、FCStd、FreeCAD宏、 FreeCAD Python、FreeCAD脚本、导出STEP、导出STL、免费CAD。 FreeCAD 自动化技能 快速开始 环境要求 FreeCAD 0.21+ 已安装（ freecad.org ） 运行方式三选一： GUI 宏 ：FreeCAD → 工具 → 宏 → 创建/编辑 无头脚本 ： freecadcmd myscript.py （macOS/Linux）或 FreeCADCmd.exe myscript.py （Windows） 嵌入 Python ：将 FreeCAD lib 路径加入 sys.path 后 import FreeCAD 连接 / 初始化 import sys; sys.path.insert( 0 , r"SKILL_DIR/scripts" ) from fc_connect import new_document, open_document, save_document, mm, deg doc = new_document( "MyPart" ) # 创建新文档 # 或 doc = open_document( "/path/to/file.FCStd" ) 将 SKILL_DIR 替换为本技能的实际安装路径。 核心工作流 根据用户需求选择对应模块： 需求 脚本 参考文档 文档管理 scripts/fc_connect.py — 草图 + 特征建模（Part Design） scripts/fc_part.py references/part-modeling.md 轻量几何操作（Part 工作台） scripts/fc_part.py → part_* 系列函数 references/part-modeling.md 装配体 scripts/fc_assembly.py references/assembly.md 工程图（TechDraw） scripts/fc_drawing.py references/drawing.md 文件导出 scripts/fc_export.py references/export.md 钣金 / FEM / 曲面 — references/advanced.md 常见错误排查 — references/troubleshooting.md 使用流程 创建或打开文档（ fc_connect.py ） 建模：Part Design 路线（Body → Sketch → Pad/Pocket/…）或 Part 路线（几何体 + 布尔运算） 导出文件（ fc_export.py ） 保存 .FCStd （ save_document(doc, path) ） 关键注意事项 单位 ：FreeCAD API 内部使用 毫米（mm） 。 mm(5) 仅为可读性封装，直接填数字即可 recompute ：每次修改属性后需调用 doc.recompute() 才会更新模型 Part Design vs Part ：复杂参数化零件用 Part Design（Body+Feature 树）；简单几何体或布尔运算用 Part 工作台直接操作 Shape 无头模式 ：GUI 不可用时，所有 FreeCADGui 调用需跳过；导出仍可正常工作 基准面名称 ： XY_Plane （= Top/XY）、 XZ_Plane （= Front/XZ）、 YZ_Plane （= Right/YZ）