public static List <List <Vector2> > GetPathsToDistanceMax(Vector2 begin, int distance) { var retour = new List <List <Vector2> >(); var pathCalculator = new BasicRayPathCalculator(); var current = new Vector2(begin.X - distance, begin.Y - distance); do { retour.Add(pathCalculator.FindPath(begin, current)); current.X++; }while (current.X != begin.X + distance); do { retour.Add(pathCalculator.FindPath(begin, current)); current.Y++; }while (current.Y != begin.Y + distance); do { retour.Add(pathCalculator.FindPath(begin, current)); current.X--; }while (current.X != begin.X - distance); do { retour.Add(pathCalculator.FindPath(begin, current)); current.Y--; }while (current.Y != begin.Y - distance); retour.Add(pathCalculator.FindPath(begin, current)); return(retour); }
public BasicRayPathCalculatorTests() { this.pathCalculator = new BasicRayPathCalculator(); }