python - 如何使用python有效地查找具有一定间隔的两个地理位置/位置之间的所有坐标
问题描述
我想计算地球上两个地理点(纬度/经度)之间的所有地理坐标。我想为这个问题提供一个 python 解决方案。
注意:我不希望距离我需要两点之间的坐标来模拟地图上的一个人以将他从地图上的一个点移动到另一个点,这就是为什么我需要所有坐标来显示平滑逼真的运动。
解决方案
这更像是一个几何问题而不是 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)
推荐阅读
- python - 使用 spark.catalog.createTable 创建表
- javascript - Javascript无法找到函数
- laravel - 更新函数和 nWidart 模块
- angular - ABP 迁移 3.3 到 4.2 Angular 重大更改并弃用 ConfigState
- mongodb - 保存 ObjectID 引用 - typeORM 和 MongoDB
- flutter - 例外是在 Android Studio 中的圆形蓝线
- javascript - 没有 Express 服务器重启 MongoDB 不保存
- android - ExoPlayer :extension-av1:generateJsonModelDebug 在 GitHub 操作上构建时与 NullPointer 中断
- python - 如何更改 SVM 中的学习过程?
- java - Spring 集成和 IBM MQ