计算经度/纬度

时间:2008-12-22 14:04:00

标签: google-maps geolocation maps geocoding yahoo-maps

给出以下输入:

  • 1..n位置的已知经度/纬度
  • 位置1..n与另一位置“m”
  • 之间的已知距离

如何计算位置“m”的经度/纬度?

3 个答案:

答案 0 :(得分:7)

这听起来像是一个基本的纬度 - 经度三角测量问题。 Yahoo!中概述了常见的方法。答案主题here。有很多图书馆可以用多种语言来做这件事。谷歌搜索“纬度经度三角测量”加上您选择的语言可能会显示一些现有的代码。 “地理编码”是另一个列入类似库的常见任务,因此可能是另一个有用的关键字。

编辑:正如其他人所说,“三边测量”似乎是最好的术语。但是,根据您的数据和要求,可以使用更简单的近似解决方案来满足您的要求。

雅虎!为方便起见,下面引用了答案帖子:

  

“对于更大的距离,球形   几何。对于相对较小的,   把地球当作平坦的,对待它   坐标为xy坐标。为了   工作距离与工作的程度   坐标,你将不得不使用   要转换的余弦函数   一个到另一个。 (而度数   纬度全程约69英里   地球,经度有所不同   从赤道到0在同一时间   两极。)

     

你有三个中心点   圆圈和那些半径   界。他们应该这样做   在一点上相交,所以你可以   成对地对待它们以找到它   每个交叉点和投掷点   那些不匹配的   http://mathworld.wolfram.com/Circle-CircleIntersection.html“。   (mike1942f

答案 1 :(得分:4)

Trilateration就是你想要的。这只需要3个参考点,但如果你想变得非常聪明,其余的可以用来提高准确度。

最棘手的部分是使用长/纬,而不是笛卡尔坐标,特别是因为地球不是一个完美的球体。

答案 2 :(得分:3)

这是一个trilateration问题。在您的情况下,您有多个参考点,因此您可以最小化给定距离与对应于m的最佳位置的误差之和。