如果想让 Codex 这类 AI 工具“用代码画 STL”,在 Ubuntu 里最适合选择那些脚本化、参数化、命令行友好的开源建模工具。
相比传统鼠标交互式 CAD,代码建模更适合 AI:模型可以被文本描述、版本控制、反复修改,也方便自动导出 STL。
下面整理几个适合 Ubuntu 环境的开源方案。
1. OpenSCAD:最推荐的入门选择
OpenSCAD 是一个典型的“代码建模”工具。它不是用鼠标拖拽模型,而是用类似脚本的方式描述几何体。
例如:
difference() { |
这段代码表示:
- 先创建一个长方体;
- 再用圆柱从中间挖一个孔;
- 最终得到一个带孔的零件。
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 |
优点
- 使用 Python,Codex 很擅长生成;
- 适合工程零件;
- 支持拉伸、倒角、圆角、布尔运算等操作;
- 可以导出 STL、STEP 等格式;
- 适合后续做更复杂的机器人结构件。
缺点
- 环境比 OpenSCAD 稍复杂;
- 对初学者来说,没有 OpenSCAD 那么直观。
推荐用 conda 或 mamba 安装:
conda install -c conda-forge cadquery |
如果后续要做机械臂连接件、四足机器人支架、传感器安装座等比较工程化的结构,CadQuery 很值得学。
3. FreeCAD Python API:功能最完整
FreeCAD 是完整的开源 CAD 软件,也可以通过 Python 脚本控制建模,并导出 STL。
它适合以下情况:
- 模型比较复杂;
- 需要 GUI 检查和手动修改;
- 需要 STEP 文件;
- 需要草图、约束、装配等 CAD 功能;
- 后续可能人工继续编辑。
Ubuntu 安装:
sudo apt install freecad |
FreeCAD 的能力很强,但 Python API 相对啰嗦。Codex 可以写 FreeCAD 脚本,不过调试成本通常比 OpenSCAD 和 CadQuery 高。
所以它更适合作为“检查、编辑、转换格式”的工具,而不一定是 AI 直接生成模型的第一选择。
4. Blender Python:适合艺术模型,不适合精密机械
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 |
简单结论
如果只是想在 Ubuntu 上让 Codex 帮你“画 STL”,建议先从 OpenSCAD 开始。
它简单、稳定、命令行友好,非常适合 AI 生成和迭代。
如果后面开始做更复杂的机器人结构件,再逐步引入 CadQuery 或 Build123d。而 FreeCAD 可以作为检查、修改和格式转换的辅助工具。