[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