🧠 核心算法详解
一、PlaneToPlane 变换
与 UtilTS 组件使用相同机制:
Transform.PlaneToPlane(基准平面, 目标平面)
标准件先复制一份,然后施加此变换,从基准位置移动到目标位置。
输出的Transform也可供其他组件(如ObjTS)使用。
二、模号优先级
模号的确定遵循以下优先级:
优先级1:输入"模号"参数不为"-" → 使用输入值
优先级2:输入"模号"参数为"-"且原物件UserDictionary包含"模号"键 → 使用原物件模号
优先级3:两者都不是 → 模号保持为"-"
如果最终模号为"-",输出属性列表中会移除"模号"键,不输出空值。
三、pln 生成
标准件的pln不是直接从输入获取,而是将目标平面绕其Y轴旋转90度生成:
pln = new Plane(目标平面);
pln.Rotate(0.5 × π, pln.YAxis);
这个旋转后的平面作为标准件属性中存储的"pln"值,适用于大多数连接件的定位方向。
四、图层与信息集
图层路径: 模型::{单元号}::加工件::{名称}
与型材的 模型::{单元号}::{类型}::... 不同,标准件的图层路径中固定包含"加工件"层级,与型材/板材区分。
完整属性集(19个Key):
名称 · 类型(固定"加工件") · pln · 面板ID · 单元号 · 批次 · 模号 · 序号 · L · W · T · 单位("块") · 自由项1 · 自由项2 · 自由项3 · 编号 · 物料编码 · 工程属性 · 加工图号