public override void End(FinderEventArgs e) { Console.Clear(); var path = e.GridMap.GetPath(); var text = FileTool.GetTextRepresentation(e.GridMap, false, path); Console.WriteLine(text); ShowEndLog(_finder, path, e); }
public override void Loop(FinderEventArgs e) { Console.Clear(); var text = FileTool.GetTextRepresentation(e.GridMap, true); Console.WriteLine(text); ShowStepLog(_finder, e); Thread.Sleep(_finder.SleepUITimeInMs); }
private void OnFinderFileProcessed(object sender, FinderEventArgs e) { if (!this.gvResults.InvokeRequired) { ShowFindResult(e.ResultItem, e.Stats, e.Status); } else { SetFindResultCallback findResultCallback = ShowFindResult; this.Invoke(findResultCallback, new object[] { e.ResultItem, e.Stats, e.Status }); } }
private void OnFinderFileProcessed(object sender, FinderEventArgs e) { if (e.ResultItem.IncludeInResultsList && !e.IsSilent) { PrintFinderResultRow(e.ResultItem, e.Stats); } if (e.Stats.Files.Processed == e.Stats.Files.Total && !e.IsSilent) { PrintStatistics(e.Stats); } }
public static void ShowEndLog(IFinder finder, IEnumerable <Node> path, FinderEventArgs e) { if (path?.Any(x => !x.Walkable) ?? false) { throw new Exception("Why is there a wall on the path?"); } Console.WriteLine($"Alg={finder.Name}\nDiagonal={e.GridMap.Diagonal.ToString()}\nMax Expanded Nodes = {e.GridMap.GetMaxExpandedNodes()}\nProcess Time = {finder.GetProcessedTime()} ms\nSteps|Generation:{e.Step}"); if (e.Finded) { Console.WriteLine($"Path Length: {path.OrderBy(x => x.G).Last().G}"); } else { Console.WriteLine("CANT FIND A PATH!"); } Console.ReadKey(); }
public static void ShowStepLog(IFinder finder, FinderEventArgs e) { Console.WriteLine($"Alg={finder.Name}\nDiagonal={e.GridMap.Diagonal.ToString()}\nMax Expanded Nodes = {e.GridMap.GetMaxExpandedNodes()}\nProcess Time = {finder.GetProcessedTime()} ms\nSteps|Generations:{e.Step} "); }
public abstract void End(FinderEventArgs e);
public abstract void Loop(FinderEventArgs e);