首页 > 解决方案 > 是否有一个 javascript 库来重新投影 geojson,以便 mapbox gl 将其呈现为“Plate-Carrée”?

问题描述

我正在使用 Angular 和 mapbox-gl-js 作为地图库构建一个 Web 应用程序。地图切片使用 EPSG:4326 Plate-Carrée 投影,数据集为 GeoJson (WGS84)。由于 mapbox 仅支持 web 墨卡托投影,因此数据不会显示在地图上的正确位置。有什么建议如何重新投影数据集,以便 mapbox 能够在正确的位置显示数据?谢谢。

标签: projectionmapbox-gl-js

解决方案


如果我正确理解您的问题,您有一些在 EPSG:4326 中“投影”(嗯,不是真的)的光栅图块,并且您想在 Mapbox-GL-JS 中显示它们。你还有另一个数据集,在 GeoJSON 中,也在 EPSG:4326 中提供,你想覆盖它。

如您所见,Mapbox-GL-JS 仅支持 EPSG:3857 (Web Mercator) 投影。它将数据集(但不是光栅图块)从 EPSG:4326 投影到 EPSG:3857 以显示它们。

您的好选择是:

  • 在 Web Mercator 中查找不同的底图
  • 找到一个网络服务,它可以即时重新投影您拥有的瓷砖

也许有某种方法可以让 Mapbox-GL-JS 认为它在 EPSG:3857 中显示你的图块,然后以某种方式调整覆盖数据集的坐标,以便当它们从 EPSG:4326 重新投影到 EPSG:3857 时,它们最终会在正确的位置。但我想不出如何实现这一目标。

您可以尝试在 gis.stackexchange.com 上询问。


推荐阅读