botón Refresh en openlayers (actualicen las capas que estén cargadas en el mapa)

304 views
Skip to first unread message

mrf

unread,
May 14, 2014, 5:15:17 PM5/14/14
to geoser...@googlegroups.com
Hola, buena tarde
 Alguien me podría ayudar para integrar el botón Refresh en openlayers, lo que quiero es que al dar clic en ese botón se actualicen las capas que estén cargadas en el mapa.
Espero me puedan ayudar.

Saludos

Al Gal

unread,
May 15, 2014, 2:45:55 AM5/15/14
to geoser...@googlegroups.com
Buenas Arman.

El objeto layers tiene un método redraw.

http://dev.openlayers.org/apidocs/files/OpenLayers/Layer-js.html#OpenLayers.Layer.redraw

Saludos
> --
> --
> Has recibido este mensaje por estar suscripto al grupo "GeoServer en
> Español" de Google Groups.
> Para escribir a este grupo, envía un e-mail a geoser...@googlegroups.com
> Para dejar el grupo, envía un e-mail a
> geoserver-es...@googlegroups.com
> Para más opciones, visita la página del grupo en
> http://groups.google.com/group/geoserver-es?hl=es
> ---
> Has recibido este mensaje porque estás suscrito al grupo "GeoServer en
> Español" de Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus mensajes,
> envía un correo electrónico a geoserver-es...@googlegroups.com.
> Para acceder a más opciones, visita https://groups.google.com/d/optout.



--
Álvaro González Gallardo.
www.alvaroggallardo.es

mrf

unread,
May 15, 2014, 3:09:55 PM5/15/14
to geoser...@googlegroups.com
Ya he intentado con eso pero no me funciona
En esta página utiliza un botón que se llama refrescar mapa, quiero hacer algo similar

Saludos y gracias

Al Gal

unread,
May 16, 2014, 3:02:16 AM5/16/14
to geoser...@googlegroups.com
Buenas.

He estado mirando la página y lo que hacen es una llamada ajax para
cargar de nuevo las capas. Te dejo el método con el que lo hace. De
todas formas, se supone que redraw debería hacer lo mismo. Yo probaría
a hacer el redraw y un map.updateSize después, por si es que se queda
con la cache de la anterior imagen.

function getAjax(url,pars,idDivSucess){
if (Ext.get('divEstadoProceso') != null){
Ext.get('divEstadoProceso').update('Cargando... por favor espere');
}
/**/
cargandoAjax('map');
Ext.get(idDivSucess).update('Cargando... por favor espere');
Ext.Ajax.request({
url: url,
success: function(response) {
Ext.get(idDivSucess).update(response.responseText,true);

if (Ext.get('divEstadoProceso') != null){
Ext.get('divEstadoProceso').update('');
}

maskExt.hide();
},
failure: function errorAjax(){
Ext.get(idDivSucess).update('Se produjo un error al
cargar, intente nuevamente.');

contadorRecursivoError ++;
if (contadorRecursivoError < 6){
getAjax(url,pars,idDivSucess);
} else{
Ext.get(idDivSucess).update('<br><a href="javascript:
getAjax(\''+url+'\',\''+pars+'\',\''+idDivSucess+'\')">refrescar</a><br>Se
produjo un error al cargar...');
}

},
timeout: 20000
});
/**/

mrf

unread,
May 28, 2014, 10:49:11 AM5/28/14
to geoser...@googlegroups.com
Muchas gracias
Lo checaré haber que pasa

Saludos

mrf

unread,
Jun 5, 2014, 11:49:23 AM6/5/14
to geoser...@googlegroups.com
Hola buena tarde
con respeto al refrescar o actualizar la capa es correcto utilizar redraw y map.updateSize de la siguiente manera?:
              {source: "sig",
title: "Escuelas",
                name: "capa:escuela_p",
                selected: true,
group: "escala20",
visibility:false,
                redraw: true,
                updateSize: true,
            }
Cambiando de tema, estoy utilizando la api gxp.print para imprimir mis mapas pero me gustaría agregarle un encabezado a ese diseño de impresión, ¿hay alguna manera de realizarlo modificando ese mismo archivo o printmappanel o printpreview?

Gracias

Saludos 

El viernes, 16 de mayo de 2014 02:02:16 UTC-5, agalla...@gmail.com escribió:

Al Gal

unread,
Jun 5, 2014, 1:53:04 PM6/5/14
to geoser...@googlegroups.com
Pues no se. Yo lo utilizo normalmente como un método del objeto mapa que he creado.

var map = new OpenLayers.map("mapa");
map.updateSize();

El map update size es una sentencia que se usa cuando necesitets refrescar el mapa, dentro de un callback por ejemplo.

En cuanto al otro api que usas no conozco nada.

mrf

unread,
Jun 9, 2014, 1:54:11 PM6/9/14
to geoser...@googlegroups.com
Bueno seguiré investigando.

Gracias por el aporte
Saludos
Reply all
Reply to author
Forward
0 new messages