Ubuntu 上适合让 Codex 生成 STL 模型的开源工具

如果想让 Codex 这类 AI 工具“用代码画 STL”,在 Ubuntu 里最适合选择那些脚本化、参数化、命令行友好的开源建模工具。

相比传统鼠标交互式 CAD,代码建模更适合 AI:模型可以被文本描述、版本控制、反复修改,也方便自动导出 STL。

下面整理几个适合 Ubuntu 环境的开源方案。


1. OpenSCAD:最推荐的入门选择

官网:https://openscad.org/

OpenSCAD 是一个典型的“代码建模”工具。它不是用鼠标拖拽模型,而是用类似脚本的方式描述几何体。

例如:

difference() {
cube([60, 40, 20], center=true);
cylinder(h=30, r=8, center=true);
}

这段代码表示:

  • 先创建一个长方体;
  • 再用圆柱从中间挖一个孔;
  • 最终得到一个带孔的零件。

OpenSCAD 非常适合让 Codex 生成,因为它语法简单、结构清楚、修改成本低。

优点

  • 完全开源;
  • Ubuntu 安装方便;
  • 很适合 AI 生成和修改;
  • 适合支架、外壳、孔位板、连接件等机械零件;
  • 支持参数化建模;
  • 可以命令行导出 STL。

安装

sudo apt install openscad

命令行导出 STL

openscad -o model.stl model.scad

如果目标是“让 Codex 快速画一个可 3D 打印的零件”,OpenSCAD 是最稳妥的首选。


2. CadQuery:Python 版参数化 CAD

官网:https://cadquery.readthedocs.io/

CadQuery 是一个用 Python 写 CAD 模型的工具。它比 OpenSCAD 更接近现代工程 CAD 的思路,适合做更复杂的机械结构。

示例:

import cadquery as cq

result = (
cq.Workplane("XY")
.box(60, 40, 20)
.faces(">Z")
.workplane()
.hole(8)
)

cq.exporters.export(result, "model.stl")

优点

  • 使用 Python,Codex 很擅长生成;
  • 适合工程零件;
  • 支持拉伸、倒角、圆角、布尔运算等操作;
  • 可以导出 STL、STEP 等格式;
  • 适合后续做更复杂的机器人结构件。

缺点

  • 环境比 OpenSCAD 稍复杂;
  • 对初学者来说,没有 OpenSCAD 那么直观。

推荐用 conda 或 mamba 安装:

conda install -c conda-forge cadquery

如果后续要做机械臂连接件、四足机器人支架、传感器安装座等比较工程化的结构,CadQuery 很值得学。


3. FreeCAD Python API:功能最完整

官网:https://www.freecad.org/

FreeCAD 是完整的开源 CAD 软件,也可以通过 Python 脚本控制建模,并导出 STL。

它适合以下情况:

  • 模型比较复杂;
  • 需要 GUI 检查和手动修改;
  • 需要 STEP 文件;
  • 需要草图、约束、装配等 CAD 功能;
  • 后续可能人工继续编辑。

Ubuntu 安装:

sudo apt install freecad

FreeCAD 的能力很强,但 Python API 相对啰嗦。Codex 可以写 FreeCAD 脚本,不过调试成本通常比 OpenSCAD 和 CadQuery 高。

所以它更适合作为“检查、编辑、转换格式”的工具,而不一定是 AI 直接生成模型的第一选择。


4. Blender Python:适合艺术模型,不适合精密机械

官网:https://www.blender.org/

Blender 也可以用 Python 创建模型并导出 STL。

它更适合:

  • 外观件;
  • 装饰件;
  • 有机曲面;
  • 角色或雕塑类模型;
  • 非精密 3D 打印模型。

不太适合:

  • 精确孔位;
  • 工程尺寸;
  • 参数化机械结构;
  • 需要严格装配关系的零件。

安装:

sudo apt install blender

命令行运行脚本:

blender --background --python script.py

如果目标是机器人结构件、安装座、连接板,通常不建议优先用 Blender。它更适合外观和艺术方向。


5. Build123d:较新的 Python CAD 选择

项目地址:https://github.com/gumyr/build123d

Build123d 是一个较新的 Python 参数化 CAD 库,风格比 CadQuery 更现代一些。

优点

  • Python 写法清晰;
  • 适合 AI 生成;
  • 面向工程建模;
  • 可以做参数化零件。

缺点

  • 社区和资料比 OpenSCAD、FreeCAD 少;
  • 遇到问题时,搜索到的现成答案可能没那么多。

如果已经熟悉 Python,并且愿意尝试新工具,可以关注 Build123d。


推荐选择

如果按使用场景来选,可以这样判断:

需求 推荐工具
快速让 Codex 生成 STL OpenSCAD
做机械零件、机器人结构件 CadQuery / Build123d
需要 GUI 检查和后续手动编辑 FreeCAD
做艺术模型、外观件、有机曲面 Blender Python

我个人更推荐的组合是:

OpenSCAD + CadQuery + FreeCAD

日常流程可以是:

Codex 生成 .scad 或 .py
↓
本地渲染 / 导出 STL
↓
用 FreeCAD 或切片软件检查模型
↓
3D 打印

简单结论

如果只是想在 Ubuntu 上让 Codex 帮你“画 STL”,建议先从 OpenSCAD 开始。

它简单、稳定、命令行友好,非常适合 AI 生成和迭代。

如果后面开始做更复杂的机器人结构件,再逐步引入 CadQuery 或 Build123d。而 FreeCAD 可以作为检查、修改和格式转换的辅助工具。

知识共享许可协议