Actionscript 3 确定网格中两个位置是否相邻的最优雅的方法

Actionscript 3 确定网格中两个位置是否相邻的最优雅的方法,actionscript-3,Actionscript 3,所谓相邻,我指的是一个单位,左,右,上,下。对角线不算数。你知道两个位置的x,y坐标 最终这是针对AS3的,但伪代码的答案就足够了。(a.x-b.x)^2+(a.y-b.y)^2=1(a.x-b.x)^2+(a.y-b.y)^2=1对值进行平方运算是完全冗余的(1^2=1)不正确。。。它的目的是在a.x-b.x=-1或a.y-b.y=-1时纠正符号(就像接受的答案中的“abs”一样),尽管我认为平方更昂贵。平方值是完全冗余的(1^2=1)不是真的。。。它的目的是在a.x-b.x=-1或a.y-b

所谓相邻,我指的是一个单位,左,右,上,下。对角线不算数。你知道两个位置的x,y坐标


最终这是针对AS3的,但伪代码的答案就足够了。

(a.x-b.x)^2+(a.y-b.y)^2=1

(a.x-b.x)^2+(a.y-b.y)^2=1

对值进行平方运算是完全冗余的(1^2=1)不正确。。。它的目的是在a.x-b.x=-1或a.y-b.y=-1时纠正符号(就像接受的答案中的“abs”一样),尽管我认为平方更昂贵。平方值是完全冗余的(1^2=1)不是真的。。。它的目的是在a.x-b.x=-1或a.y-b.y=-1时纠正符号(就像接受答案中的“abs”一样),尽管我认为平方更昂贵。
abs(a.x - b.x) + abs(a.y - b.y) == 1