曲面延伸 非剪切曲面延伸 · LK_ExtendUntrimedSrf

沿指定边界延伸未修剪曲面(Surface),支持三种边界选取方式
📂 LK → Brep 📄 LK_ExtendUntrimedSrf.cs 🔄 右键动态菜单 📐 曲面处理

📖 功能概述

这是 LK_ExtendTrimedSrf 的姊妹组件——专门处理未修剪的曲面(Surface)的边界延伸。与修剪曲面版本的核心差异:输入输出均为 Surface 而非 Brep,底层使用 UntrimedSurfaceExtender 执行延伸计算。

⚠️ 曲面类型区分:
  • LK_ExtendTrimedSrf → 输入/输出为 Brep(修剪曲面)
  • LK_ExtendUntrimedSrf → 输入/输出为 Surface(非剪切曲面)
连接时请注意端口类型,混用会导致类型不匹配。

🔄 三种边界选择模式

右键点击组件,在菜单中选择切换模式:

🔢

模式 0:序号

输入边界索引号(0~3)
直接指定延伸哪条边

Param_Integer
📍

模式 1:点

输入一组参考点
自动选择最近边界

Param_Point
〰️

模式 2:曲线

输入一组参考曲线
自动选择最近边界

Param_Curve
💡 实现细节:切换模式时组件调用 Attributes?.ExpireLayout()ExpireSolution(true) 强制刷新,确保画布上的端口类型及时更新,无需手动刷新。

📥 输入参数

名称类型必填说明
非剪切 (S) Surface 必需 需要延伸的未修剪曲面(单个 Surface,非 Brep
延伸边 (E) Generic 必需 根据模式不同:
  • 序号模式:边界序号列表(0~3)
  • 点模式:参考点列表,自动匹配最近边界
  • 曲线模式:参考曲线列表,自动匹配最近边界
延伸距离 (D) Number 必需 延伸长度(默认 0,但必须输入正数才能正常工作)

📤 输出参数

名称类型说明
曲面 (S) Surface 延伸后的曲面(单个 Surface)

🔍 与"剪切曲面延伸"对比

✂️ LK_ExtendTrimedSrf

  • 输入/输出:Brep
  • 处理修剪曲面
  • 默认距离 10
  • 底层:TrimedSurfaceExtender

🟦 LK_ExtendUntrimedSrf

  • 输入/输出:Surface
  • 处理未修剪曲面
  • 默认距离 0(需手动输入正数)
  • 底层:UntrimedSurfaceExtender
💡 如何选择:如果你的曲面来自 Brep.Faces[0].DuplicateSurface() 或通过 Surface 运算器创建的,使用 UntrimedSrf;如果是已修剪的 Brep 面,使用 TrimedSrf

🧪 典型使用场景

⚠️ 注意事项

📋 组件信息

名称非剪切曲面延伸
英文名LK_ExtendUntrimedSrf (LK_ExtendSrf)
分类LK → Brep
基类RighrClickComponent
右键菜单序号 / 点 / 曲线
GUID(与 LK_ExtendTrimedSrf 不同,均为独立注册)