build123d build123d

3/5 🧩 软硬件结合 已发布
gumyr 872 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5
build123d

项目简介

A python CAD programming library


build123d 是一个基于 Python 的参量化边界表示(BREP)建模框架,专为 2D 和 3D CAD 设计。它构建在 Open Cascade 几何内核之上,提供了一个干净、完全符合 Python 风格的接口,能够精确创建适用于 3D 打印、CNC 加工、激光切割等制造流程的模型。

标签

项目特点

**无状态或最小状态**:根据模式不同,对象内部状态极少或无状态。
**显式的 1D、2D 和 3D 几何类**:具有明确定义的操作。
**可扩展性**:通过子类化和函数组合进行扩展,无需猴子补丁。
**符合标准的代码**:遵循 PEP 8、mypy、pylint,并提供丰富的类型提示。
**深度 Python 集成**:选择器作为列表,位置作为可迭代对象,以及自然的类型转换(如 `Solid(shell)`、`tuple(Vector)`)。
**运算符驱动建模**:使用 `obj += sub_obj`、`Plane.XZ * Pos(X=5) * Rectangle(1, 1)` 等运算符进行代数式、可读且可组合的设计逻辑。
**数据交换**:支持导出到 FreeCAD 和 SolidWorks 等主流 CAD 工具。

技术规格

编程语言 Python
支持 Python 版本 3.10, 3.11, 3.12, 3.13, 3.14
几何内核 Open Cascade
建模方式 代数模式 (Algebra Mode) 和构建器模式 (Builder Mode)
许可证 Apache 2.0
安装方式 pip install build123d

项目资源

能力画像

⚪ 记忆与知识检索: 1/5
🔵 逻辑推演: 4/5
⚪ 表达与交流: 1/5
⚪ 感知与观察: 1/5
🔵 数理与计算: 4/5
⚪ 动手与操作: 1/5
🔵 狂热与坚持: 4/5
🔵 创造与创新: 4/5

所需技能

🔧 **动手能力**:无需动手能力,这是一个纯软件项目。 💻 **编程能力**:需要扎实的 Python 编程基础,理解面向对象编程、运算符重载、上下文管理器等概念。 ⚡ **电子电路**:无需电子电路知识。

适用场景

**参数化 CAD 设计**:通过代码创建可重复使用和修改的 3D 模型。
**自动化设计流程**:将 CAD 设计集成到自动化工作流中。
**生成式设计**:使用算法生成复杂的几何形状。
**3D 打印模型创建**:创建和导出适用于 3D 打印的 STL 文件。
**CNC 加工和激光切割**:创建和导出适用于 CNC 和激光切割的 STEP 文件。
**CAD 软件开发**:作为构建更高级 CAD 工具或库的基础。