OpenLayers : SLD 파일로 WFS 레이어의 스타일을 지정하는 방법은 무엇입니까?


14

Win 2008 Server의 PostGIS / GeoServer / OpenLayers 스택에서 간단한 웹 매핑 서비스 빌드를 실험하고 있습니다.

다음을 사용하여 PostGIS에서 벡터 레이어를 오버레이합니다.

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

레이어는 올바르게 표시되지만 GeoServer의 기본 [?] 스타일로 표시됩니다.

uDig를 사용하여 SLD 스타일 파일 빌드를 얻었으며 WMS 서비스가 문제없이 사용하기 때문에 올바른 것 같습니다. WFS 레이어 스타일에도 사용할 수 있습니까?

답변:


8

OL의 "SLD (Styled Layer Descriptor) 예제" 예를 살펴보십시오. SLD를 사용하여 GML의 스타일을 지정하지만 WFS (벡터 레이어)에서도 작동합니다.

크레딧 : OL 's Nabble.com forum


멋지다 – 나는 당신이 그렇게 할 수있는 줄 몰랐다.
Ian Turton

나는 그것을 사용한 적이 없지만 이전에 본 적이 있다고 생각했기 때문에 오래된 신뢰할 수있는 Nabble.com 포럼을 조사해야했습니다. 그러나 SO GIS 보드를 계속 작성하십시오.
Vadim

2
그러나 당신은 여전히 ​​당신이 클라이언트에서 스타일링을 책임지고 있다는 것이 맞습니까? 서버에 없습니다. 그러나 클라이언트에서 사전 작성된 SLD로 스타일을 지정할 수 있습니다.
Vadim

3
링크가 끊어진 것 같습니다. 이 작업을 수행하는 방법을 설명하거나 새 링크를 제공하십시오.
Ravi Mehta


1

예, wfs-layer를 오픈 레이어로로드 한 다음 sld 파일을 openlayers 스타일 맵으로 구문 분석하여 wfs-layer에 적용 할 수 있습니다.

또는 sld를 geoserver-wfs-layer에 기본 sld로 연결할 수 있습니다. 그런 다음 wfs-layer를 오픈 레이어로로드하고 request 매개 변수에 이미지 형식 (예 : image / png 또는 image / jpeg)을 지정하십시오. 일단로드되면 Openlayers.Layer.WMS 객체로 저장하십시오. 그러면 레이어가 지오 서버에 의해 이미 적용된 부착 된 sld가있는 래스터 레이어로 렌더링됩니다.


0

sld에 대한 OGC 정의는 WMS에 대한 것이라고 말합니다.

OpenGIS® Web Map Service (WMS) 인코딩 표준의 OpenGIS® SLD (Styled Layer Descriptor) 프로파일

그래서!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.