algorithm - 在球坐标系中最接近点的网格方 block

标签 algorithm geometry computer-science gis

我正在编写一个算法,在该算法中,我将球体的表面分解为网格点(为简单起见,我的网格线与子午线平行和垂直)。给定一个点 A,我希望能够有效地获取任何网格“正方形”并确定正方形中具有最小球坐标距离 AB 的点 B。在退化的情况下,“正方形”实际上是“三角形”。

我实际上只是用它来限制我正在搜索的方 block ,所以我也可以接受一个下限,如果它只有一点点偏差的话。出于这个原因,我需要算法非常快,否则最好只考虑精度损失并搜索更多方 block 。

最佳答案

对于球体上的点,在整个 3D 空间中最近的点在沿球体表面测量时也将是最近的。实际距离会有所不同,但如果您刚好在最近点之后,则可能最简单的方法是最小化 3D 距离,而不用担心大圆弧等。

要计算球面上两个(纬度、经度)点之间的实际大圆距离,可以使用 this link 中的第一个公式。 .

关于algorithm - 在球坐标系中最接近点的网格方 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1463606/

相关文章:

python - 找出列表中不存在的条目

algorithm - 用于创建数据矩阵的迭代算法

c++ - Open GL无法绘制一些三角形

computer-science - 启发式和元启发式有什么区别?

c - 为什么 C 不截断这个?

algorithm - 寻找有限状态机的不同调度算法的比较

ruby - 在大多数情况下都可以尝试模糊图像

c - 找出一个矩形是否在另一个矩形内 [C]

c# - 有没有一种简单快捷的方法来检查多边形是否自相交?

algorithm - 如何以最少的步骤删除图形?