代码之家  ›  专栏  ›  技术社区  ›  gucki

将地理坐标(lat,lng)映射到地图(x,y)

  •  5
  • gucki  · 技术社区  · 16 年前

    我有一些城市的地理坐标(纬度和经度),我想得到x,y坐标,这样可以将它们绘制成地图。

    地图是标准的,就像 http://www.wordtravels.com/images/map/Spain/Fuerteventura_map.jpg 例如。

    我试过几种我发现的公式,但似乎都不管用:(。最好是简单的javascript代码或Ruby:)

    5 回复  |  直到 15 年前
        1
  •  2
  •   winwaed    15 年前

    除了上面的答案,还有一个开源的proj4js库,它执行各种地图投影之间的转换。它在内部被Openlayers用于这种事情,并且支持许多流行的投影和坐标系统。

        2
  •  3
  •   Ian    16 年前

    有许多方法可以以不同的精度处理这个问题。但是,它们都归结为执行与地图对应的投影。

    z=sin(lat)
    x=cos(lat)*sin(long)
    y=cos(lat)*cos(long)
    

    http://en.wikipedia.org/wiki/Coordinate_rotations_and_reflections

        3
  •  2
  •   whatbird    15 年前
    推荐文章