我正在研究我的世界查询方法,以便从一个点(针对人工智能目标)找到最接近的实体。我的实体被包围着。
我有这个:
var distanceX : Number = boundingCircle.position.x - startPosition.x;
var distanceY : Number = boundingCircle.position.y - startPosition.y;
var distance : Number = (distanceX * distanceX + distanceY * distanceY);
if (distance < lastDistance)
{
// set this circle as the closest...
}
但它没有考虑边界圆的半径,这给了我不准确的结果我可以从距离中减去半径平方来得到到边界圆边缘的距离,还是需要使用math.sqrt计算更精确的距离?
谢谢!
最佳答案
我能从距离中减去半径的平方来得到到边界圆边缘的实际距离吗
是的,这应该很好。
如果到敌人的距离是∏,其包围圈半径是R,那么到敌人包围圈的距离是∏-R。