/// <summary> /// Runs the comparison for a given folder. /// </summary> public static void ComparisonSuite(String graphsFolder, String resultLog, bool parallelTest) { string dataFolder = Path.GetFileName(Path.GetDirectoryName(graphsFolder)); string dateTime = DateTime.Now.ToString("-yyyy.MM.dd-HH_mm"); //Set the current directory. subFolderName = "TestSuite2-"; Directory.CreateDirectory(subFolderName + dataFolder + dateTime); Directory.SetCurrentDirectory(subFolderName + dataFolder + dateTime); int numberCores = 1; if (parallelTest) { numberCores = Environment.ProcessorCount; } var testSuite = new OverlapRemovalTestSuite(resultLog); testSuite.overlapMethods = CollectionOverlapRemovalMethods(); testSuite.layoutMethods = CollectionInitialLayout(); string[] filePaths = Directory.GetFiles(graphsFolder, "*.dot"); Parallel.ForEach( filePaths, new ParallelOptions { MaxDegreeOfParallelism = numberCores }, testSuite.RunOverlapRemoval ); testSuite.Finished(); }
private static void Main(string[] args) { #if DEBUG && !SILVERLIGHT DisplayGeometryGraph.SetShowFunctions(); // ProximityOverlapRemoval.DebugMode = true; #endif // OverlapRemovalTestSuite.ComparisonSuite(@"C:\dev\GraphLayout\graphs\overlapSamples\debugOnly\", "DebugOnlyTestSuite1.csv", false); // OverlapRemovalTestSuite.ComparisonSuite(@"C:\dev\GraphLayout\graphs\overlapSamples\", "ResultsOverlapRemovalTestSuite1.csv", false); // OverlapRemovalTestSuite.ComparisonSuite(@"C:\dev\GraphLayout\graphs\overlapSamples\net50comp1\", "ResultsNet50comp1TestSuite1.csv", false); // OverlapRemovalTestSuite.ComparisonSuite(@"C:\dev\GraphLayout\graphs\overlapSamples\large\", "ResultsLargeGraphsTestSuite1.csv", false); OverlapRemovalTestSuite.ComparisonSuite( @"C:\dev\GraphLayout\graphs\overlapSamples\prism-original-dataset\", "ResultsPrism-original-datasetTestSuite1.csv", false); // Console.ReadLine(); // var rootGraph = DotLoader.LoadFile(@"C:\dev\GraphLayout\graphs\overlapSamples\root.dot"); //// var rootGraph = DotLoader.LoadFile(@"C:\dev\GraphLayout\graphs\overlapSamples\net50comp1\net50comp_1.gv.dot"); //// var rootGraph = DotLoader.LoadFile(@"C:\dev\GraphLayout\graphs\overlapSamples\badvoro.gv.dot"); //// var rootGraph = DotLoader.LoadFile(@"C:\dev\GraphLayout\graphs\large\twittercrawl-sfdp.dot"); //// var oldPositions = rootGraph.Nodes.Select(v => v.Center).ToList(); //// LayoutAlgorithmSettings.ShowGraph(rootGraph); // ProximityOverlapRemoval prism=new ProximityOverlapRemoval(rootGraph); // prism.Settings.WorkInInches = true; // prism.Settings.StressSettings.ResidualTolerance = 0.06; //#if DEBUG // ProximityOverlapRemoval.DebugMode = false; //#endif // prism.RemoveOverlap(); //// var newPositions = rootGraph.Nodes.Select(v => v.Center).ToList(); //// var procrustes = Statistics.Statistics.ProcrustesStatistics(oldPositions, newPositions); //// Console.WriteLine("ProcrustesStatistics: {0}",procrustes); // //#if DEBUG // // LayoutAlgorithmSettings.ShowGraph(rootGraph); //#endif // Console.ReadLine(); }