GPS坐标:一个点周围1平方公里

Eam*_*orr 16 javascript math gps coordinates

我希望有人在那里可以提供给我的方程式(从a.aaa X从c.ccc b.bbb,Y向c.ccc)计算一公里平方左右的指定点,说lat = 53.38292839lon = -6.1843984?我还需要一个点周围2公里,5公里和10公里的方格.

我试过谷歌搜索无济于事......这是深夜,希望有人可以快速修复方便我钻研三角函数之前......

我将在Javascript中运行所有这些,虽然任何语言都可以.

Tom*_*mmy 38

根据基本的三角学,如果世界是一个完美的球体......

纬度在世界任何地方都具有相同的线性距离,因为所有纬度线都是相同的尺寸.因此1度纬度等于地球周长的1/360,即40,075 km的1/360.

经度线的长度取决于纬度.纬度l的经度线为cos(l)*40,075 km.一度经度将是1/360.

所以你可以从那里倒退.假设你想要一个非常接近一平方公里的东西,你需要1*(360/40075)= 0.008983纬度.

在您的示例纬度53.38292839,经度线为cos(53.38292839)*40075 = [约] 23903.297公里长.所以1 km是1*(360/23903.297)= 0.015060度.

实际上,地球不是一个完美的球体,它在赤道上更加肥胖.上面给出了世界上大多数有用区域的一个非常好的答案,但是在极点附近容易变得有些奇怪(长/纬线中的矩形停止看起来像地球上的矩形).例如,如果你在赤道上,假设的经度线是0公里长.那么你如何处理需要计算学位的需要将取决于你想要数字的原因.

  • 注意:在计算cos(lat)时,请确保将lat转换为弧度,因为几乎所有编程语言在其Cos / Sin trig方法中都使用弧度。 (2认同)