[Gvsig_desarrolladores] importar una leyenda que está en fichero gvsleg

Ana Calle nico200307 en gmail.com
Jue Oct 8 12:20:50 CEST 2015


Pues muchas gracias Joaquín!!
se entiende bien, voy a intentar traducirlo a java que es el entorno en el
que estoy trabajando, y ya te cuento.

Gracias por la celeridad de respuesta.
saludos
Ana

El 8 de octubre de 2015, 12:17, Joaquin Jose del Cerro Murciano <
jjdelcerro en gvsig.org> escribió:

>
>
> El 8 de octubre de 2015, 9:42, Ana Calle <nico200307 en gmail.com> escribió:
>
>> hola a todos,
>> estoy intentando cargar sobre una capa, una leyenda que tengo guardada en
>> fichero 'gvsleg' (version 2.2), No se si esto es posible.
>> Con versiones anteriores cargábamos leyendas tipo *.gvl ya que se trataba
>> de un fichero xml
>> (algo como LegendFactory.createFromXML(new XMLEntity(XmlTag));)
>>
>> ¿alguien puede aportar alguna pista sobre cómo se procedería con el
>> actual formato de fichero?
>>
>>
> Hola Ana,
> te pego un pequeño script que carga una leyenda y la asigna a la capa
> activa.
> No esta en java pero es fácil de probar y creo que se entiende bastante
> bien.
>
>
>
> #-----------------------------><---------------------------------><-----------------------
> from gvsig import *
>
> from java.io import File
>
> from org.gvsig.fmap.mapcontext import MapContextLocator
> from org.gvsig.fmap.geom import Geometry
>
> def main(*args):
>   layer = currentLayer()
>   if layer == None:
>     msgbox("Debera seleccionar una capa para ejecutar este script.")
>     return
>
>   # Fichero donde se encuentra la legenda a cargar
>   # Cambiar la ruta para adaptarla a donde haya un fichero gvsleg en el
> equipo.
>   f =
> File("/home/jjdelcerro/datos/geodata/vector/shp2d/world_4326/country-l.gvsleg")
>
>   # Lo primero conseguimos el reader de la legenda de tipo "gvsleg"
>   mapContextManager = MapContextLocator.getMapContextManager()
>   legendreader = mapContextManager.createLegendReader("gvsleg")
>
>   # Cargamos la legenda
>   legend = legendreader.read(f,Geometry.TYPES.GEOMETRY)
>
>   # Y se la aplicamos a la capa activa
>   layer.setLegend(legend)
>
> #-----------------------------><---------------------------------><-----------------------
>
> Lo que no deberías hacer nunca es intentar leer e interpretar el fichero
> gvsleg, ya que el formato de este puede sufrir algún cambio de una versión
> a otra y dejaría de irte tu código.
>
> La otra cosa que tienes que tener en cuenta que no todas las leyendas se
> pueden aplicar a todas las capas, ya que estas pueden ser dependientes del
> tipo de geometría y la estructura de la tabla.
>
> Espero que te sirva.
> Si tienes alguna duda pregunta, cuando tenga un ratito intento contestar.
>
> Un saludo
> Joaquin
>
>
>
>> Muchas gracias de antemano
>> Saludos
>>
>> Ana
>>
>> _______________________________________________
>> gvSIG_desarrolladores mailing list
>> gvSIG_desarrolladores en listserv.gva.es
>> Para ver histórico de mensajes, editar sus preferencias de usuario o
>> darse de baja en esta lista, acuda a la siguiente dirección:
>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>
>>
>
>
> --
> --------------------------------------
> Joaquin Jose del Cerro Murciano
> Development and software arquitecture manager at gvSIG Team
> jjdelcerro en gvsig.com
> jjdelcerro en gvsig.org
> gvSIG Association
> www.gvsig.com
> www.gvsig.org
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse
> de baja en esta lista, acuda a la siguiente dirección:
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20151008/d7441804/attachment.htm 


Más información sobre la lista de distribución gvSIG_desarrolladores