public void CanLoadGraphs(string inputFile, string outputFile) { var graph = GraphParser.Parse(inputFile); //assert that each line produced a node var count = File.ReadAllLines(inputFile).Count(); Assert.AreEqual(graph.Count, count); }
public static GraphBlueprint ParseGraphFromString(string input, Func <string, string> includesFunc) { var gp = new GraphParser(input, includesFunc); var r = gp.Parse(); LastParsedIncludedSources = gp.IncludedSources; return(r); }
// Use this for initialization void Start() { int[] vertices = { 1, 2, 3, 4, 5 }; int[,] edges = { { 1, 2 }, { 1, 3 }, { 1, 4 }, { 2, 3 }, { 3, 5 } }; GameObject go = new GameObject(); GraphParser graphParser = go.AddComponent <GraphParser>(); graphParser.Parse(vertices, edges); }
public override GraphBlueprint Process(GraphPackage input, ContentProcessorContext context) { var parser = new GraphParser(input.Content, x => input.Includes.FirstOrDefault(p => GraphBlueprint.IsIncludeMatch(p.Key, x)).Value); var gf = parser.Parse(); BlueprintPreprocessor.ProcessGraph(gf); Console.WriteLine("Parsing file with " + gf.LevelNodes.Count + " node definitions"); return(gf); }
public static GraphBlueprint ParseGraphFromFile(string f) { var path = Path.GetDirectoryName(f) ?? ""; var includesFunc = GetIncludesFunc(f); var gp = new GraphParser(File.ReadAllText(f), includesFunc); var r = gp.Parse(); LastParsedIncludedSources = gp.IncludedSources; return(r); }
static void Main(string[] args) { var graph = GraphParser.Parse("dijkstraData.txt"); var results = Search.CalculateShortestPaths(graph); var ids = new[] { 7, 37, 59, 82, 99, 115, 133, 165, 188, 197 }; foreach (var id in ids) { Console.WriteLine($"id: {id}, distance: {results[id].Distance}"); } Console.ReadLine(); }
public void CanCalculatePaths(string inputFile, string outputFile) { var ids = new[] { 7, 37, 59, 82, 99, 115, 133, 165, 188, 197 }; var distances = File.ReadAllLines(outputFile) .First() .Split('\t', ' ', ',') .Where(n => !string.IsNullOrWhiteSpace(n)) .Select(int.Parse) .ToList(); var graph = GraphParser.Parse(inputFile); var results = Search.CalculateShortestPaths(graph); for (int i = 0; i < ids.Length; i++) { Assert.AreEqual(distances[i], results[ids[i]].Distance); } }
public static int Main(string[] args) { if (args.Length != 1) { Console.Error.WriteLine("No input file."); return(3); } if (!File.Exists(args[0])) { Console.Error.WriteLine(args[0] + ": no such file."); } // Parses the file and calls Floyd algorithm try { var parser = new GraphParser(); // Gets input data from file xreal [,] datos = parser.Parse(File.OpenText(args[0])); xreal[,] res = null; Console.WriteLine("Input data:"); Console.WriteLine(String.Join("\t", parser.VertNames)); PrintMatrix(datos); __default.Floyd(datos, out res); Console.WriteLine(); Console.WriteLine("Output data:"); PrintMatrix(res); } catch (Exception e) { Console.ForegroundColor = ConsoleColor.Red; Console.Error.WriteLine("Error: " + e.Message); Console.ResetColor(); } return(0); }