public void Load(string file, InfoProgressPanel ipp) { filename = file; DateTime lastModified2 = File.GetLastWriteTime(filename); lastModified = lastModified2.Ticks; originalModel.ipp = ipp; string lname = filename.ToLower(); if (lname.EndsWith(".stl")) { originalModel.importSTL(filename, Main.main.importScaleFactor); } else if (lname.EndsWith(".obj")) { originalModel.importObj(filename, Main.main.importScaleFactor); } else if (lname.EndsWith(".3ds")) { originalModel.import3Ds(filename, Main.main.importScaleFactor); } FileInfo info = new FileInfo(file); name = info.Name; originalModel.AnalyseFast(); if (ipp.IsKilled) { originalModel.clear(); return; } /* * if (ipp.IsKilled) * { * originalModel.clear(); * return; * } * originalModel.updateBad(); * if (originalModel.intersectingTriangles.Count>0 || originalModel.badTriangles>0 || originalModel.manifold == false || originalModel.manyShardEdges != 0 || originalModel.loopEdges != 0 || originalModel.normalsOriented==false) * { * if (repairedModel == null) * repairedModel = originalModel.Copy(); * repairedModel.ipp = ipp; * repairedModel.RepairUnobtrusive(); * repairedModel.Analyse(); * originalModel.Analyse(); * if (ipp.IsKilled) * { * originalModel.clear(); * repairedModel.clear(); * return; * } * repairedModel.updateBad(); * ShowRepaired(true); * repairedModel.ipp = null; * }*/ originalModel.ipp = null; }