void CopyChildrenMatFrom_0(TMONode motion, List <string> except_snames) { List <TMONode> select_children = new List <TMONode>(); foreach (TMONode child in children) { bool found = false; foreach (string except_sname in except_snames) { if (child.sname == except_sname) { found = true; break; } } if (found) { except_snames.Remove(child.sname); } else { select_children.Add(child); } } foreach (TMONode child in select_children) { TMONode motion_child = motion.FindChildByShortName(child.sname); child.CopyThisMatFrom(motion_child); child.CopyChildrenMatFrom_0(motion_child, except_snames); } }
public void CopyMatFrom(TMONode motion) { CopyThisMatFrom(motion); foreach (TMONode child in children) { TMONode motion_child = motion.FindChildByShortName(child.sname); child.CopyMatFrom(motion_child); } }