该组件根据LK系统型材的截面信息,沿截面外轮廓的包围矩形框生成纯净的包围盒实体(忽略内部一切开孔和切割特征)。
它的核心作用是从型材的异构截面中提取"最小外接矩形",然后将这个矩形沿型材路径拉伸或扫掠,从而得到一个不含内部细节的纯净外轮廓实体。这在计算型材的净尺寸、包裹体积、加工余量等场景中非常有用。
该组件使用 ButtonComponent(双状态按钮),通过右键菜单可在两种端部处理模式间切换:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| 型材 | Brep | 必填 | 需要生成包围盒的LK系统型材模型。必须包含标准UserDictionary属性:拉伸-路径、拉伸-截面、拉伸-截面pln、起端切面、终端切面。 |
| 名称 | 类型 | 说明 |
|---|---|---|
| 包围盒 | Brep | 根据截面外包围矩形框生成的型材包围盒实体。注意:输出为树形,因为弯曲型材可能产生多段结果。树形 |
拉伸-截面(Brep)和 拉伸-截面pln(Plane)BoundingBoxCalculator 以截面平面为参考坐标系,计算截面的包围矩形ToNurbsCurve())Brep.CreatePlanarBreps() 将矩形曲线转为平面Brep拉伸-路径(Curve)IGH_GeometricGooSuperExtrude 将矩形面片沿路径进行扫掠这是组件的核心差异化功能,通过右键菜单按钮切换两种模式:
BrepLength.BrepIntersectionAnalyzer(与BrepLength组件共享同一个内部类)分析扫掠体与两个切面的相交关系:ParallelBrepBooleanDifference 用两个垂直平面对扫掠体进行平面切割ParallelBrepBooleanDifference 用这两个切面Brep对扫掠体进行布尔差运算| 场景 | 详细说明 |
|---|---|
| 型材净体积提取 | 从型材中去除所有开孔和内部切割特征,仅保留外轮廓包围盒,用于计算型材的最小包裹体积(如包装设计、运输体积估算)。 |
| 弯曲型材包裹 | 对于弧形型材,SuperExtrude自动沿弯曲路径扫掠,生成的包围盒准确跟随路径的弯曲变化。这是纯边界框计算(BoundingBox)无法做到的。 |
| 端部处理验证 | 切换右键菜单中的"端部切平"和"端部铣切"模式,对比两种端部处理方式的视觉效果,确认型材端部的切割方案。 |
| CNC加工参考 | 端部切平模式下生成的平整端面包围盒可作为CNC加工路径的参考边界,辅助计算加工余量和刀具路径。 |
ButtonComponent 的两个状态按钮,右键菜单选择后状态会保存到.gh文件中。切换模式无需重新连接数据。btnState1 为false时是端部铣切模式。如果你的型材没有端部铣切特征,建议切换到"端部切平"模式获得更规整的结果。BrepIntersectionAnalyzer 内部类(通过 using static 引入),两者的切割面分析逻辑完全一致。| 名称 | 型材包围盒 |
| 英文名 | PB |
| 分类 | LK → Util |
| Exposure | quinary(五级) |
| 按钮模式1 | 端部切平 |
| 按钮模式2 | 端部铣切 |
| 基类 | ButtonComponent(双状态按钮) |
| 文件 | ProfileBox.cs |
| GUID | {57877129-1C48-4CD6-BBD7-E6C821CF739A} |