重新编号路径 · Renumber Paths

将树形数据的所有路径按分支先后顺序重新编号为从 0 开始的一级路径
📂 LK → Tree 📄 Renumber Paths.cs 🏷️ 路径标准化 🧹 结构简化

📖 功能概述

读取输入数据树的所有分支,忽略其原有的多级路径结构(如 {0;2;5}、{3;1;0} 等), 按照分支的遍历顺序重新赋予简洁的一级路径编号:{0}, {1}, {2}, ..., {N-1}

适用场景:经过多次 Combine、Graft、Simplify、Merge 等操作后,树形数据的路径编号可能变得混乱或不连续。 使用本组件可以将路径"打扫干净",使后续的数据处理更方便。

🧠 核心算法:顺序重编号

输入:任意深度的树形数据,如:
{0;2;5} → [A, B]
{0;2;7} → [C]
{1;0;1} → [D, E, F]

运算:遍历 dataTree.Paths(Paths 按 GH 内部排序),逐分支分配新路径:
  分支 0(原 {0;2;5})→ 新路径 {0},数据 [A, B]
  分支 1(原 {0;2;7})→ 新路径 {1},数据 [C]
  分支 2(原 {1;0;1})→ 新路径 {2},数据 [D, E, F]

输出:
{0} → [A, B]
{1} → [C]
{2} → [D, E, F]

📥 输入参数

名称类型必填说明
数据树 (T) Generic 必需 需要重新编号路径的输入数据树。支持任意 GH_Goo 类型。

📤 输出参数

名称类型说明
重编后的数据 (T) Generic 路径被重新编号为 {0}~{N-1} 的数据树。所有分支及其元素内容保持不变。

🎯 使用场景

⚠️ 注意事项:
  • 路径重编号后会丢失原始的多级结构信息——原始路径标识无法恢复。
  • 如果输入树为空(无分支),输出同样为空树。
  • 分支内部的元素顺序和数量保持不变。
  • 新路径始终为一级路径(深度为 1),即使原路径有多级结构。

📋 组件信息

名称重新编号路径
英文名Renumber Paths
分类LK → Tree
基类GH_Component
GUID05265045-642A-41FE-8DB1-852002A3FD68