Re: [Portugal] SLD - Estilo em função dos atributos
Pedro Mendes
p.m.g.mendes gmail.com
Sábado, 7 de Janeiro de 2012 - 17:10:42 EST
O elemento Size só existe no contexto de um Graphic que, por sua vez, só é
utilizado no PointSymbolizer. Um exemplo com a utilização de expressão
matemática de divisão:
<PointSymbolizer>
<Graphic>
<Mark>
<WellKnownName>triangle</WellKnownName>
<Fill>
<CssParameter name="fill">#FFFFFF</CssParameter>
</Fill>
</Mark>
*<Size>*
* <ogc:Div>*
* <ogc:PropertyName>{atributo}</ogc:PropertyName>*
* <ogc:Literal>10</ogc:Literal>*
* </ogc:Div>*
* </Size>*
</Graphic>
</PointSymbolizer>
Para labeling será necessário utilizar um TextSymbolizer. Penso que para
atingir o mesmo objetivo do Size, neste symbolizer o seguinte será
aplicável:
<TextSymbolizer>
<Label>
aminhalabel
</Label>
<Font>
<CssParameter name="font-family">Arial</CssParameter>
* <CssParameter name="font-size">*
* <ogc:Divl>*
* <ogc:PropertyName>{atributo}</ogc:PropertyName>*
* <ogc:Literal>10</ogc:Literal>*
* </ogc:Div>*
* </CssParameter>*
<CssParameter name="font-style">Normal</CssParameter>
<CssParameter name="font-weight">Normal</CssParameter>
</Font>
...
Nota: não testei este TextSymbolizer.
Ajuda sempre consultar o schema do SLD para perceber como o styling pode
ser feito. O GeoServer traz incluidos na distro todos schemas com a cujos
os standards estão implementados, entre eles, *
<geoserver_dir>/schemas/filter/1.1.0/filter.xsd* e *
<geoserver_dir>/schemas/sld/StylelayerDescriptor.xsd*.
Esper que ajude.
Mendes.
2012/1/5 Marco Afonso <mafonso333 at gmail.com>
>
> Viva,
>
> Estive a ler na referencia de SLD em
> http://docs.geoserver.org/stable/en/user/styling/sld-reference/index.html,
> bem como o cookbook
> http://docs.geoserver.org/stable/en/user/styling/sld-cookbook/index.html mas
> não encontrei uma solução para a seguinte questão:
>
> Por exemplo, no <PointSimbolizer> é possivel alterar o <Size> em função do
> valor num atributo, ou numa expressão contendo um atributo? Apenas
> encontrei exemplos tendo o Size como valor fixo, mesmo aplicando filtros...
>
> Seria óptimo poder fazer algo como:
>
> <Size>
>
> <PropertyExpr>
>
> <PropertyName>{atributo}</PropertyName>
>
> <Expr>%d/10</Expr>
>
> </PropertyExpr>
>
> </Size>
>
>
> O tamanho seria igual ao valor do atributo a dividir por 10.
>
> Obrigado.
>
> Marco
>
> _______________________________________________
> Portugal mailing list
> Portugal at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/portugal
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/portugal/attachments/20120107/fc935336/attachment.html
Mais informações acerca da lista Portugal