第06章:Part 工作台与几何内核
1. Part 工作台定位
Part 工作台直接面向 OpenCASCADE 提供的边界表示几何能力。它不是基于 Body 的特征建模,而是创建和操作 Shape:盒、球、圆柱、圆锥、线、面、壳、实体、布尔结果等。
Part 工作台适合:
- 快速创建基本体。
- 布尔融合、切割、相交。
- 修复和检查形状。
- 从边、线框、面构造实体。
- 处理导入的 STEP/IGES 几何。
- 用 Python 直接生成几何。
2. B-Rep 基础
OpenCASCADE 使用边界表示:实体由壳组成,壳由面组成,面由线框围成,线框由边组成,边由顶点限定。理解拓扑层级有助于排查错误:
- Vertex:点。
- Edge:边,可是直线、圆弧、曲线。
- Wire:有序边集合。
- Face:由闭合 Wire 形成的面。
- Shell:多个面形成的壳。
- Solid:封闭壳形成的实体。
- Compound:多个形状组合。
当布尔失败时,常见原因是面不封闭、边缝隙、非流形拓扑、自交或容差问题。
3. 基本体
Part 可创建盒、圆柱、球、圆锥、环面等。每个对象有尺寸、Placement 等属性。基本体常用于:
- 作为布尔运算工具体。
- 快速验证空间关系。
- 脚本生成批量模型。
- 与 PartDesign Body 组合使用。
如果目标是完整参数化零件,优先用 PartDesign;如果目标是几何运算或导入体处理,Part 更直接。
4. 布尔运算
布尔操作包括:
- Fuse:融合。
- Cut:切除。
- Common:交集。
- Section:截交曲线。
- Slice:切片。
- Fragments:分割并保留片段。
布尔稳定性建议:
- 避免两个面完全共面但只部分重叠。
- 避免工具体刚好与目标体相切。
- 给切割体留出穿透余量。
- 对导入模型先检查 Shape。
- 布尔后必要时执行 refine 去除多余分割边,但要注意下游引用变化。
5. Shape 检查与修复
Part 工作台提供检查几何、缝合、创建实体、转换为实体等工具。导入 STEP 或 IGES 后,如果后续布尔失败,应先:
- 检查形状有效性。
- 查找开放边和非流形区域。
- 尝试缝合面。
- 将封闭 Shell 转换为 Solid。
- 降低下游特征对具体边编号的依赖。
6. Part 与 PartDesign 协作
两者可以协作,但要保持边界清晰:
- PartDesign Body 的最终 Shape 可用于 Part 布尔。
- Part 结果可作为 BaseFeature 引入 Body。
- ShapeBinder/SubShapeBinder 可引用外部几何。
- 不要在没有规划的情况下交叉引用太多对象。
当模型需要可编辑历史,优先 PartDesign;当模型来自外部或需要几何算法处理,优先 Part。
7. Python 中的 Part
Part 模块是脚本建模的重要入口。常见思路:
- 创建几何:点、线、圆、边、线框、面。
- 创建基本体:box、cylinder、sphere。
- 执行布尔:fuse、cut、common。
- 设置对象 Shape 并加入文档。
- 重计算后导出。
脚本建模适合规则化模型,如参数化支架、阵列零件、管道、格栅、夹具和批量导出。