微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – Leaflet EPSG:31466 WMS图层

我想使用epsg:31466投影创建Leaflet地图.我已经包含了proj4库以及proj4leaflet插件.我计划使用fp_plan层包含this WMS服务.

我试图使用以下方法设置我的地图(fiddle).

// Define CRS (epsg:31466)
var rs31466 = new L.Proj.CRS(
  'epsg:31466',
  '+proj=tmerc +lat_0=0 +lon_0=6 +k=1 +x_0=2500000 +y_0=0 +ellps=bessel +datum=potsdam +units=m +no_defs',
  {
    origin: [
      2490547.1867, 
      5958700.0208
    ],
    resolutions: [
      10000000 * 0.00028, //GroundResolutionInMeter * OGC_PixelWidth
      5000000 * 0.00028,
      2500000 * 0.00028,
      1000000 * 0.00028,
      500000 * 0.00028, 
      250000 * 0.00028,
      100000 * 0.00028,
      50000 * 0.00028
    ]
  }
);

// Create the WMS layer
var wmsLayer = L.tileLayer.wms('http://xplanung.lkee.de/xplan-wms-neu/services/wms', {
    version: '1.3.0',
    crs: rs31466,
    layers: 'fp_plan',
    format: 'image/png',
    transparent: false,
    // The `continuousWorld` property should be set to make sure Leaflet doesn't 
    // try to wrap or cut off the tiles on Spherical Mercator's bounds.
    continuousWorld: true
});

// Define the map
var map = L.map('map', {
  crs: rs31466,
  center:[51.310, 13.393],
  zoom: 1,
  layers: [
    wmsLayer
  ]
});

我希望看到这样的事情:

请求切片但该部分不包含预期的图层信息.如果我使用epsg:25833投影,则会以预期的方式获取并完全呈现图块(fiddle).

解决方法:

我已经掏出an example改变了瓷砖坐标的原点并添加一个矩形来检查一般的地理坐标.

它确实请求了瓷砖,在我看来,请求的BBoxes的坐标很好,但我只能看到白色瓷砖.

也许这个例子可以帮助你看出什么是错的?

[编辑]

Leaflet似乎不尊重自定义CRS上WMS 1.3请求的坐标顺序(北向东或东向北).我认为这是一个传单错误.

在此期间,我updated the example与黑客L.TileLayer.WMS.getTileUrl函数 – 现在似乎加载好.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