[Gvsig_usuarios] Símbologia de capa con script
Oscar Martinez
omartinez en gvsig.com
Lun Jun 19 12:00:39 CEST 2017
Perdón, faltan los imports. A lo mejor falta alguno por poner:
from org.gvsig.symbology.fmap.mapcontext.rendering.legend.impl import
SingleSymbolLegend
from org.gvsig.symbology.fmap.mapcontext.rendering.symbol.fill.impl
import SimpleFillSymbol
from org.gvsig.symbology.fmap.mapcontext.rendering.symbol.line.impl
import SimpleLineSymbol
from java.awt import Color
El 19/06/2017 a las 11:59, Oscar Martinez escribió:
>
> Buenas,
>
>
> Te pego dos funciones que hice el otro día para dar simbologia a una
> capa de polígonos.
>
>
> La primera es para crear un relleno vacio con una línea única roja. La
> segunda, es para una simbología por categorías.
>
>
> Por ejemplo, una de las cosas que quería añadir era que al crear la
> simb por categorías en vez de sacar colores random se asegurara (o
> cogiera de una lista predeterminada) colores que se distingan entre
> ellos y sean buenos para una visualización.
>
>
> Espero te sirva.
>
> Saludos
>
>
> def createLineLegendForParcel():
> newcolor = Color(204, 0, 0)
> simpleline = SimpleLineSymbol()
> simpleline.setLineWidth(3.0)
> simpleline.setAlpha(1)
> simpleline.setColor(newcolor)
> simplesymbol = SimpleFillSymbol()
> simplesymbol.setColor(newcolor)
> simplesymbol.setHasFill(False)
> simplesymbol.setOutline(simpleline)
> singlelegend = SingleSymbolLegend(simplesymbol)
> return singlelegend
>
> def createRefcatLegendForParcel(layer, nameField="localId"):
> from org.gvsig.symbology.fmap.mapcontext.rendering.legend.impl
> import VectorialUniqueValueLegend
> vuv = VectorialUniqueValueLegend(9)
> features = layer.features()
> import random
> for f in features:
> simplesymbol = SimpleFillSymbol()
> newcolor = Color(random.randint(0,250),
> random.randint(0,250), random.randint(0,250))
> simplesymbol.setColor(newcolor)
> simplesymbol.setDescription(f.get(nameField))
> vuv.addSymbol(str(f.get(nameField)), simplesymbol)
> #Para las vacias
> simplesymbol = SimpleFillSymbol()
> newcolor = Color(random.randint(0,250), random.randint(0,250),
> random.randint(0,250))
> simplesymbol.setColor(newcolor)
> simplesymbol.setDescription("Sin localId")
> vuv.addSymbol("", simplesymbol)
> #print vuv.getValues()
> vuv.setClassifyingFieldNames([nameField])
> return vuv
>
>
> El 19/06/2017 a las 11:54, Ovidio Ribeira escribió:
>>
>> Buenos dias, necesito ayuda para cambiar la simbología de unha capa
>> de polígonos (color de línea y relleno) a través de un script,
>> gracias anticipadas.
>>
>> Saludos
>>
>>
>>
>>
>> _______________________________________________
>> gvSIG_usuarios mailing list
>> gvSIG_usuarios 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:
>>
>> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>
>
>
> _______________________________________________
> gvSIG_usuarios mailing list
> gvSIG_usuarios 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:
>
> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listserv.gva.es/pipermail/gvsig_usuarios/attachments/20170619/0428a953/attachment.html>
Más información sobre la lista de distribución gvSIG_usuarios