QuantumGIS



3. 벡터 주제도 다루기

이번에는 QGIS를 이용해 실제 벡터 주제도를 다루는 법을 배워보도록 하자.

QGIS에서는 OGR 라이브러리를 이용하여 ESRI SHP 포맷, MapInfo TAB, MIF 포맷, SDTS(Spatial Data Transfer Standard) 포맷, GML(Geographic Markup Language) 포맷 등과 같은 다양한 벡터 포맷을 지원한다. 또한 PostGIS에 저장되어 있는 레이어를 지원할 뿐만 아니라, 별도의 플러그인을 이용하여 형식화된 텍스트 파일(예, delimited text)을 벡터 형태로 변환하여 이용할 수도 있다.

여기에서는 주로 ESRI SHP 파일과 PostGIS 레이어를 이용하여 벡터 주제도를 다루는 방법에 대해 알아본다. QGIS에서 지원되는 다른 벡터 포맷들을 다루는 방법도 거의 다르지 않다.

참고로 OGR 라이브러리가 지원하는 다양한 벡터 포맷에 대해 알고 싶으면 다음 문서를 참조하기 바란다.  

OGR Vector Formats : http://www.gdal.org/ogr/ogr_formats.html


3.1 ESRI SHP

ESRI SHP 포맷은 미국 ESRI사에 의해 만들어진 벡터 포맷으로서 현재 대부분의 GIS 환경에서 사실상의 벡터 표준(de-facto industry standard)으로 기능하고 있는 포맷이다. SHP 포맷은 기본적으로 다음과 같은 3 파일로 구성된다.

• .SHP 파일 : 벡터의 공간정보를 담고 있는 파일
• .DBF 파일 : dBase IV 포맷으로 속성정보를 담고 있는 파일
• .SHX 파일 : 인덱스 파일

때때로 투영정보를 담고 있는 .PRJ 파일이 함께 있기도 하며, 앞서 기술한 파일 이 이에도 타 파일들이 SHP 데이터셋을 위해 제공되기도 한다.

ESRI SHP 포맷에 대해 자세히 알고 싶으면 다음 문서들을 참조하기 바란다.
포맷 사양서 : http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf
SHP 뷰어 만들기 : 2007/10/09 - [SHPViewer 강좌 1] SHP 포맷 분석 1
SHP 뷰어 만들기 : 2007/10/09 - [SHPViewer 강좌 2] SHP 포맷 분석 2
SHP 뷰어 만들기 : 2007/10/09 - [SHPViewer 강좌 3] SHP 포맷 분석 3
SHP 뷰어 만들기 : 2007/10/09 - [SHPViewer 강좌 4] SHPViewer 다음 버젼..
SHP 뷰어 만들기 : 2007/10/09 - [SHPViewer 강좌 5] Draw에 대해
SHP 뷰어 만들기 : 2007/10/09 - [SHPViewer 강좌 7] UTM 및 TM 투영법 클래스가 붙은 버젼


3.1.1 SHP 포맷 불러오기

SHP 포맷을 불러오기 위해서는 메뉴의 [Layer -> Add a Vector Layer] 명령을 이용하거나, 아래 툴바를 이용하면 된다.
사용자 삽입 이미지

[Layer -> Add a Vector Layer] 명령이나 위의 툴바는 OGR 라이브러리가 지원하는 파일 기반의 다른 벡터 포맷을 QGIS로 불러 올 때도 사용하는 것들이다.

벡터 레이어 불러오기를 실행하면 아래와 같은 대화창이 나타난다.

사용자 삽입 이미지

사용자는 Files of  Type에서 미리 지정되어 있는 몇몇 파일 포맷을 선택할 수도 있다.

위 그림에서는 사용자가 dong.shp 을 선택한 상황이며, 이후 [Open] 버튼을 누르면 QGIS는 해당 SHP 파일을 읽어들여 화면에 표시하게 된다. 사용자는 필요한 경우 SHP 포맷의 인코딩 타입을 설정할 수도 있다.

사용자가 특정 벡터 포맷을 읽어 들이면, 해당 벡터 레이어는 임의의 색상으로 화면에 표시된다. 사용자는 파일을 읽어 들인 후 '레이어 조작부' 혹은 '맵 레전드'를 이용하여 자신이 원하는 벡터 레이어의 색상, 패턴, 두께, 표시 방법 등을 자유롭게 변경할 수 있다.


3.1.2 성능 향상 하기

대용량의 벡터 파일을 이용하다 보면 화면의 확대/축소/이동 시 속도가 떨어지는 경향이 있다. 이런 문제를 해결하기 위해 QGIS에서는 벡터 파일에 대한 공간 인덱싱 기능을 제공하고 있다. 벡터 파일에 대한 공간 인덱스를 생성하는 방법은 다음과 같다.

• 공간 인덱스를 생성하고자 하는 벡터 레이어를 '레이어 조작부'에서 더블클릭한다.
• 이후 표출된 Layer Properties 창에서 General 탭을 선택한다.
• General 탭의 Spatial Index에서  Create 명령 버튼을 누른다.(아래 그림 참조)

사용자 삽입 이미지

QGIS가 공간 인덱스를 수행한 후에는 .qix라는 확장자의 공간 인덱스 파일이 해당 벡터 레이어와 같은 폴더에 생성된다.


3.1.3 MapInfo 파일 불러오기

MapInfo의 TAB 포맷이나 MIF 포맷을 불러 들이는 것도 앞서 설명한 SHP 포맷 불러들이는 과정과 거의 동일하다. 다만 불러오기 대화창의 Files of Type을 MapInfo로 선택해 주기만 하면 된다. 그러면 TAB, MIF 등의 확장자를 가진 벡터 데이터만이 필터링되어 화면에 표시된다.

사용자 삽입 이미지


3.1.4 ArcInfo Coverage 불러오기

ArcInfo Coverage 포맷을 불러오는 과정도 앞서 설명한 SHP 포맷이나 TAB, MIF 포맷을 불러오는 과정과 동일하다. 다만 File Type 필터링을 All Files(*.*)로 해 줄 필요가 있다. 이후 아래와 같은 확장자를 가진 파일들 중에서 원하는 파일을 선택해 불러 오면 된다.

• .lab - 라벨 레이어 불러오기
• .cnt - 폴리곤 센트로이드 레이어 불러오기
• .arc - 선형 레이어 불러오기
• .pal - 폴리곤 레이어 불러오기


오늘은 여기까지..


2008년 4월 12일
Posted by 뚜와띠엔

댓글을 달아 주세요

  1. Kaiser 2008.05.05 16:41  댓글주소  수정/삭제  댓글쓰기

    저는 독일에서 환경계획을 공부중인 학생입니다.
    요즘 학교에서 QuantumGIS 프로그램을 배우고 있는데
    관련포스팅을 보니 반갑네요^^
    계속해서 관련정보 기다리고있겠 습니다 .

    • Favicon of http://endofcpa.tistory.com BlogIcon 뚜와띠엔 2008.05.05 19:22  댓글주소  수정/삭제

      아, 그러시군요... 얼마나 도움이 될지는 모르겠습니다만, 여하간 작은 도움이 되었으면 좋겠네요.. 공부 열심히 하시구요..