我正在寻找一种有效的方法来检查对象是否会切角从点A到点B或防止对象从点A移动如果在两者之间存在对角线不可行的位置,则指向B点。确定点A是否需要切角才能到达点B
什么是已知的:
- 每个点是宽度和高度1
- 每点都有8个相邻点的列表的平方
- 的点可以是适于步行或nonwalkable
这里有一些例子(a
是来源,b
是desination和X
是一个不可行的点):
aX
b
在上述情况下,a
不能走路是因为在相邻的两者点a
和点b
一个不可行走点...因此,对于该电流的情况下,变得b
从a
(即,a
不可行走必须在继续b
)
下面是一个类似的情况之前向下移动,在这个意义上a
不能走路到b
:
aX
Xb
我现在这样做的方式是获取点A
和点B
的正交相邻点集合并使这两个集合相交。如果相交结果中没有元素,则点A
可以走到点B
。
...它的工作原理。
但是,有没有一个,也许更实用的数学和有效的方法?
那么它是什么样子一样,如果它是适合步行?你可能想要展示如何从A - > B得到。 – 2010-08-09 11:17:53
这是无关紧要的。我只想知道是否可以从A移动到B. – 2010-08-09 11:26:00