private static HierarchyList GetTransformInHierarchyRecursively(Transform transform, int depth) { HierarchyList hList = new HierarchyList(); depth += 1; foreach (Transform t in transform) { string label = ""; for (int i = 0; i < depth; i++) { label += " "; } hList.ListT.Add(t); hList.ListName.Add(label + "-" + t.name); HierarchyList tempHL = GetTransformInHierarchyRecursively(t, depth); foreach (Transform tt in tempHL.ListT) { hList.ListT.Add(tt); } foreach (string ll in tempHL.ListName) { hList.ListName.Add(ll); } } return(hList); }
public static void GetObjectHierarchyList(GameObject obj, SetObjListCallback callback) { List <GameObject> objHList = new List <GameObject>(); List <string> tempLabelList = new List <string>(); HierarchyList hList = GetTransformInHierarchy(obj.transform, 0); objHList.Add(null); tempLabelList.Add(" - "); for (int i = 0; i < hList.ListT.Count; i++) { objHList.Add(hList.ListT[i].gameObject); } for (int i = 0; i < hList.ListName.Count; i++) { while (tempLabelList.Contains(hList.ListName[i])) { hList.ListName[i] += "."; } tempLabelList.Add(hList.ListName[i]); } string[] objHLabelList = new string[tempLabelList.Count]; for (int i = 0; i < tempLabelList.Count; i++) { objHLabelList[i] = tempLabelList[i]; } callback(objHList, objHLabelList); }
static void Main(string[] args) { var list = new HierarchyList <string, string>("R", "ROOT"); Node <string, string> b1 = list.Root.AddNode("B1", "Branch1"); b1.AddNode("L1-1", "Leaf1-1"); b1.AddNode("L1-2", "Leaf1-2"); b1.AddNode("L1-3", "Leaf1-3"); Node <string, string> b2 = list.Root.AddNode("B2", "Branch2"); Node <string, string> b21 = b2.AddNode("B2-1", "Branch2-1"); b21.AddNode("L2-1-1", "Leaf2-1-1"); b21.AddNode("L2-1-2", "Leaf2-1-2"); b21.AddNode("L2-1-3", "Leaf2-1-3"); Node <string, string> b22 = b2.AddNode("B2-2", "Branch2-2"); b22.AddNode("L2-2-1", "Leaf2-2-1"); b22.AddNode("L2-2-2", "Leaf2-2-2"); b22.AddNode("L2-2-3", "Leaf2-2-3"); Node <string, string> b23 = b2.AddNode("B2-3", "Branch2-3"); b23.AddNode("L2-3-1", "Leaf2-3-1"); b23.AddNode("L2-3-2", "Leaf2-3-2"); b23.AddNode("L2-3-3", "Leaf2-3-3"); Console.WriteLine(list.Root.ToString()); Console.ReadKey(); }
private static HierarchyList GetTransformInHierarchy(Transform transform, int depth) { HierarchyList hl = new HierarchyList(); hl = GetTransformInHierarchyRecursively(transform, depth); hl.ListT.Insert(0, transform); hl.ListName.Insert(0, "-" + transform.name); return(hl); }
private static HierarchyList GetTransformInHierarchy(Transform transform, int depth) { HierarchyList hl=new HierarchyList(); hl=GetTransformInHierarchyRecursively(transform, depth); hl.ListT.Insert(0, transform); hl.ListName.Insert(0, "-"+transform.name); return hl; }
float startX, startY, height, spaceY; //, lW; #endregion Fields #region Methods public static HierarchyList GetTransformInHierarchy(Transform transform, int depth) { HierarchyList hl=new HierarchyList(); hl=GetTransformInHierarchyRecursively(transform, depth); hl.transformList.Insert(0, transform); hl.stringList.Insert(0, "-"+transform.name); return hl; }
public static HierarchyList GetTransformInHierarchyRecursively(Transform transform, int depth) { HierarchyList hl=new HierarchyList(); depth+=1; foreach(Transform t in transform){ string label=""; for(int i=0; i<depth; i++) label+=" "; hl.transformList.Add(t); hl.stringList.Add(label+"-"+t.name); HierarchyList tempHL=GetTransformInHierarchyRecursively(t, depth); foreach(Transform tt in tempHL.transformList){ hl.transformList.Add(tt); } foreach(string ll in tempHL.stringList){ hl.stringList.Add(ll); } } return hl; }
void LoadCompleted(HierarchyList<CallTreeNodeViewModel> list, AdornerLayer layer, OverlayAdorner ad) { layer.Remove(ad); treeView.ItemsSource = this.list = list; if (list != null && list.Count > 0) { ringDiagram.SelectedRoot = this.list[0]; foreach (var item in list) { var currentItem = item; currentItem.RequestBringIntoView += (sender, e) => treeView.ScrollIntoView(e.Node); } } }
private static HierarchyList GetTransformInHierarchyRecursively(Transform transform, int depth) { HierarchyList hList=new HierarchyList(); depth+=1; foreach(Transform t in transform){ string label=""; for(int i=0; i<depth; i++) label+=" "; hList.ListT.Add(t); hList.ListName.Add(label+"-"+t.name); HierarchyList tempHL=GetTransformInHierarchyRecursively(t, depth); foreach(Transform tt in tempHL.ListT){ hList.ListT.Add(tt); } foreach(string ll in tempHL.ListName){ hList.ListName.Add(ll); } } return hList; }