transformations SLD¶
Cette séction montre comment GeoServer fournit un certain nombre de fonctions de filtrage qui peuvent efféctivement manipuler les géométries en les transformant en une chose de différente: c’est ce que nous appelons geometry transformations in SLD.
extraction des sommets¶
En utilisant les compétences acquises dans la séction adding styles, crèons un nouveau style nommé mainrd_transform en utilisant le suivant SLD:
<?xml version="1.0" encoding="ISO-8859-1"?> <StyledLayerDescriptor version="1.0.0" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd"> <NamedLayer> <Name>Roads and vertices</Name> <UserStyle> <FeatureTypeStyle> <Rule> <LineSymbolizer> <Stroke /> </LineSymbolizer> <PointSymbolizer> <Geometry> <ogc:Function name="vertices"> <ogc:PropertyName>the_geom</ogc:PropertyName> </ogc:Function> </Geometry> <Graphic> <Mark> <WellKnownName>circle</WellKnownName> <Fill> <CssParameter name="fill">#FF0000</CssParameter> </Fill> </Mark> <Size>6</Size> </Graphic> </PointSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor>
Note
Les fonctions
vertices
renvoie un multi-point réalisés avec tous les sommets de la géométrie d’origineEn utilisant les compétences acquises dans la séction adding styles, modifiez le style de la couche
Mainrd
et ajoutezmainrd_transform
comme un autre style (selectionnez le stylemainrd_transform
dans la première liste en bas “available styles” et puis utilisez la fleche de droite pour le déplacer dans les “selected styles”):
![../_images/tx_secondary_style.png](../_images/tx_secondary_style.png)
ajouter le style mainrd_transform comme un style secondaire pour Mainrd
Utilisez le lien avant-première pour montrer la couche Mainrd, puis ouvrez le box des options et choisissez le style suppléant du ménu descente:
Extraire et montrer les vertices d’une géometrie
Line buffer¶
En utilisant les compétences acquises dans la séction geoserver.addstyle, créez un nouveau style mainrd_buffer en utilisant le suivant SLD
<?xml version="1.0" encoding="ISO-8859-1"?> <StyledLayerDescriptor version="1.0.0" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd"> <NamedLayer> <Name>Roads and vertices</Name> <UserStyle> <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Geometry> <ogc:Function name="buffer"> <ogc:PropertyName>the_geom</ogc:PropertyName> <ogc:Literal>200</ogc:Literal> </ogc:Function> </Geometry> <Fill> <CssParameter name="fill">#7F7F7F</CssParameter> <CssParameter name="fill-opacity">0.3</CssParameter> </Fill> </PolygonSymbolizer> <LineSymbolizer> <Stroke /> </LineSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor>
Note
La fonction
buffer
construit un polygone de tous les points dans une distance spécifique de la géométrie originelle.Comme précédemment, modifiez le style de la couche
Mainrd
et ajoutezmainrd_buffer
comme un autre style:
![../_images/tx_secondary_style_buffer.png](../_images/tx_secondary_style_buffer.png)
Ajouter le style mainrd_buffer comme un style secondair for Mainrd
Utilisez le Map Preview pour visualiser l’avant-première du nouveau style.
Extraire les points de début et de fin d’une ligne