모바일 넥스젠의 주소 검색 기능

모바일 넥스젠(Mobile NexGen)은 안드로이드 기반의 GIS 솔루션으로써 기본적인 위치 검색 기능인 주소 검색 기능을 제공합니다. 한국의 주소 체계는 지번주소와 도로명주소를 혼용하고 있는데요. 모바일 넥스젠은 이 두가지 주소에 대한 검색 기능을 모두 제공합니다. 아래의 시연 동영상은 모바일 넥스젠에서 주소를 검색하는 기능에 대한 소개입니다. 주소 검색에 사용되는 DB는 로컬 DB를 기본적으로 사용함으로써 네트워크가 지원되지 않는 현장에서도 주소 …

[Android] XML로부터 View 생성하기

안드로이드는 UI의 구성을 XML로 정의하여 생성한다. 아래는 UI를 위한 XML인 map_legend_item.xml 파일이다. <?xml version=”1.0″ encoding=”utf-8″?> <LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android” android:layout_width=”match_parent” android:layout_height=”wrap_content” android:orientation=”vertical” > <LinearLayout android:paddingHorizontal=”15dp” android:layout_width=”match_parent” android:layout_height=”54dp” android:gravity=”center_vertical” android:orientation=”horizontal”> <Switch android:id=”@+id/swLayerVisibility” android:layout_weight=”0″ android:layout_width=”wrap_content” android:layout_height=”wrap_content” /> <geoservice.nexgen.maplegend.LegendSingleSymbol android:id=”@+id/lssItem” android:layout_width=”36dp” android:layout_height=”36dp” /> <Space android:layout_width=”5dp” android:layout_height=”1px” /> <TextView android:layout_weight=”1″ android:id=”@+id/tvLayerName” android:layout_width=”wrap_content” android:layout_height=”wrap_content” android:textSize=”@dimen/normal_text_size” android:textStyle=”bold” android:text=”LayerName” /> </LinearLayout> </LinearLayout> 위의 XML을 …

[Android] RecycleView 추가하기

