我正在尝试找到围绕一个平铺的,连接的区域的最短路径。
到目前为止,我已经填充了要环绕的连接区域,并创建了一条与其连接的路径(因此,路径的所有图块都直接与连接区域相邻)。我现在想做的就像是在连接的区域周围拉一条橡皮筋,并沿着它走的路。我想避免进入该地区的凹面。例如,如果我有:(。=空的空间,w =墙壁,o =路径
........
.ww...w.
.w...ww.
.ww..ww.
.wwwwww.
........
我当前的路径如下:
.oo...o.
owwo.owo
owo.owwo
owwoowwo
owwwwwwo
.oooooo.
但是我想避开中心区域,因为它会使我的路径更长,而改走路径:
.oooooo.
oww...wo
ow...wwo
oww..wwo
owwwwwwo
.oooooo.
是否有一种有效的方法来做这样的事情?谢谢。