如何在react-leaflet中使用proj4lefleat?

时间:2017-03-24 13:43:44

标签: react-leaflet proj4

我有一个工作反应传单我需要重新定义以保存自定义投影(ETRS89 / UTM区域32N,EPSG:25832),因为Leaflet发送的默认EPSG:3857 WMS请求正在生成一个移位的地图(所以市政府我使用的数据告诉我使用他们的原生投影)。

我可以导入proj4leaflet并像这样定义投影:

import "proj4leaflet";
const crs = new Leaflet.Proj.CRS(
    'EPSG:25832',
    '+proj=utm +zone=32 +ellps=GRS80 +units=m +no_defs ',
    {
        resolutions: [
            8192, 4096, 2048, 1024, 512, 256, 128,
            64, 32, 16, 8, 4, 2, 1, 0.5
        ],
        origin: [0, 0]
    });

当我将其添加到我的地图时:

<Map
  center={center}
  zoom={zoom}
  className="Map"
  onClick={onClick}
  crs={crs}
  >

我的WMSTileLayer和我的TileLayer都不会在之后呈现。调试这个的最佳方法是什么?请注意,由于我使用的是Open Government Data WMS,因此我无法访问我要查询的服务器,所以我无法在那里看到日志。

1 个答案:

答案 0 :(得分:0)

谢谢,埃文。在整理JSFiddle示例时,我发现了该错误(我在Proj4 Library链接中有错误的引用)。

const crs = new window.L.Proj.CRS

我在这里添加了其他人的工作示例作为参考:JSFiddle Example of Proj4 Leaflet Map CRS