OpenLayers: comment styliser la couche WFS avec un fichier SLD?


14

J'expérimente avec un service de cartographie Web simple construit sur la pile PostGIS / GeoServer / OpenLayers sur Win 2008 Server.

Je superpose la couche vectorielle de PostGIS en utilisant:

var Index1v = new OpenLayers.Layer.Vector("Index1 v", {
    strategies: [new OpenLayers.Strategy.BBOX()],
        protocol: new OpenLayers.Protocol.WFS({
            version: "1.1.0",
            url: "http://localhost:1979/geoserver/wfs",
            featureType: "bern_poly_s100",
            featureNS: "http://www.ispm.ch",
            srsName: "EPSG:900913"
        })
});

Le calque s'affiche correctement, mais dans un style par défaut [?] De GeoServer.

J'ai un fichier de style SLD avec uDig et il semble être correct car le service WMS l'utilise sans aucun problème. Puis-je également l'utiliser pour styliser la couche WFS?

Réponses:


8

Jetez un coup d'œil à l'exemple de l'OL "Styled Layer Descriptor (SLD) Example" . Ils utilisent SLD pour le style GML, mais devraient également fonctionner pour WFS (une couche vectorielle).

Crédit: forum OL Nabble.com


C'est cool - je ne savais pas que tu pouvais faire ça.
Ian Turton

Je ne l'ai jamais utilisé mais je pensais l'avoir vu quelque part auparavant, j'ai donc dû rechercher le bon vieux forum Nabble.com. Permet cependant de continuer à remplir la carte SO GIS.
Vadim

2
Mais d'une certaine manière, vous avez raison, vous êtes toujours responsable de le styliser sur le client, non? Ce n'est pas sur le serveur. Mais vous pouvez styliser avec un SLD prédéfini sur le client.
Vadim

3
Il semble que le lien soit rompu. Pourriez-vous expliquer comment procéder ou fournir un nouveau lien, s'il vous plaît?
Ravi Mehta le


1

Oui, vous pouvez charger le wfs-layer dans des openlayers, puis analyser le fichier sld dans un openlayers-stylemap et l'appliquer au wfs-layer.

Alternativement, vous pouvez attacher le sld au geoserver-wfs-layer comme sld par défaut. Ensuite, chargez la couche wfs dans des couches ouvertes et spécifiez un format d'image (par exemple image / png ou image / jpeg) dans le paramètre de demande. Une fois chargé, stockez-le en tant qu'objet Openlayers.Layer.WMS. Cela rendra la couche en tant que couche raster avec le sld attaché déjà appliqué par le géoserveur.


0

La définition OGC pour sld dit que c'est pour WMS

Profil OpenGIS® Styled Layer Descriptor (SLD) de la norme de codage OpenGIS® Web Map Service (WMS)

donc !

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.