internal static void RunFastenerDetection(Dictionary <string, List <TessellatedSolid> > solids, int threaded) { PartsWithOneGeom = new List <TessellatedSolid>(); foreach (var subAssem in solids.Values) { if (subAssem.Count == 1) { PartsWithOneGeom.Add(subAssem[0]); } } // From repeated parts take only one of them: //------------------------------------------------------------------------------------------ var multipleRefs = DuplicatePartsDetector(PartsWithOneGeom); // Detect fasteners //------------------------------------------------------------------------------------------ FastenerDetector.Run(SolidPrimitive, multipleRefs, threaded, false); }