private static Tuple <double, double> GetMbDimensions(MST.MES.Data_structures.DevToolsModelStructure dtModel00) { MST.MES.Data_structures.DevToolsModelStructure model = new MST.MES.Data_structures.DevToolsModelStructure(); bool success = false; foreach (var subComponent in dtModel00.children) { if (subComponent.nc12.StartsWith("6010616")) //SMD Assy { foreach (var component in subComponent.children) { if (component.name.StartsWith("PCB") & component.children.Count == 0) { model = component; success = true; break; } if (component.nc12.StartsWith("4010440")) { foreach (var pcb in component.children) { if (pcb.name.StartsWith("MB")) { model = pcb; success = true; break; } } } if (success) { break; } } } if (success) { break; } } Tuple <double, double> result = new Tuple <double, double>(0, 0); if (success) { try { string[] size = model.atributes["L x W"].ToUpper().Split('X'); string l = size[0]; string w = size[1]; result = new Tuple <double, double>(double.Parse(l, CultureInfo.InvariantCulture), double.Parse(w, CultureInfo.InvariantCulture)); } catch (Exception ex) { return(new Tuple <double, double>(-1, -1)); } } return(result); }
public static void MakeTreeViewSource(MST.MES.Data_structures.DevToolsModelStructure dtModel) { treeProductStructure.Objects = null; if (dtModel != null) { treeProductStructure.CanExpandGetter = delegate(object x) { return(((MST.MES.Data_structures.DevToolsModelStructure)x).children.Count > 0); }; treeProductStructure.ChildrenGetter = delegate(object x) { return(((MST.MES.Data_structures.DevToolsModelStructure)x).children); }; treeProductStructure.AddObject(dtModel); treeProductStructure.ExpandAll(); } }
public static IEnumerable <MST.MES.Data_structures.DevToolsModelStructure> GetNodes(MST.MES.Data_structures.DevToolsModelStructure dtModel) { if (dtModel == null) { yield break; } yield return(dtModel); foreach (var n in dtModel.children) { foreach (var innerN in GetNodes(n)) { yield return(innerN); } } }