[OpenLayers-Users] SLD PointSymbolizer - size defined with
variable
Bart van den Eijnden
bartvde at osgis.nl
Fri Jun 4 10:09:03 EDT 2010
Sorry I did not read properly, please ignore my post :-)
Best regards,
Bart
On Jun 4, 2010, at 4:08 PM, Bart van den Eijnden wrote:
> Use ${myattributename}, see e.g. vector-features-with-text.html in the examples dir.
>
> Best regards,
> Bart
>
> On Jun 4, 2010, at 4:00 PM, Martin.L wrote:
>
>>
>> Keywords: GeoServer 2.0.2, OpenLayers, SLD
>>
>> Hey there!
>>
>> Is it possible to define the size of a PointSymbolizer with a variable? So
>> far the SLD-Code looks like this:
>>
>>
>> [...]
>> <Rule>
>> <Title>Magnitude < 3</Title>
>> <ogc:Filter>
>> <ogc:PropertyIsLessThan>
>> <ogc:PropertyName>magnitude</ogc:PropertyName>
>> <ogc:Literal>3</ogc:Literal>
>> </ogc:PropertyIsLessThan>
>> </ogc:Filter>
>> <PointSymbolizer>
>> <Graphic>
>> <Mark>
>> <WellKnownName>circle</WellKnownName>
>> <Fill>
>> <CssParameter name="fill-opacity">0.4</CssParameter>
>> <CssParameter name="fill">#FF0000</CssParameter>
>> </Fill>
>> </Mark>
>> <Size>4</Size>
>> </Graphic>
>> </PointSymbolizer>
>> </Rule>
>> [...]
>>
>>
>> Now I want to replace the constant size 4 with a variable which contains a
>> double value (magnitude). How can I realize it?
>>
>> I found an idea with GeoServer 2.0.2. Perhaps you find a further solution
>> for it. With GeoServer 2.0.2 you can use Parameter substitution in SLD (
>> http://docs.geoserver.org/stable/en/user/styling/sld-extensions/substitution.html
>> Parameter Substitution ). So I made a new SLD looks like this:
>>
>>
>> [...]
>> <PointSymbolizer>
>> <Graphic>
>> <Mark>
>> <WellKnownName>circle</WellKnownName>
>> <Fill>
>> <CssParameter name="fill">
>> #<ogc:Function name="env">
>> <ogc:Literal>color</ogc:Literal>
>> <ogc:Literal>FF0000</ogc:Literal>
>> </ogc:Function>
>> </CssParameter>
>> </Fill>
>> </Mark>
>> <Size>
>> <ogc:Function name="env">
>> <ogc:Literal>size</ogc:Literal>
>> <ogc:Literal>6</ogc:Literal>
>> </ogc:Function>
>> </Size>
>> </Graphic>
>> </PointSymbolizer>
>> [...]
>>
>>
>> With this SLD you can manipulate the WMS-request with a env-Parameter in a
>> adressbar or in OpenLayers WMS-request looking like this:
>>
>>
>> earthquakes = new OpenLayers.Layer.WMS(
>> "Earthquakes",
>> "/geoserver/wms?",
>> {
>> layers: "cite:EarthquakeView",
>> env: "size:16", //<<------
>> transparent: "true"
>> },
>> {
>> buffer: 0,
>> visibility: true,
>> isBaseLayer: false,
>> displayInLayerSwitcher: true
>> }
>> );
>>
>>
>> Is it possible to get a value from WMS-request from GeoServer or from my db
>> where the data is stored? If it is, I could add this value to the
>> env-parameter.
>>
>> A great thank you in advance.
>> Martin
>> --
>> View this message in context: http://osgeo-org.1803224.n2.nabble.com/SLD-PointSymbolizer-size-defined-with-variable-tp5139542p5139542.html
>> Sent from the OpenLayers Users mailing list archive at Nabble.com.
>> _______________________________________________
>> Users mailing list
>> Users at openlayers.org
>> http://openlayers.org/mailman/listinfo/users
>>
>
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
More information about the Users
mailing list