OpenLayers: Wie formatiere ich eine WFS-Ebene mit einer SLD-Datei?


14

Ich experimentiere mit einem einfachen Web-Mapping-Dienst, der auf dem PostGIS / GeoServer / OpenLayers-Stack unter Win 2008 Server basiert.

Ich überlagere die Vektorebene von PostGIS mit:

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"
        })
});

Die Ebene wird korrekt angezeigt, jedoch im einfachen Standardstil [?] Von GeoServer.

Ich habe eine SLD-Datei mit uDig erstellt und es scheint korrekt zu sein, da der WMS-Dienst sie ohne Probleme verwendet. Kann ich damit auch WFS-Layer stylen?

Antworten:


8

Schauen Sie sich das Beispiel "Styled Layer Descriptor (SLD)" von OL an. . Sie verwenden SLD, um GML zu formatieren, sollten aber auch für WFS (eine Vektorebene) funktionieren.

Gutschrift: OLs Nabble.com-Forum


Das ist cool - ich wusste nicht, dass du das kannst.
Ian Turton

Ich habe es noch nie benutzt, aber ich dachte, ich hätte es schon einmal gesehen, also musste ich im guten alten vertrauenswürdigen Nabble.com-Forum recherchieren. Füllen wir jedoch weiterhin die SO GIS-Tafel aus.
Vadim

2
Aber in gewisser Weise haben Sie Recht, dass Sie immer noch dafür verantwortlich sind, es auf dem Client zu gestalten, oder? Es ist nicht auf dem Server. Sie können jedoch mit einem vorgefertigten SLD auf dem Client stylen.
Vadim

3
Es scheint, dass die Verbindung unterbrochen ist. Könnten Sie erklären, wie das geht, oder bitte einen neuen Link bereitstellen?
Ravi Mehta


1

Ja, Sie können die wfs-Ebene in OpenLayer laden, dann die sld-Datei in eine OpenLayer-Stylemap analysieren und auf die wfs-Ebene anwenden.

Alternativ können Sie die sld als Standard-sld an die geoserver-wfs-Ebene anhängen. Laden Sie dann die wfs-Ebene in OpenLayer und geben Sie im request-Parameter ein Bildformat (zB image / png oder image / jpeg) an. Einmal geladen, speichern Sie es als Openlayers.Layer.WMS-Objekt. Dadurch wird der Layer als Raster-Layer gerendert, wobei die angehängte sld bereits von Geoserver angewendet wurde.


0

Die OGC-Definition für sld besagt, dass dies für WMS gilt

Das OpenGIS® Styled Layer Descriptor (SLD) -Profil des OpenGIS® WMS-Codierungsstandards (Web Map Service)

so !

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.