2.2. Lesson: 첫 레이어 추가

응용 프로그램을 시작하고 예제 및 연습에 쓰일 기본 맵을 생성하겠습니다.

이 강의의 목표: 예제 맵으로 시작하기.

참고

이 연습을 시작하기 전에, 사용자 컴퓨터에 QGIS가 설치되어 있어야만 합니다. 또한 사용할 샘플 데이터 를 다운로드해 두어야 합니다.

사용자의 설치 설정에 따라 데스크탑 바로가기 또는 메뉴 항목에서 QGIS를 실행합니다.

참고

이 강의에 쓰일 스크린샷은 리눅스에서 실행되는 QGIS 3.4 버전을 캡처한 것입니다. 사용자 설정에 따라 실제 화면이 조금씩 다를 수도 있습니다. 그러나 동일한 버튼들을 모두 사용할 수 있고, 어떤 OS에서도 동일하게 실행될 것입니다. 이 강의를 따라하려면 (교재 작성 당시 최신 버전인) QGIS 3.4가 필요합니다.

그럼 바로 시작해볼까요!

2.2.1. basic Follow Along: 맵 준비

  1. QGIS를 시작합니다. 텅 빈 새 맵이 나타날 것입니다.

    ../../../_images/add_blank_qgis.png
  2. Data Source Manager 대화창에서 데이터 유형에 따라 불러올 데이터를 선택할 수 있습니다. 이 대화창을 통해 데이터셋을 불러올 것입니다: dataSourceManager Open Data Source Manager 버튼을 클릭하세요.

    이 아이콘을 찾을 수 없다면, View ► Toolbars 메뉴에서 Data Source Manager 툴바가 활성화돼 있는지 확인해보십시오.

    ../../../_images/add_data_dialog.png
  3. protected_areas.shp 벡터 데이터셋을 불러오십시오:

    1. Vector 탭을 클릭합니다.

    2. radioButtonOnFile 소스 유형을 활성화하십시오.

    3. Vector Dataset(s) 옆에 있는 버튼을 클릭합니다.

    4. 사용자의 연습용 디렉터리에서 exercise_data/shapefile/protected_areas.shp 파일을 선택하십시오.

    5. Open 을 클릭하세요. 대화창의 파일 경로가 채워진 것을 볼 수 있을 겁니다.

      ../../../_images/add_vector_dialog.png
    6. 대화창의 Add 버튼을 클릭하십시오. 사용자가 지정한 데이터를 불러올 것입니다: (좌하단에 있는) Layers 패널에 protected_areas 항목이 추가되고, 메인 맵 캔버스에 해당 항목의 객체들이 표시됩니다.

      ../../../_images/first_loaded_layer.png

축하합니다! 이제 기본 맵을 사용할 수 있습니다. 이제 사용자의 작업을 저장하도록 합시다.

  1. Save As 버튼을 클릭합니다: fileSaveAs

  2. 맵을 exercise_data 옆에 있는 solution 폴더 아래에 basic_map.qgz 라는 파일명으로 저장합니다.

2.2.2. basic Try Yourself

앞에서 설명한 단계를 반복해서, 맵에 동일 폴더(exercise_data/shapefile)의 places.shprivers.shp 레이어를 추가하십시오.

2.2.3. basic Follow Along: GeoPackage 데이터베이스에서 벡터 데이터 불러오기

데이터베이스는 대용량의 관련 데이터를 하나의 파일로 저장할 수 있습니다. 여러분은 벌써 리브레오피스 베이스 또는 마이크로소프트 액세스 같은 DBMS(database management system)를 잘 알고 있을지도 모르겠군요. GIS 응용 프로그램도 데이터베이스를 활용할 수 있습니다. 공간 데이터를 다뤄야 하기 때문에 GIS에 특화된 (PostGIS 같은) DBMS들은 추가 기능들을 갖추고 있습니다.

GeoPackage 오픈 포맷은 단일 파일 안에 GIS 데이터(레이어)를 저장할 수 있는 컨테이너입니다. ESRI Shapefile 포맷(예: 이전 단계에서 불러온 protected_areas.shp 데이터셋)과는 달리, 단일 GeoPackage 파일이 서로 다른 좌표계의 다양한 (벡터 및 래스터 데이터 모두) 데이터는 물론 공간 정보가 없는 테이블도 담을 수 있습니다. 이런 기능들 덕분에 데이터를 쉽게 공유할 수 있고 파일 중복을 피할 수 있습니다.

GeoPackage에서 레이어를 불러오기 위해서는 먼저 GeoPackage와의 연결을 생성해야 합니다.

  1. dataSourceManager Open Data Source Manager 버튼을 클릭합니다.

  2. 왼쪽에 있는 newGeoPackageLayer GeoPackage 탭을 선택하십시오.

  3. New 버튼을 클릭한 다음 이전에 다운로드한 exercise_data 폴더에서 training_data.gpkg 파일을 찾으십시오.

  4. 해당 파일을 선택하고 Open 을 클릭하십시오. 이제 GeoPackage 연결 목록에 해당 파일 경로가 추가되고, 드롭다운 메뉴에 표시됩니다.

이제 이 GeoPackage 에 있는 모든 레이어를 QGIS로 추가할 준비가 끝났습니다.

  1. Connect 버튼을 클릭하십시오. 창 가운데 부분에서 GeoPackage 파일이 담고 있는 모든 레이어들의 목록을 볼 수 있을 겁니다.

  2. roads 레이어를 선택한 다음 Add 버튼을 클릭하세요.

    ../../../_images/add_data_dialog_geopackage.png

    Layers 패널에 roads 레이어가 추가되고, 맵 캔버스에 해당 레이어의 객체들이 표시됩니다.

  3. Close 를 클릭합니다.

