pointsection 指定点创建剖面 · BrepSection

LK 系统型材按照指定参考点在路径上创建剖面图
📂 LK → Brep 📄 BrepSection.cs 🗂️ 型材专用 tertiary

📖 功能概述

这是 LK 工具集中用于在型材路径上按指定参考点创建剖面的组件。适用于 LK 系统创建的型材模型,能够自动提取型材的路径、截面形状及相关几何元素(内部切割体、圆孔、沉头孔、机丝孔等),在用户指定的位置生成完整的剖面数据。

📥 输入参数

名称类型必填说明
型材 (B) Brep 必需 LK 系统创建的型材模型(单个 Brep)。必须包含存储在 Rhino 对象属性中的型材几何体元数据(路径、截面、切割体等)
指定点 (P) Point 必需 剖面位置参考点(列表)。每个点将在型材路径上映射到最近的截面位置

📤 输出参数

名称类型说明
剖面结果 (S) Generic 结构化剖面数据(TrimResults),包含剖面平面、截面形状、内部铣切曲面、圆孔/沉头孔/机丝孔的切割结果

🧠 核心流程

1
输入型材 + 参考点
2
提取几何元数据
3
计算垂直平面
4
布尔切割运算
5
输出结构化剖面

🔍 步骤 2 详细:几何元数据提取

组件通过 Rhino 的 ObjectAttributes 从型材模型中读取存储的 ArchivableDictionary 数据,提取以下几何元素:

🔧 步骤 3-4 详细:剖面计算

  1. 计算垂直平面:使用 CurveFrameCalculator 计算每个参考点在路径上的最近点,生成垂直于路径的平面
  2. 平面对齐:使用 PlaneAligner 将对齐平面旋转到与截面平面一致的朝向
  3. 截面变换:将截面形状从原始位置变换到目标剖面位置
  4. 布尔切割:使用 BooleanTrimCalculator 计算内部切割体、圆孔、沉头孔、机丝孔与截面的交集区域(即剖面中被切掉的部分)
  5. 对各类孔几何体执行碰撞检测,当孔体与截面不相交时,自动将其平移至剖面平面再进行切割

📦 输出数据结构

组件输出的是 TrimResults 结构化数据,包含以下字段:

字段类型说明
PlnPlane剖面所在的平面位置
ShapBrep剖面位置的截面形状
IncutsBrep[]内部铣切区域(在剖面中移除的部分)
HocutsBrep[]圆孔切割区域
CtcutsBrep[]沉头孔切割区域
JscutsBrep[]机丝孔切割区域
💡 配合组件:输出数据可与 剖面结果分解 (TrimresultCom / DT)剖面数据变换 (TrimresultTS / DTS) 配合使用,进行后续处理。

🧪 典型使用场景

⚠️ 注意事项

📋 组件信息

名称指定点创建剖面
英文名BrepSection (BS)
分类LK → Brep
Exposuretertiary(三级标签页可见)
基类GH_Component
GUIDA4332207-C6A9-4898-9206-61F0B6E86BD5