跳转到使用指南
FreeCAD Scripts作者 GitHub Awesome Copilot Contributors

FreeCAD Scripts Skill.

将带尺寸的建模任务转化为可检查、可调整的 FreeCAD 对象。

  • 3D 设计
  • CAD
  • Python
来源审阅 · FreeCAD ScriptsSKILL.md
任务 3D 设计 产出 • 一个 FreeCAD Python 宏或脚本化参数对象 • 一个包含已命名实体、草图或自定义属性的文档 • 按要求导出的 STEP、STL、IGES 或 OBJ 文件 开始之前 需要 FreeCAD 及其自带的 Python;GUI 工作还会用到自带的 PySide,场景图工作则使用 Pivy。
编辑摘要 · 来源审阅于 2026-10-07 · 并非生成的示例

01 功能说明

用 Python 构建参数化 CAD 模型

一份 FreeCAD Python 参考,涵盖文档对象、参数化几何、草图、应用界面和导出工作流。

基于来源的工作流并非执行基准测试

工作方式

FreeCAD Scripts 引导代理使用 FreeCAD 的内嵌 Python 环境,而不是把 CAD 模型当作普通网格。其涵盖基于 OpenCASCADE 的 Part 几何、Mesh 操作、约束草图,以及通过属性重建形状的 FeaturePython 对象。因此,它适用于可重复制作的零件、小型建模工具和对尺寸有要求的 CAD 自动化。

来源还区分了模型逻辑与应用界面工作。PySide 对话框、任务面板和 Coin3D 场景图元素需要 GUI,而可复用的几何代码可以加以保护以便无界面运行。一个好的起步任务是带有明确导出要求的单个参数化零件;若要求整个工作台,则需要承担明显更多的集成工作。

预期交付物

  • 一个 FreeCAD Python 宏或脚本化参数对象
  • 一个包含已命名实体、草图或自定义属性的文档
  • 按要求导出的 STEP、STL、IGES 或 OBJ 文件
查看示例需求

从需求到审阅

  1. 01
    确定单位与几何

    描述尺寸、坐标位置以及预期的实体或网格表示。来源默认将未指定单位的长度视为毫米;明确给出的长度单位会转换为 FreeCAD 内部使用的毫米。

  2. 02
    构建文档模型

    创建已命名的对象以及必要的几何或约束。若希望可编辑属性驱动后续重新计算,请使用 FeaturePython。

  3. 03
    重新计算并验证

    修改后重新计算,检查形状属性,并验证所选的导出结果。如果宏还需在无窗口环境下运行,请保护 GUI 导入。

02 适用场景

适用场景

需要 FreeCAD 及其自带的 Python;GUI 工作还会用到自带的 PySide,场景图工作则使用 Pivy。

适合的情况

  • 可调整的零件适用于长度、宽度或其他设计尺寸应保持为显式属性、而非隐藏常量的零件。
  • 重复性 CAD 操作适合用于阵列、布尔运算、网格转换和导出所选对象的宏。

需要核查的限制

  • 特定于应用的 PythonFreeCAD 模块不是普通的 Python 标准库模块。在 FreeCAD 之外编写脚本并不能验证其运行时行为。
  • 模型验证仍然必要该技能涵盖几何构建,但不保证可制造性、结构安全性或加工适用性。

需要提供的输入

  • 带尺寸的需求提供尺寸、与任务相关的公差,以及图纸所用的单位。
  • 可编辑参数指明应成为文档属性的数值,以及应保持约束的关系。
  • 运行环境与导出说明 FreeCAD 版本、GUI 或无界面模式,以及下游所需的文件格式。

03 关键决策

关键决策

  1. 参数化而非静态

    FeaturePython 将零件的输入属性与生成的形状分开,因此之后修改尺寸即可触发重建。

  2. 几何与界面分离

    来源中的 GUI 保护有助于避免一个有用的建模宏意外依赖已打开的视图或对话框。

04 示例任务

试用一个聚焦的需求

下面的示例需求尚未经过测试。使用前请检查该技能的设置。

检查设置

请让代理可以访问该技能的参考文件。在 FreeCAD 中运行生成的宏之前,先检查它们会如何修改文档。

上游源文件
https://github.com/github/awesome-copilot/blob/3a685010a7afdc0dbd4c83b7fbda6c316aa516e5/skills/freecad-scripts/SKILL.md

需要 FreeCAD 及其自带的 Python;GUI 工作还会用到自带的 PySide,场景图工作则使用 Pivy。

从一个交付物开始

运行该技能前,请根据需要调整此需求中的范围、来源材料和约束。

示例需求
使用 freecad-scripts 编写一个 FreeCAD 宏,用于创建带四个均匀内缩孔的矩形安装板。在构建之前,先询问板的尺寸、孔径和内缩距离。将这些值作为可编辑属性公开,为生成的对象命名,修改后重新计算,并导出一份 STEP 副本。将几何代码与可选的 GUI 显示分开,并且不要声称该零件已可用于制造。

检查结果

对照以下可观察的标准检查实际输出。

  • 修改已声明的尺寸后,会重新计算出预期的几何。
  • 单位和对象位置与所提供的图纸一致。
  • 导出的文件包含所要求的实体,而不是意外的空对象或不完整对象。

OpenDesign 为编码代理提供本地设计工作区。此列表并不表示该技能已内置,也不表示其外部工具、凭据和软件依赖已包含在内。

05 来源与许可证

来源与许可证

本页描述的是下方链接所指向的固定来源修订版本。上游的行为和要求可能会变化。

许可证
MIT
已审阅的快照
2026-10-07 · 3a685010a7af
编辑来源摘要
一份 FreeCAD Python 参考,涵盖文档对象、参数化几何、草图、应用界面和导出工作流。

由 OpenDesign 根据所链接的来源撰写的原创摘要。仓库星标数是带日期的热度信号,并非技能使用量或质量评分。

06 开始前的问题

开始之前的问题

它能创建可编辑的参数化对象吗?

能。来源记录了 FeaturePython 代理、带类型的属性,以及在文档重新计算期间调用的 execute 方法。

STL 与 STEP 是同样的输出吗?

不是。该工作流区分三角化网格与 Part 实体。请根据下一个工具所需的表示形式进行选择,不要把这些导出格式视为可互换。

每个示例都能在无界面模式下运行吗?

不能。对话框、视图提供者和场景图工作依赖 GUI。无界面运行的宏必须保护或省略这些操作。

OpenDesign

为下一轮设计迭代留出空间。

将需求、来源材料和设计工作集中在本地工作区中。在将该技能加入工作流之前,请先检查其自身的设置。

上游源文件
https://github.com/github/awesome-copilot/blob/3a685010a7afdc0dbd4c83b7fbda6c316aa516e5/skills/freecad-scripts/SKILL.md