我有一组纬度和经度位置的。
I have a set of latitudes and longitudes of locations.
如何找到的设置为另一个距离从一个位置? 有没有公式? How to find distance from one location in the set to another? Is there a formula ?在半正矢公式假设一个球形的地球。然而,earh的形状更复杂。一个扁球体模型会给出更好的结果。
The Haversine formula assumes a spherical earth. However, the shape of the earh is more complex. An oblate spheroid model will give better results.
如果这样的精度是必要的,你最好使用 Vincenty反式。 请参阅http://en.wikipedia.org/wiki/Vincenty's_formulae了解详细信息。使用它,你可以得到0.5mm的精度球体模型。
If such accuracy is needed, you should better use Vincenty inverse formula. See http://en.wikipedia.org/wiki/Vincenty's_formulae for details. Using it, you can get a 0.5mm accuracy for the spheroid model.
没有完美的公式,因为地球的真正形状太复杂,无法用一个公式pssed EX $ P $。此外,地球的变化,由于气候事件的形状(见http://www.nasa.gov/centers/goddard/earthandsun/earthshape.html),并且也由于地球的旋转随时间改变。
There is no perfect formula, since the real shape of the earth is too complex to be expressed by a formula. Moreover, the shape of earth changes due to climate events (see http://www.nasa.gov/centers/goddard/earthandsun/earthshape.html), and also changes over time due to the rotation of the earth.
您还应该注意的是,上述方法没有考虑高度考虑,并假定海平面的扁球体。
You should also note that the method above does not take altitudes into account, and assumes a sea-level oblate spheroid.
修改10 07月2010:我发现有极少数情况下为其Vincenty反式不收敛于声明的准确性。更好的方法是使用GeographicLib(见http://sourceforge.net/projects/geographiclib/)这也是更准确。
Edit 10-Jul-2010: I found out that there are rare situations for which Vincenty inverse formula does not converge to the declared accuracy. A better idea is to use GeographicLib (see http://sourceforge.net/projects/geographiclib/) which is also more accurate.