build123d
build123d
3/5
🧩 软硬件结合
已发布
项目简介
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 工具或库的基础。