/// <summary> /// /// </summary> /// <param name="bone"></param> /// <param name="bones"></param> private void BreathFirstWalk(IOBone bone, ref List <IOBone> bones) { bones.Add(bone); foreach (var c in bone.Children) { BreathFirstWalk(c, ref bones); } }
/// <summary> /// /// </summary> /// <param name="bone"></param> /// <returns></returns> public int IndexOf(IOBone bone) { return(BreathFirstOrder().IndexOf(bone)); }