4 votos

Número máximo de capas en OpenLayers2 con GeoExt

He estado desarrollando una aplicación web gis que requiere alrededor de 45 capas diferentes servidas desde GeoServer. He creado capas WMS de OpenLayers y las he añadido a GeoExt. Todo funciona bien hasta la capa 35, después de añadir la capa 36, OpenLayers da mosaicos rosas. Aquí está mi fragmento:

 WGS84 = new OpenLayers.Projection("EPSG:4326");
             WGS84_google_mercator = new OpenLayers.Projection("EPSG:900913");

             map = new OpenLayers.Map({
                 height: '300px',
                 // allOverlays:true,
                 width: '500px',
                 projection: WGS84_google_mercator, displayProjection: WGS84,
                 maxExtent: new OpenLayers.Bounds(80.0509262084961, 26.348379135131836, 88.20467376708984, 30.4458065032959).transform(new OpenLayers.Projection("EPSG:4326"), WGS84_google_mercator),
                 //  )
                 controls: [
        new OpenLayers.Control.Navigation(),
        new OpenLayers.Control.ArgParser(),
        new OpenLayers.Control.Attribution()
                 ]
             });
nnt_dyear_child_layer=new OpenLayers.Layer.WMS("Child Death Rate Yearly",
                         "hostname1/geoserver/wms", {
                             name: 'nnt_indicator_d',
                             layers: "vpdms:nnt_dyear-child", transparent: true,
                             //viewparams: a,
                         }, {
                             layerid: 'nnt_dyear-child_layer',
                             singleTile: true,
                             visibility: false,
                             group: "Indicators/NNT"
                         });
 nnt_dweek_child_layer=new OpenLayers.Layer.WMS("Child Death Rate Weekly",
                         "hostname1/geoserver/wms", {
                             name: 'nnt_indicator_d',
                             layers: "vpdms:nnt_dweek-child", transparent: true,
                             //viewparams: a,
                         }, {
                             layerid: 'nnt_dweek-child_layer',
                             singleTile: true,
                             visibility: false,
                             group: "Indicators/NNT"
                         });
map.addLayers([nnt_dweek_child_layer,nnt_dyear_child_layer]);

and finally  a geoext tree to hold the layer list:
tree1 = new GeoExt.ux.tree.LayerTreeBuilder({
                 region: "west",
                // title: "Layers",
                 renderTo: 'layers',
                 width: 240,
                 height:200,
                 autoScroll: true,
                 rootVisible: false,
                 lines: false,
                 enableDD :true,
                 // widget custom properties
                 wmsLegendNodes: true,
                 vectorLegendNodes: true
             });

He utilizado capas base de google. Estoy usando openlayers 2.11 y geoext 2 Por cierto ya he leído Aquí y Oficial Aquí Cualquier ayuda sería estupenda.

2voto

Mephisztoe Puntos 1182

Como se indica aquí :

El límite es de unos 75. Después de eso, las capas pueden aparecer encima de las ventanas emergentes. Esto tiene que ver con el z-index en CSS (determina qué está 'por encima' de qué). Las capas (superpuestas) empiezan con un índice z de 325. Las ventanas emergentes empiezan en 750. Las ventanas emergentes empiezan a 750. Los controles empiezan en 1000.

Cada capa "ocupa" unos 5 índices, por lo que alcanzará su límite en torno a las 75 capas. No puedes tener más de 250 ventanas emergentes por la misma razón.

Si necesita más de 75 capas, considere la posibilidad de destruir las que no muestra en lugar de ocultarlas y volver a crearlas cuando sea necesario.

Por lo tanto, su problema debe estar en la capa 36. Tal vez, usted necesita hacer primero una validación de la geometría de esa capa. (O tal vez tiene una EPSG diferente).

0 votos

No, todas las capas están en la misma proyección y si quito la capa 30 y añado 36 (es decir, si el total es 35, el problema no se produce), pero si añado la capa 37, aparecen los azulejos rosas.

1 votos

Debe haber alguna pista en el registro de GeoServer. Por favor, comprueba el mensaje de error cuando aparezcan los azulejos rosas.

1 votos

Por favor, publique esto como respuesta.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X