GeOnDT와 GeOnPass에서 출력되는 WMS 의 형태가 다른 이유는 WMS를 요청하는 방법의 차이입니다.
*GeOnPass 는 non-tiledWMS 의 형태로 요청합니다. 타일 각각의 영역마다 wms를 요청하는것이 아닌 큰 영역의 서비스 이미지를 가져와 출력하는 방법입니다.
*GeOnDT는 타일 개별 영역으로 WMS를 호출합니다. => 3D 서비스의 특성상 2D보다 화면에 출력되는 영역이 상당히 큽니다. => 화면에 보이는 전체 영역을 non-tiledWMS로 요청시 엄청난 부하가 발생합니다.
=>LOD가 적용된 타일 개별 영역에 대한 WMS를 호출합니다. => 개별 WMS를 요청시 요청마다 라벨이 입력된 이미지를 서버가 서비스 합니다. => 라벨이 많이 보이는 현상, 문의 해주신 현상이 나타납니다.

- GeOnDT의 wms 호출

- vworld도 동일한 방식 사용
*문의글에 올려주는 카카오 맵의 표현은 카카오 맵이 WMS로 호출하여 지적도를 출력하는게 아니고, 직접 스타일 설정이 된 타일링 데이터를 사용하고 있습니다.

-카카오맵 지적도 리퀘스트 -> wms 아님, XYZ 형태 => 자체적 스타일링, 타일링 실행 했음
따라서 Client 영역에서 해결할 수있는 방법은 상당히 제한됩니다.
1. WMS 서버 설정 및 기술적 해결책
① 메타타일링(Meta-tiling) 활성화
GeoServer 등 대부분의 현대적인 WMS 서버는 '메타타일' 기능을 지원합니다. 여러 작은 타일을 하나의 큰 이미지로 먼저 렌더링한 후 자르는 방식을 사용하여 타일 경계에서의 중복을 줄입니다.
② SLD (Styled Layer Descriptor) VendorOptions 조정
SpaceAround: 라벨 주변에 공간을 두어 밀집도를 조절합니다. spaceAround 값을 주어 중복 배치를 피할 수 있습니다.
Partial Labels (Partials): 라벨이 타일 경계에 걸칠 때 처리 방식을 제어합니다.
③ 폴리곤 centroid(중심점) 사용
폴리곤 전체에 라벨을 동적으로 배치하는 대신, 폴리곤의 중심점(Centroid)을 계산하여 포인트 데이터로 변환 후 라벨링하면 중복을 완벽히 막을 수 있습니다.
④ 라벨 위치 고정 (LineSymbolizer/Polygon)
라인 데이터의 경우 <VendorOption name="followLine">true</VendorOption> 등을 사용하여 배치를 제어하거나, MapServer 같은 경우 LABEL_NO_CLIP 옵션을 통해 라벨이 잘리거나 중복되는 것을 방지할 수 있습니다.
[ Geoserver WMS 라벨 스타일(TextSymbolizer) 설정 팁] 을 참고하시어 서버설정을 바꾸어 주셔야 하겠습니다.
|