location - 如何找到具有初始坐标和距离的新坐标?
问题描述
如果我有初始坐标,coord0 = [29.205,-93.4683],距离为 10 公里,我如何找到 -93.4683 左侧 10 公里的坐标,29.205 以南 10 公里的坐标,以及都是 10 公里的坐标向南还有 10 公里?或者这是不可能的?
解决方案
这个问题在 GIS Stack Exchange 上可能更相关。
我假设您给出的坐标是纬度和经度。由于您想以公里为单位计算偏移量并且该偏移量非常小,因此最简单的方法是转换 UTM 中的值(以米为单位的值),在 UTM 中进行转换并再次转换为纬度和经度。为了这个例子,我使用 Python 库utm
来计算转换。
utm.from_latlon(29.205,-93.4683)
给出 UTM 中坐标的变换. 地理位置位于图块中,因此按顺序15R
给出以下坐标。如上所述,这些坐标以米为单位。(454477.6336829163, 3230788.981221904)
(easting, northing)
给定地理位置,向西 10 公里意味着向西 10 公里,UTM 中的平移可以计算为454477.6336829163 - 10000 = 444477.6336829163
。
向南 10 公里,对于 UTM 中的北半球意味着3230788.981221904 - 10000 = 3220788.981221904
关于位置,平移后的位置仍然位于15R
UTM 瓦片中,因此可以通过以下方式计算纬度、经度的逆变换:
utm.to_latlon(444477.6336829163, 3220788.981221904, 15, 'R')
返回(29.11434747694546, -93.5706694557042)
。
可以看出这个结果是有道理的。纬度稍小,因为我们更南一点,经度更负一点,因为我们更偏西一点。
推荐阅读
- flutter - 您如何在视频播放器类之外播放视频?
- javascript - 分红
- python - 不存在参数查询过滤器会引发异常吗?
- image - vuejs 无法显示资产文件夹中的图像
- laravel-5 - 如何将角色和权限从 Laravel 传递给 vue.js
- azure - WebApp for Containers 上的“Webjobs”选项卡已禁用
- c - 有没有办法通过输入学生的 ID 从文本文件中删除记录?
- selenium-webdriver - 如何在 PageObjectModel 模式中创建用于检查网页上的 webElement 存在的实用方法
- java - 我试图在屏幕上显示一个 CountDownTimer,我在我的 logcat 中得到“每个线程只能创建一个活套”
- selenium - 如何在不知道 xpath 或元素 ID 的情况下等到页面上出现“特定文本”