首页 > 解决方案 > 如何使用python有效地查找具有一定间隔的两个地理位置/位置之间的所有坐标

问题描述

我想计算地球上两个地理点(纬度/经度)之间的所有地理坐标。我想为这个问题提供一个 python 解决方案。

注意:我不希望距离我需要两点之间的坐标来模拟地图上的一个人以将他从地图上的一个点移动到另一个点,这就是为什么我需要所有坐标来显示平滑逼真的运动。

标签: pythonpython-3.xgeolocationgis

解决方案


这更像是一个几何问题而不是 python 问题。

以下公式为您提供点 (x1,y1) 和 (x2,y2) 之间的所有点 (x,y):

y = (y1-y2)/(x1-x2) * (x - x1) + y1      for x in [x1, x2]

所以如果你想要一个简单的python代码(不是最平滑的增量):

# your geo points
x1, y1 = 0, 0
x2, y2 = 1, 1
# the increment step (higher = faster)
STEP = 0.004

if x1 > x2:           # x2 must be the bigger one here
    x1, x2 = x2, x1
    y1, y2 = y2, y1

for i in range(int((x2-x1)/STEP) + 1):
    x = x1 + i*STEP
    y = (y1-y2)/(x1-x2) * (x - x1) + y1
    do_something(x, y)

推荐阅读