algo.astar() takes a layer object, which is some object such that
layer[y][x] is an integer. During the course of pathfinding, it may look
outside the layer for nodes to go to, causing an IndexError if the
intuitive option of using a sequence of sequences is used.
The user-end solution to this is to wrap unwalkable nodes around the edge
of the layer so that the algorithm would have no access to non-existent nodes.
I feel that on the implementation side, this behavior should be documented
(it is not intuitive to people that don't know pathfinding that A*, which
would in the end find a straight path from (0,0) to (0, 1), would look at
(-1, 0) or (0, -1) < http://paste.pocoo.org/show/114987/ >), or else that
pgu.algo.astar() should assume that nonexistent places on the layer (which
raise LookupError) are not walkable. The latter solution seems most
appealing to me.
Original issue reported on code.google.com by Jeanpier...@gmail.com on 29 Apr 2009 at 4:48
Original issue reported on code.google.com by
Jeanpier...@gmail.com
on 29 Apr 2009 at 4:48