맵을 이용한 정보 공유, 맵 커뮤니케이터 기능 소개

지도를 활용하여 정보를 공유하고, 업무에 효율적으로 활용할 수 있는 맵 커뮤니케이터 기능에 대한 소개입니다. 맵 커뮤니케이터, 의미 그대로 지도를 이용한 의사소통 기능이고 NexGen에서 제공하는 기능입니다.

맵 커뮤니케이터에서 제공하는 기능은 대화를 기본으로 지도를 활용한 위치 공유, 지도 위에 스케치한 정보 공유 기능입니다. 그리고 다양한 파일을 공유할 수 있는데, 대용량의 파일도 문제 없이 공유할 수 있습니다.

아래는 시연 영상인데요, 교통사고를 주제로하여 구성해 보았습니다.

지도를 이용해 함께 분석하고 그 결과를 바로 공유할 수 있는 기능이 업무에 효과적일 수 있습니다.

아래는 NexGen 시스템의 구성에 대한 이해를 돕기 위한 간단한 구성도인데요.

NexGen은 하나의 완성된 솔루션으로써 미들웨어인 GeoService-Xr와 클라이언트 GIS 엔진인 FingerEyes-Xr로 개발되어 있습니다. NexGen은 IE, Chrome 등과 같은 웹브라우져에서 무리없이 실행됩니다. 속도면에서는 Chrome을 권장합니다. GeoService-Xr은 GS인증을 받은 제품으로 공간 데이터 서비스, 공간 분석 서비스, 맵 커뮤니케이터 서비스 등을 제공하며 빠른 속도와 서버 프로그램으로써의 안정성이 뛰어납니다. FingerEyes-Xr은 웹 GIS 엔진으로써 오픈소스로 GitHub에 공개되어 있습니다. 편집 기능와 미려한 지도 표출 기능 등이 유사한 제품에 비교하여 뛰어납니다.

위치기반 CCTV 관리 솔루션의 경로 검색

위치기반 CCTV 관리 솔루션은 GIS를 활용하여 CCTV를 효과적으로 관리하고 활용할 수 있는 시스템입니다. CCTV를 검색할 때, 위치의 관점에서 검색할 수 있는데.. 공간 검색 기능 중에 하나가 “경로 검색”입니다. 사용자가 지도 상에서 경로를 지정하면, 해당 경로에 일정한 버퍼 영역을 형성하고, 형성된 버퍼에 포함되는 CCTV를 검색해 주는 기능입니다. 아래의 동영상은 이러한 기능에 대한 소개 동영상입니다.

GIS 기반의 CCTV 시스템에서는 지도 위에 여러 개의 CCTV 영상을 동시에 표시하게 되는데, 이때 CCTV 영상들이 서로 겹치게 되어 사용자를 혼란스럽게 만듭니다. 이런 경우 지도 위의 CCTV 영상의 위치를 사용자가 변경할 수 있도록 유도하는 기능을 제공합니다. (참고: 위의 동영상에서 CCTV 영상은 실제 위치와 아무런 관련이 없습니다.)

GeoService-Xr, 무안군 공간정보 항공영상시스템 서비스에 적용

GeoService-Xr을 기반 서버로 하는 공개 소프트웨어인 NexGen은 어떠한 플러그인 없이 순수한 웹 기술만으로 고품질의 지도 표출과 공간 데이터를 활용한 다양한 분석 결과를 제공하는 제품이다.

NexGen의 주요 기능에 대한 소개는 아래의 이미지를 클릭하면 실제 시연 동영상을 통해 그 내용을 쉽게 이해할 수 있다.

NexGen은 GIS의 기본이 되는 기능을 높은 품질로 개발되어 매우 안정적이고 빠른 속도로 활용할 수 있으며, 이 기반 위에 업무에 필요한 기능을 추가하거나, 커스터마이징하여 개발 기간을 단축할 수 있다.

이러한 NexGen에 년도별로 구축된 다수의 항공영상을 시계열로 살펴볼 수 있는 기능을 중심으로 커스터마이징되어, 올해 하반기 무안군에 “공간정보 항공영상 시스템”으로 납품되어 업무에 활용되고 있으며 이에 대한 기사는 아래와 같다.

무안군, 고품질 대민행정 위한 항공영상시스템 본격 가동

또한 2018년 11월 말에는, NexGen 위에 CCTV를 공간정보시스템에서 매우 효과적으로 활용할 수 있는 기능을 개발 완료하여 임실군청에 솔루션으로써 납품되기도 하였다.

(위의 이미지의 CCTV 영상과 주소 등은 실제 상황과는 무관하며, 테스트를 위한 설정임)

위치기반 CCTV 관리 솔루션은 NexGen과 GeoService-Xr의 확장 기능으로써, 더 많은 관공서에서 손쉽고 빠르게 도입할 수 있도록 조달청에 등록할 예정이다. 참고로 GeoService-Xr은 이미 GS인증 1등급 제품이다.

GeoService-Xr과 FingerEyes-Xr의 On-The-Fly-Projection 적용하기

다양한 좌표계가 존재하므로, 사용자마다 자신이 가지고 있는 공간 데이터마다 서로 다른 좌표계를 적용하고 있습니다. 이러한 서로 다른 좌표계의 공간 데이터를 DBMS에 Import할때, 좌표계를 명시해 주고, 이를 사용하는 클라이언트 단에서는 서로 다른 좌표계를 하나의 기준 좌표계로 변환하여 사용하게 됩니다. 그래야 레이어로써의 여러개의 지도가 하나의 지도로 중첩됩니다.

GeoService-Xr과 FingerEyes-Xr에서도 서로 다른 좌표계에 대해 동적으로 좌표계를 변환해 단일 좌표계로 변환해 레이어를 중첩해 주는 On-The-Fly-Projection 기능을 제공합니다. 이를 위해서는 서버인 GeoService-Xr 과 클라이언트인 FingerEyes-Xr에서 간단한 설정이 필요한데요. 이 내용을 정리해 봅니다.

먼저 서버인 GeoService-Xr에서는 DBMS에 저장된 공간 데이터를 GeoData라는 단위로 관리하는데, 이 GeoData를 정의하는 xml 파일의 내용에 EPSG를 설정할 수 있습니다. 아래의 예와 같습니다.


    parcel
    muan_db://public."parcel"
    5186



    link
    network://public."link"
    5179

위의 내용은 parcel이라는 GeoData의 좌표계는 EPSG:5186이고, link라는 GeoData의 좌표계는 EPSG:5179라는 것을 명확히 하고 있습니다.

다음은 클라이언트 단의 코드인데요. 클라이언트 단에서 공통 좌표로 사용하고자 하는 좌표계를 아래처럼 지정하면 됩니다.

map.EPSG(5186);

위의 코드에 의해 클라이언트 단에서 사용하는 단일 좌표계는 EPSG:5186으로써, 만약 서버 단에서 이와 다른 좌표계의 데이터가 오면 이를 EPSG:5186으로 변환하도록 합니다. (명확히는 서버단에서 좌표계 변환을 수행함)

아래의 그림은 서로 다른 좌표계를 가지는 parcel(지적도로 EPSG:5186)와 link(네트워크 링크로 EPSG:5179)가 하나의 단일 좌표계(EPSG:5186)으로 변환되어 정확히 그 위치가 일치되는 것을 보여주고 있습니다.