축하합니다! GeoPackage로부터 처음으로 레이어를 불러왔습니다.

2.2.4. basic Follow Along: 탐색기를 통해 SpatiaLite 데이터베이스에서 벡터 데이터 불러오기

QGIS는 수많은 다른 데이터베이스 포맷에도 접근할 수 있습니다. GeoPackage와 마찬가지로, SpatiaLite 데이터베이스 포맷은 SQLite 라이브러리의 확장 포맷입니다. SpatiaLite 제공자로부터 레이어를 추가하는 작업은 앞에서 설명한 것과 동일한 규칙을 따릅니다: 연결 생성 –> 연결 활성화 –> 레이어(들) 추가하기.

이 규칙을 따르는 것도 사용자 맵에 SpatiaLite 데이터를 추가하는 한 가지 방법이지만, 데이터를 추가하는 또다른 강력한 방법을 알아보겠습니다: 바로 Browser 죠.

  1. dataSourceManager 아이콘을 클릭해서 Data Source Manager 대화창을 여십시오.

  2. fileOpen Browser 탭을 클릭합니다.

  3. 이 탭에서 사용자 컴퓨터에 연결된 모든 저장 디스크는 물론 왼쪽에 있는 거의 모든 탭 항목들도 볼 수 있습니다. 이를 통해 연결된 데이터베이스 또는 폴더에 빠르게 접근할 수 있습니다.

    예를 들어, geoPackage GeoPackage 항목 옆에 있는 드롭다운 아이콘을 클릭해보십시오. 이전 단계에서 연결했던 training-data.gpkg 파일을 (펼치면 그 레이어들도) 볼 수 있을 것입니다.

  4. spatialite SpatiaLite 항목을 오른쪽 클릭하고 New Connection… 메뉴를 선택하십시오.

  5. exercise_data 폴더를 찾아 landuse.sqlite 파일을 선택한 다음, Open 을 클릭합니다.

    SpatiaLite 항목 아래 dbSchema landuse.sqlite 항목이 추가된 것이 보일 겁니다.

  6. dbSchema landuse.sqlite 항목을 펼쳐보십시오.

  7. polygonLayer landuse 레이어를 더블클릭하거나, 선택한 다음 맵 캔버스로 드래그&드롭하십시오. Layers 패널에 새 레이어가 추가되고, 맵 캔버스에 해당 레이어의 객체들이 표시됩니다.

    ../../../_images/spatialite_dialog_connected.png

View ► Panels ► 메뉴에서 Browser 패널을 활성화시켜 사용자 데이터를 추가하는 데 사용하십시오. 동일한 기능을 가진 Data Source Manager ► Browser 탭을 손쉽게 불러올 수 있는 단축키입니다.

참고

사용자 프로젝트를 자주 저장해야 합니다! 프로젝트 파일은 어떤 데이터도 직접 담고 있지 않지만, 사용자 맵에 어떤 레이어를 불러왔는지 저장하고 있습니다.

2.2.5. moderate Try Yourself 더 많은 벡터 데이터 불러오기

앞에서 설명한 어떤 방법을 사용하든, exercise_data 폴더로부터 다음 데이터셋들을 사용자 맵으로 불러오십시오:

  • buildings

  • water

2.2.6. Follow Along: 레이어 재배열

사용자 레이어 목록에 있는 레이어들은 맵 상에 특정 순서대로 그려집니다. 목록 맨 아래에 있는 레이어를 첫 번째로 그리고, 맨 위에 있는 레이어를 마지막에 그립니다. 목록에서 레이어 순서를 바꾸면 맵 상에 그려지는 순서도 바꿀 수 있습니다.

참고

Layer Order 패널에 있는 Control rendering order 체크박스를 활용하면 이 습성을 변경할 수 있습니다. 그러나 아직 이 기능을 사용할 때는 아닙니다.

현재 맵 상에 레이어가 로드되는 순서가 전혀 논리적이지 않을 수도 있습니다. 다른 레이어들이 도로 레이어를 덮어 완전히 가려져 있을 수도 있습니다.

예를 들어 레이어 순서를 이렇게 하면…

../../../_images/incorrect_layer_order.png

…``roads`` 및 places 레이어가 landuse 레이어의 폴리곤 아래로 가기 때문에 보이지 않게 됩니다.

이 문제를 해결하려면,

  1. 레이어 목록에서 레이어를 클릭&드래그하십시오.

  2. 다음처럼 순서를 재배열하십시오.

../../../_images/correct_layer_order.png

이제 도로와 건물이 토지이용구역 위에 나타나는, 시각적으로 더 논리적인 맵을 볼 수 있습니다.

2.2.7. In Conclusion

이제 몇 가지 서로 다른 소스들로부터 필요한 모든 레이어를 추가하고 기본 맵을 생성했습니다!

2.2.8. What’s Next?

이제 Open Data Source Manager 버튼의 기능을 배웠습니다만, 다른 버튼들은 어떻습니까? 이 인터페이스는 어떻게 동작할까요? 더 깊이 들어가기 전에, QGIS 인터페이스의 몇몇 기본적인 대화형 작업을 살펴봅시다. 이것이 다음 강의의 주제입니다.