寻找距离点最近的圆

我正在编写我的世界查询方法,用于寻找距离某个点最近的实体(用于AI目标选择)。我的实体都被包围在边界圆中。

我目前有以下代码:

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

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注