몇번을 사용해도 맨날 잊는다. 추후 다시 RecycleView를 사용할때 참조하기 위해 정리해 둔다. 먼저 레이아웃 요소로서 추가한다. <androidx.recyclerview.widget.RecyclerView android:id=”@+id/rvCollectingData” android:layout_width=”match_parent” android:layout_height=”match_parent” /> RecycleView는 유사한 레이아웃을 갖는 내용만 다른 항목에 대한 리스트 UI인데, 먼저 항목을 구성하는 데이터 클래스 정의가 필요하다. package geoservice.nexgen.collectingdata.datalistactivity import geoservice.nexgen.collectingdata.DataCollectingDB data class DataCollectingListItem( val id: Int, val link_id: Int, val type: DataCollectingDB.Type, val …

[Android] 화면 터치 중 Swiping을 이용한 View 전환

화면 터치가 가능한 모바일 단말기에서 터치를 통한 UI의 조작은 매우 효과적입니다. 이러한 터치 기반의 UI의 활용에 대해 자연스러운 사용은 사용자에게 프로그램의 친밀도를 높여줍니다. 화면 터치에 대한 조작 중 Swiping은 사용자가 화면을 스치듯이 상하좌우로 쓸어넘기는 행위입니다. 이러한 Swiping 중 좌우에 대한 이벤트를 처리하기 위한 클래스는 다음과 같습니다. package geoservice.nexgen import android.content.Context import android.view.GestureDetector import android.view.MotionEvent import …

FingerEyes-Xr의 편집 이벤트

FingerEyes-Xr의 공간 데이터 편집시 발생하는 이벤트는 1개입니다. Xr.Events.EditingCompleted로 사용자가 선택한 도형을 편집한 뒤에 발생하는 이벤트입니다. 등록은 다음과 같습니다. map.addEventListener(Xr.Events.EditingCompleted, onMapEditingCompleted); 그리고 이벤트에 대한 콜백 함수인 onMapEditingCompleted 함수는 아래와 같이 작성할 수 있습니다. function onMapEditingCompleted (e) { let map = e.map; let type = e.editCommandType; let rowId = e.rowId; if(type === Xr.edit.AddPartCommand.TYPE) { // 여러 개의 …

GIS 엔진을 이용한 공간 통계 데이터 시각화 확장

통계 데이터를 공간 상에 시각화하기 위해 지리정보시스템(GIS)을 활용하는 것은 매우 효과적인 방법입니다. 흔히 주제도(Thematic Map)라고 하는 단계색상구분도(Choropleth Map), 차트맵(Chart Map), 밀도맵(Densit Map) 등이 가능하여, 각각의 예시는 아래 그림과 같습니다. 이외에도 다양한 종류의 주제도가 있고, 표현하고자 하는 관점에서 새로운 주제도가 계속 생겨날 것입니다. 이에 대해 GIS 엔진을 이용하여 새로운 주제도를 생성하는 내용을 API 관점에서 정리해 봅니다. …

웹에서 SHP 파일 생성하기

SHP 파일은 최소 3가지 파일로 구성됩니다. 좌표 데이터가 저장된 .SHP, 이 좌표 데이터로 구성된 도형에 대한 인덱스가 저장된 .SHX, 속성 데이터가 저장된 .DBF 파일입니다. 웹 GIS에서 사용자가 공간 데이터를 활용하여 또 다른 의미의 공간 데이터를 생성해 낼 수 있을 것이고, 이 새로운 공간 데이터를 SHSP 파일 형태로 저장할 수 있다면 자신의 PC에 보관하거나, 다른 사용자와 …

지리정보시스템(GIS)를 활용한 통계지도

지리정보시스템(GIS)의 중요한 기능 중 하나는 데이터에 대한 효과적인 시각화입니다. 그 중 위치에 기반하여 통계 데이터를 주제도와 그래프의 형태로 시각화 할 수 있습니다. 이러한 통계지도 작성을 위해 통계 데이터로써 아래와 같이 엑셀 등과 같은 프로그램에서 저장된 파일 사용합니다. 위의 데이터를 보면 행정구역의 이름에 대한 다양한 통계값들이 나열되어 있어 있는 형태입니다. 이를 컴마(,)로 값을 분리한 형식인 CSV로 …

웹 GIS 클라이언트 엔진, FingerEyes-Xr

FingerEyes-Xr은 웹에서 지도를 표시하고, 표시된 지도와 연관된 기능을 제공할 수 있는 맵 컴포넌트입니다. GitHub에 소스가 공개되어 있으며, 다양한 GIS 시스템 개발을 위한 핵심 맵 컴포넌트로 활용되었고 웹 GIS 솔루션, NexGen에서도 지도 표출 및 다양한 지도 관련 기능을 위한 컴포넌트입니다. FingerEyes-Xr은 완전한 웹 표준 기술만을 사용하였고, 모든 웹브라우저에서 구현된 표준 기술만을 사용하여 IE, Chrome, Safari, Firefox …

GIS 미들웨어 서버, GeoService-Xr

GeoService-Xr은 공간 데이터를 서비스하고 공간 데이터와 관련된 다양한 응용 서비스를 제공합니다. GS인증 1등급 제품으로써, 넥스젠(NexGen)이 사용하는 공간서버가 GeoService-Xr입니다. Java 언어로 개발되어 있어서 다양한 운영체제에서 실행될 수 있습니다. 서버로써 빠른 응답속도와 안정성을 갖추고 있습니다. 특히 서울시종합방제센터의 차량동태관리시스템에 GeoService-Xr이 적용되어 365일 24시간 매우 안정적으로 운영되고 있습니다. 지오서비스엑스알(GeoService-Xr)은 GIS 관련 시스템을 개발할 때 필요한 모든 서버 차원의 기능을 …

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

지도를 활용하여 정보를 공유하고, 업무에 효율적으로 활용할 수 있는 맵 커뮤니케이터 기능에 대한 소개입니다. 맵 커뮤니케이터, 의미 그대로 지도를 이용한 의사소통 기능이고 NexGen에서 제공하는 기능입니다. 맵 커뮤니케이터에서 제공하는 기능은 대화를 기본으로 지도를 활용한 위치 공유, 지도 위에 스케치한 정보 공유 기능입니다. 그리고 다양한 파일을 공유할 수 있는데, 대용량의 파일도 문제 없이 공유할 수 있습니다. 아래는 …

고해상도 DEM 생성을 위한 자동화 프로그램

GIS 시스템 개발을 위한 다양한 데이터가 필요한데, 그 중 하나가 DEM입니다. DEM은 지형에 대한 3차원 시각화 뿐만 아니라 지형 분석을 위한 필수 데이터입니다. 이 툴의 장점은 다음과 같습니다. 전국 범위에 대한 DEM 생성이 가능합니다. DEM을 생성하고자 하는 지역을 쉽게 지정할 수 있으며 범위 제한이 없습니다. 1미터, 5미터, 10미터 등의 원하는 해상도를 갖는 DEM 생성이 가능합니다. …

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

GeoService-Xr을 기반 서버로 하는 공개 소프트웨어인 NexGen은 어떠한 플러그인 없이 순수한 웹 기술만으로 고품질의 지도 표출과 공간 데이터를 활용한 다양한 분석 결과를 제공하는 제품이다. NexGen의 주요 기능에 대한 소개는 아래의 이미지를 클릭하면 실제 시연 동영상을 통해 그 내용을 쉽게 이해할 수 있다. NexGen은 GIS의 기본이 되는 기능을 높은 품질로 개발되어 매우 안정적이고 빠른 속도로 활용할 …

GIS 공개소프트웨어 넥스젠의 지형에 대한 3차원 가시화

넥스젠은 DEM 데이터를 활용하여 경사도, 단면도를 측정할 수 있는 기능을 기본적으로 제공합니다. 이러한 기본 기능 위에 사용자가 원하는 지역을 선택해, 선택한 지역에 대한 3차원 지형 가시화 기능도 함께 제공하고 있는데요. 먼저 아래의 화면처럼 마우스를 통해 3차원으로 가시화 하고자 하는 지형을 선택합니다. 그러면 다음과 같이 3가지 형태로 지형에 대한 3차원 가시화 결과가 사용자에게 제공됩니다. 먼저 지형의 …