Hay varios problemas aquí.
En primer lugar, permítanme citar http://leafletjs.com/examples/wms/wms.html (el énfasis es mío):
También tenga en cuenta que el Prospecto admite muy pocos sistemas de coordenadas: CRS:3857
, CRS:3395
y CRS:4326
(Consulte la documentación de L.CRS
). Si su servicio WMS no sirve de imágenes en los sistemas de coordenadas, es posible que necesite usar Proj4Leaflet el uso de un sistema de coordenadas diferente en el Prospecto. Aparte de eso, sólo utilizar el derecho de CRS al inicializar el mapa, y cualquiera de las capas WMS añadido va a usar:
var map = L.map('map', {
crs: L.CRS.EPSG4326
});
var wmsLayer = L.tileLayer.wms('http://demo.opengeo.org/geoserver/ows?', {
layers: 'nasa:bluemarble'
}).addTo(map);
El código en su violín hace lo contrario, se especifica el CRS como una opción para la capa wms, en lugar de como una opción para el mapa:
wmsBKLayer = new L.tileLayer.wms('http://eumetview.eumetsat.int/geoserv/wms', {
layers: 'bkg-raster:bkg-raster',
crs: customCRS
}
var map = new L.map('map', {
// No CRS option here!!
});
Especificar la CRS en las opciones del mapa, y usted debería estar bien.
Segundo, la creación de instancias de objeto. Folleto utiliza camelCase con la primera letra en mayúsculas para las clases (por ejemplo L.TileLayer
es una clase), y camelCase comenzando con la letra minúscula para los métodos de fábrica (por ejemplo L.tileLayer
es un método de fábrica).
var foo = L.tileLayer(...); // Preferred
var foo = new L.TileLayer(...); // OK, but not preferred
var foo = L.TileLayer(...); // Nope, one cannot call a class
var foo = new L.tileLayer(...); // Nope nope nope nope, one cannot create an instance of a factory
Por favor, lea "https://stackoverflow.com/questions/8698726/constructor-function-vs-factory-functions" si usted encuentra este confuso.
Tercero, citando https://kartena.github.io/Proj4Leaflet/ :
Está usted usando Folleto 1.0 beta 1 o versiones de desarrollo de Folleto? Entonces usted necesita para utilizar la rama de desarrollo de Proj4Leaflet.
Esto significa que no hay ninguna versión de proj4leaflet que trabaja con Prospecto 1.
En su violín, está utilizando el Folleto de la versión 1.0.2 y proj4leaflet 0.7.2. Aquellos que simplemente no trabajan juntos.
Utilizar una versión inferior de Prospecto, o construir (y de implementar y usar una versión más reciente de proj4leaflet. Por favor, tenga en cuenta que proj4leaflet podría utilizar un poco de ayuda con su mantenimiento, como @liedman ya no puede soportar.
Si usted tiene el tiempo, le sugiero que ponerse en contacto con la corriente de los mantenedores, con el fin de ayudar con una nueva versión compatible con el Prospecto 1.0.0.
Si uno se dirige a estos tres problemas, todo va a funcionar de nuevo. Ver un ejemplo de trabajo en:
https://playground-leaflet.rhcloud.com/giwo/edit?html salida