Skip to content

Commit fb6dd7d

Browse files
committed
add flag for diagonal-movement to examples
1 parent bd053ce commit fb6dd7d

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

examples/image-simple/image_pathfinding.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def pixel_walkable(pixel, x, y):
3535
return any([p > 50 for p in pixel]) # darker pixel are not walkable
3636

3737

38-
def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE):
38+
def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE, diagonal_movement: bool = False):
3939
nodes = []
4040
if not Path(filename_map).exists():
4141
print(f'File {filename_map} does not exist.')
@@ -59,7 +59,7 @@ def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE):
5959
start = grid.node(*_start)
6060

6161
print('Finding optimal path..')
62-
finder = AStarFinder(diagonal_movement=DiagonalMovement.never)
62+
finder = AStarFinder(diagonal_movement=DiagonalMovement.always if diagonal_movement else DiagonalMovement.never)
6363
path, runs = finder.find_path(start, end, grid)
6464

6565
# print(grid.grid_str(path=path, end=end, start=start))
@@ -84,5 +84,9 @@ def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE):
8484
'-o', '--filename_out',
8585
help='output file',
8686
default=OUT_FILE)
87+
parser.add_argument(
88+
'-d', '--diagonal-movement',
89+
help='allow for diagonal movement',
90+
action='store_true')
8791

8892
main(**vars(parser.parse_args()))

examples/image-weighted/image_pathfinding.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,10 @@
3636
}
3737

3838

39-
def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE, weight_randomization: float = 0):
39+
def main(
40+
filename_map: str = MAP_FILE, filename_out: str = OUT_FILE,
41+
weight_randomization: float = 0, diagonal_movement: bool = False,
42+
):
4043
nodes = []
4144
if not Path(filename_map).exists():
4245
print(f'File {filename_map} does not exist.')
@@ -66,7 +69,7 @@ def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE, weight_rand
6669
start = grid.node(*_start)
6770

6871
print('Finding optimal path..')
69-
finder = AStarFinder(diagonal_movement=DiagonalMovement.never)
72+
finder = AStarFinder(diagonal_movement=DiagonalMovement.always if diagonal_movement else DiagonalMovement.never)
7073
path, runs = finder.find_path(start, end, grid)
7174

7275
# print(grid.grid_str(path=path, end=end, start=start))
@@ -97,5 +100,9 @@ def main(filename_map: str = MAP_FILE, filename_out: str = OUT_FILE, weight_rand
97100
help='how much randomization should be added to the tile-weights (disabled by default)',
98101
type=float,
99102
default=0)
103+
parser.add_argument(
104+
'-d', '--diagonal-movement',
105+
help='allow for diagonal movement',
106+
action='store_true')
100107

101108
main(**vars(parser.parse_args()))

0 commit comments

Comments
 (0)