` `
(This section is derived from Horning, N., K. Koy, P. Ersts. 2009. eVis (v1.1.0) User’s Guide. American Museum of Natural History, Center for Biodiversity and Conservation. Available from http://biodiversityinformatics.amnh.org/, and released under the GNU FDL.)
미국 자연사 박물관의 생물다양성 보전 센터에 있는 생물다양성정보기구(Biodiversity Informatics Facility)가 eVis(Event Visualization Tool)를 개발해오고 있습니다. eVis는 보호구역 및 경관계획 지침을 위한 보존 관측 및 결정 지원 도구 모음에 추가되는 또다른 소프트웨어 도구입니다. 이 플러그인은 사용자가 QGIS의 벡터 데이터에 지오코딩된 (예를 들어 위도 및 경도 또는 X 및 Y 좌표로 참조된) 사진 및 기타 지원 문서들을 쉽게 링크할 수 있도록 해줍니다.
eVis는 이제 QGIS 새 버전에서 자동적으로 설치되고 활성화됩니다. 다른 모든 플러그인과 마찬가지로, 플러그인 관리자(플러그인 대화창 참조)에서 eVis를 비/활성화할 수 있습니다.
eVis 플러그인은 ‘데이터베이스 연결 도구’, ‘이벤트 ID 도구’, 그리고 ‘이벤트 탐색기’ 세 가지 모듈로 이루어져 있습니다. 이 모듈들이 함께 동작해서 벡터 파일, 데이터베이스, 또는 스프레드시트에 저장된 객체에 링크된 지오코딩된 사진과 기타 문서를 살펴볼 수 있습니다.
이벤트 탐색기 모듈은 QGIS 맵 캔버스에 표시된 벡터 객체에 링크된 지오코딩된 사진을 표시하기 위한 기능을 제공합니다. 예를 들어 QGIS를 사용해서 입력할 수 있는 벡터 파일에서 나온, 또는 데이터베이스 쿼리가 반환한 포인트 데이터 같은 벡터 객체 말입니다. 이 벡터 객체는 사진을 담고 있는 파일의 위치와 명칭을 설명하는 관련 속성 정보를 보유하고 있어야만 합니다. 또 부가적으로, 해당 이미지가 생성됐을 때 카메라가 향하고 있던 나침반 방향 정보를 담고 있을 수도 있습니다. 이벤트 탐색기를 실행하기 전에 QGIS에 사용자 벡터 레이어를 불러와야만 합니다.
To launch the Event Browser module, click on Database ‣ eVis ‣ eVis Event Browser. This will open the Generic Event Browser window.
Event Browser 대화창은 상단에 탭 3개를 표시합니다. Display 탭에서 사진 및 관련 속성 데이터를 살펴볼 수 있습니다. Options 탭에서 eVis 플러그인의 습성을 제어하기 위해 여러 가지 설정을 조정할 수 있습니다. 마지막으로 Configure External Applications 탭에서 eVis가 이미지가 아닌 문서를 표시할 수 있도록 해주는 파일 확장자 및 관련 응용 프로그램의 표를 관리할 수 있습니다.
Display 창을 보려면, Event Browser 대화창의 Display 탭을 클릭하십시오. Display 창에서 지오코딩된 사진과 관련 속성 데이터를 살펴볼 수 있습니다.
디스플레이 창: 사진이 나타나는 창입니다.
확대 버튼: 더 자세히 볼 수 있도록 확대합니다. 디스플레이 창에 전체 이미지를 표시할 수 없는 경우, 창 왼쪽과 하단에 스크롤바가 나타나 이미지를 이리저리 움직일 수 있도록 해줄 것입니다.
축소 버튼: 더 넓게 볼 수 있도록 축소합니다.
전체 범위로 확대/축소 버튼: 사진의 전체 범위를 표시합니다.
속성 정보 창: 사진과 관련된 포인트의 모든 속성 정보가 여기에 표시됩니다. 표시된 기록에 참조된 파일 유형이 이미지가 아니라 Configure External Applications 탭에서 정의된 파일 유형인 경우, 파일을 가리키는 경로를 담고 있는 항목의 값을 더블클릭하면 해당 파일을 열기 위한 응용 프로그램이 구동되어 해당 파일의 내용을 보거나 들을 수 있을 것입니다. 플러그인이 파일 확장자를 인식하는 경우, 속성 데이터가 초록색으로 표시될 것입니다.
탐색 버튼: 하나 이상의 객체를 선택한 경우 [Previous] 및 [Next] 버튼을 사용해서 이전 또는 다음 객체를 불러올 수 있습니다.
File path: 표시된 사진 또는 기타 문서의 디렉터리 경로 또는 URL을 담고 있는 속성 항목을 지정하는 드롭다운 목록입니다. 그 위치가 상대 경로인 경우, 체크박스를 체크해야만 합니다. 아래에 있는 Base Path 텍스트 란에 상대 경로의 기준 경로를 입력할 수 있습니다. 다음 사진의 위치 및 명칭 지정하기 항에서 파일 위치를 지정하기 위한 서로 다은 옵션들에 관한 정보를 설명하고 있습니다.
Compass bearing: 표시된 사진과 관련된 나침반 방위를 담고 있는 속성 항목을 지정하기 위한 드롭다운 목록입니다. 나침반 방위 정보를 사용할 수 있는 경우, 드롭다운 메뉴 제목 아래 있는 체크박스를 체크해야 합니다.
Compass offset: 나침반 오프셋을 사용해서 자침의 편위(偏位)를 보정할 수 있습니다. (자침 방위를 사용해서 수집한 방위를 진북 방위로 조정할 수 있습니다.) Manual 라디오 버튼을 클릭해서 텍스트 란에 오프셋을 입력하거나, 또는 From Attribute 라디오 버튼을 클릭해서 오프셋을 담고 있는 속성 항목을 선택할 수 있습니다. 이 옵션 2개 모두 동편위는 양의 값을, 서편위는 음의 값을 입력해야 합니다.
Directory base path: eVis 옵션 창 그림의 Ⓐ에서 정의한 상대 경로가 이 기준 경로 뒤에 붙게 됩니다.
Replace path: 이 체크박스를 체크한 경우, Ⓐ에서 정의한 경로 가운데 파일명만 기준 경로 뒤에 붙게 됩니다.
Apply rule to all documents: 이 체크박스를 체크한 경우, 동영상, 텍스트 문서, 사운드 파일과 같은 이미지가 아닌 문서에 사진에 대해 정의된 경로 규칙과 동일한 경로 규칙을 적용할 것입니다. 체크하지 않은 경우, 사진에 대해서만 경로 규칙을 적용하고 기타 문서의 경우 기준 경로 파라미터를 무시할 것입니다.
Reset values: 해당 행의 값을 기본 설정으로 리셋합니다.
Save: Options 창을 종료하지 않은 채 설정을 저장할 것입니다.
파일 참조 표: eVis를 사용해서 열 수 있는 파일 유형을 담은 표입니다. 각 파일 유형은 파일 확장자 및 해당 파일 유형을 열 수 있는 응용 프로그램을 가리키는 경로를 가지고 있어야 합니다. 이 표는 이미지만이 아니라 동영상, 사운드 녹음, 텍스트 문서와 같은 광범위한 파일을 열 수 있는 능력을 제공합니다.
새 파일 유형 추가: 유일한 확장자 및 해당 유형을 열 수 있는 응용 프로그램의 경로를 입력해서 새 파일 유형을 추가합니다.
현재 행 삭제: 표에서 선택한, 파일 확장자 및 관련 응용 프로그램을 가리키는 경로로 정의된 파일 유형을 삭제합니다.
절대 또는 상대 경로를 사용해서 사진의 위치 및 명칭을 저장할 수 있습니다. 사진을 웹서버에서 가져올 수 있는 경우 URL을 사용할 수도 있습니다. 다음 evis_examples 표에서 이 서로 다른 접근법의 예를 볼 수 있습니다.
X Y FILE BEARING
780596 1784017 C:\Workshop\eVis_Data\groundphotos\DSC_0168.JPG 275
780596 1784017 /groundphotos/DSC_0169.JPG 80
780819 1784015 http://biodiversityinformatics.amnh.org/\
evis_testdata/DSC_0170.JPG 10
780596 1784017 pdf:http://www.testsite.com/attachments.php?\
attachment_id-12 76
eVis는 텍스트 문서, 동영상, 그리고 사운드 파일 같은 기타 지원 문서도 표시하거나 플레이할 수 있습니다. 이렇게 하려면, Event Browser 대화창의 Configure External Applications 탭에 있는 파일 참조 표에 파일 확장자와 해당 파일 유형을 열 수 있는 응용 프로그램 경로를 입력해서 항목을 추가해야 합니다. 또 벡터 레이어의 경우 속성 테이블에 파일을 가리키는 경로 또는 URL이 존재해야 합니다. 사용자가 열고자 하는 문서에 대한 파일 확장자를 담고 있지 않은 URL에 대해 사용할 수 있는 부가적인 규칙 한 가지는 URL 앞에 파일 확장자를 지정하라는 것입니다. 그 서식은 파일 확장자:URL 입니다. 파일 확장자와 쌍점이 URL 앞에 옵니다. 웹 페이지를 관리하기 위해 데이터베이스를 사용하는 위키 및 다른 웹사이트에 있는 문서에 접근하려면 이 서식이 특히 유용합니다. (evis_examples 표를 참조하세요.)
Event Browser 대화창을 열면, 벡터 파일 속성 테이블에 참조된 문서가 이미지이고 Options 탭에서 파일 위치 정보를 제대로 설정한 경우, 디스플레이 창에 사진이 나타날 것입니다. 사진이 나타나야 하는데 나타나지 않는 경우, Options 탭에서 파라미터를 조정해야 할 것입니다.
지원하는 문서(또는 eVis가 인식하는 파일 확장자가 아닌 이미지)가 속성 테이블에 참조된 경우, 해당 파일 확장자가 Configure External Applications 탭에 있는 파일 참조 표에 정의돼 있다면 속성 정보 창에서 파일 경로를 담고 있는 항목이 초록색으로 강조됩니다. 문서를 열려면, 속성 정보 창에 초록색으로 강조된 행을 더블클릭하십시오. 지원 문서가 속성 정보 창에 참조돼 있는데 파일 경로가 초록색으로 강조되지 않았다면, Configure External Applications 탭에 해당 파일의 파일명 및 확장자를 담은 항목을 추가해야 합니다. 파일 경로는 초록색으로 강조됐지만 더블클릭으로도 열리지 않는 경우, Options 탭에서 파라미터를 조정해서 eVis가 파일의 위치를 인식하도록 해야 합니다.
Options 탭에서 나침반 방위를 제공하지 않는 경우, 디스플레이 창에 나타난 사진과 관련된 벡터 객체 위에 빨강색 별표 * 가 표시됩니다. 나침반 방위를 제공한다면, Event Browser 대화창에 있는 나침반 방위 표시 항목의 값이 나타내는 방향을 가리키는 화살표가 표시됩니다. 이 화살표는 사진 또는 기타 문서와 관련된 포인트를 중점으로 합니다.
To close the Event Browser window, click on the [Close] button from the Display window.
‘이벤트 ID’ 모듈은 QGIS 맵 캔버스에 표시된 객체를 클릭해서 사진을 표시할 수 있게 해줍니다. 해당 벡터 객체는 사진을 담고 있는 파일의 위치와 명칭을 설명하는 관련 속성 정보를 가지고 있어야만 합니다. 또 부가적으로, 해당 이미지가 생성됐을 때 카메라가 향하고 있던 나침반 방향 정보를 담고 있을 수도 있습니다. 이벤트 ID 도구를 실행하기 전에 QGIS에 해당 레이어를 불러와야만 합니다.
이벤트 ID 모듈을 구동하려면, Event ID 아이콘을 클릭하거나 Database ‣ eVis ‣ Event ID Tool 메뉴 옵션을 선택하십시오. 커서가 그 위에 ‘i’가 표시된 화살표로 바뀌어 ID 도구가 활성화됐다는 사실을 알려줄 것입니다.
To view the photographs linked to vector features in the active vector layer displayed in the QGIS map window, move the Event ID cursor over the feature and then click the mouse. After clicking on the feature, the Event Browser window is opened and the photographs on or near the clicked locality are available for display in the browser. If more than one photograph is available, you can cycle through the different features using the [Previous] and [Next] buttons. The other controls are described in the 이벤트 탐색기 section of this guide.
‘데이터베이스 연결’ 모듈은 데이터베이스 또는 스프레드시트 같은 다른 ODBC 리소스에 연결해서 쿼리할 수 있는 도구를 제공하고 있습니다.
eVis는 PostgreSQL, MySQL 및 SQLite 유형의 데이터베이스에 직접 연결할 수 있습니다. 또 MS Access 같은 ODBC 연결로부터 읽어올 수도 있습니다. 엑셀 스프레드시트 같은 ODBC 데이터베이스로부터 읽어올 경우, 사용자 운영체제 용 ODBC 드라이버를 환경 설정해야 합니다.
데이터베이스 연결 모듈을 구동하려면, 적절한 eVis Database Connection 아이콘을 클릭하거나 Database ‣ eVis ‣ Database Connection 메뉴 옵션을 선택하십시오. Database Connection 대화창이 열릴 것입니다. 이 대화창엔 Predefined Queries, Database Connection, 그리고 SQL Query 3개의 탭이 존재합니다. 대화창 하단의 Output Console 창은 이 모듈의 서로 다른 부분에서 실행된 액션의 상태를 표시합니다.
Database Connection 탭을 클릭해서 데이터베이스 연결 인터페이스를 연 다음, Database Type 콤보박스를 통해 사용자가 연결하고자 하는 데이터베이스 유형을 선택하십시오. 사용자명 또는 비밀번호가 필요한 경우, Username 및 Password 텍스트 란에 해당 정보를 입력할 수 있습니다.
Database Host 텍스트 란에 데이터베이스 호스트를 입력하십시오. 데이터베이스 유형을 ‘MS Access’로 선택했다면 이 옵션을 사용할 수 없습니다. 데이터베이스가 사용자 데스크탑에 존재하는 경우 “localhost”라고 입력해야 합니다.
Database Name 텍스트 란에 데이터베이스 명칭을 입력하십시오. 데이터베이스 유형을 ‘ODBC’로 선택했다면, 데이터소스 명칭을 입력해야 합니다.
When all of the parameters are filled in, click on the [Connect] button. If the connection is successful, a message will be written in the Output Console window stating that the connection was established. If a connection was not established, you will need to check that the correct parameters were entered above.
Database Type: 사용할 데이터베이스 유형을 지정하기 위한 드롭다운 목록입니다.
Database Host: 데이터베이스 호스트 명칭입니다.
Port: MySQL 또는 PostgreSQL 데이터베이스 유형을 선택한 경우 필요한 포트 번호입니다.
Database Name: 데이터베이스 명칭입니다.
Connect: 앞에서 정의한 파라미터를 사용해서 데이터베이스에 연결하는 버튼입니다.
Output Console: 처리 과정 관련 메시지를 표시하는 콘솔 창입니다.
Username: 데이터베이스가 비밀번호 보안을 사용하는 경우 필요한 사용자명입니다.
Password: 데이터베이스가 비밀번호 보안을 사용하는 경우 필요한 비밀번호입니다.
Predefined Queries: ‘미리 정의된 쿼리’ 창을 여는 탭입니다.
Database Connection: ‘데이터베이스 연결’ 창을 여는 탭입니다.
SQL Query: ‘SQL 쿼리’ 창을 여는 탭입니다.
Help: 온라인 도움말을 표시합니다.
OK: 데이터베이스 연결 대화창을 종료합니다.
SQL queries are used to extract information from a database or ODBC resource. In eVis, the output from these queries is a vector layer added to the QGIS map window. Click on the SQL Query tab to display the SQL query interface. SQL commands can be entered in this text window. A helpful tutorial on SQL commands is available at http://www.w3schools.com/sql. For example, to extract all of the data from a worksheet in an Excel file, select * from [sheet1$] where sheet1 is the name of the worksheet.
Click on the [Run Query] button to execute the command. If the query is successful, a Database File Selection window will be displayed. If the query is not successful, an error message will appear in the Output Console window.
Database File Selection 창에 있는 Name of New Layer 텍스트 란에 쿼리의 결과로부터 생성될 레이어의 명칭을 입력하십시오.
SQL 쿼리 텍스트 창: SQL 쿼리를 입력하는 창입니다.
Run Query: SQL Query Window 에 입력한 쿼리를 실행하는 버튼입니다.
Output Console: 처리 과정 관련 메시지를 표시하는 콘솔 창입니다.
Help: 온라인 도움말을 표시합니다.
OK: 데이터베이스 연결 대화창을 종료합니다.
Use the X Coordinate and Y Coordinate combo boxes to select the fields from the database that stores the X (or longitude) and Y (or latitude) coordinates. Clicking on the [OK] button causes the vector layer created from the SQL query to be displayed in the QGIS map window.
향후에 사용하기 위해 이 벡터 파일을 저장하려면, QGIS 맵 범례에서 레이어명을 오른쪽 클릭한 다음 Save as... 를 선택하는 방식으로 QGIS의 ‘다른 이름으로 저장’ 명령어를 사용할 수 있습니다.
참고
마이크로소프트 엑셀 워크시트로부터 벡터 레이어 생성하기
마이크로소프트 엑셀 워크시트에서 벡터 레이어를 생성하는 경우, 유효 데이터 밑에 있는 속성 테이블 행에 원치 않는 “0” 들이 삽입돼 있는 것을 볼 수도 있습니다. 엑셀의 해당 셀 값을 Backspace 키로 삭제한 경우 이런 일이 일어날 수 있습니다. 이 문제를 해결하려면, 엑셀 파일을 연 다음 (해당 파일에 연결돼 있는 경우, 엑셀을 편집하려면 QGIS를 종료해야 합니다) Edit ‣ Delete 메뉴를 사용해서 비어 있는 행들을 제거해야 합니다. 이런 문제가 발생하지 않게 하려면, 파일을 저장하기 전에 엑셀 워크시트에 있는 몇몇 행들을 Edit ‣ Delete 메뉴를 사용해서 삭제하기만 하면 됩니다.
미리 정의된 쿼리를 사용하면, 이전에 작성해서 XML 포맷 파일로 저장돼 있는 쿼리를 선택할 수 있습니다. 사용자가 SQL 명령어에 익숙하지 않은 경우 특히 유용한 기능입니다. 미리 정의된 쿼리 인터페이스를 표시하려면 Predefined Queries 탭을 선택하십시오.
미리 정의된 쿼리 집합을 불러오려면, Open File 아이콘을 클릭하십시오. Open File 대화창이 열려 SQL 쿼리를 담고 있는 파일을 찾아서 선택할 수 있습니다. 쿼리를 불러오면, XML 파일에 정의된 쿼리 제목이 Open File 아이콘 바로 아래 있는 드롭다운 메뉴에 나타날 것입니다. 쿼리의 완전한 설명은 드롭다운 메뉴 아래의 텍스트 창에 표시됩니다.
드롭다운 메뉴에서 실행하고자 하는 쿼리를 선택한 다음 SQL Query 탭을 클릭하면 쿼리 창에 해당 쿼리를 불러온 것을 볼 수 있습니다. 미리 정의된 쿼리를 처음으로 실행하는 경우 또는 데이터베이스를 전환한 경우, 데이터베이스에 연결돼 있는지 확인해야 합니다.
Click on the [Run Query] button in the SQL Query tab to execute the command. If the query is successful, a Database File Selection window will be displayed. If the query is not successful, an error message will appear in the Output Console window.
파일 열기: ‘파일 열기’ 파일 탐색기를 구동해서 미리 정의된 쿼리를 담고 있는 XML 파일을 찾습니다.
미리 정의된 쿼리: 미리 정의된 쿼리 XML 파일이 정의하는 모든 쿼리를 표시하는 드롭다운 목록입니다.
쿼리 설명: 쿼리의 간단한 설명입니다. 이 설명은 미리 정의된 쿼리 XML 파일에서 추출된 것입니다.
Output Console: 처리 과정 관련 메시지를 표시하는 콘솔 창입니다.
Help: 온라인 도움말을 표시합니다.
OK: 데이터베이스 연결 대화창을 종료합니다.
eVis가 읽어들이는 XML 태그입니다.
태그 |
설명 |
---|---|
query | 쿼리 선언문의 시작과 끝을 정의합니다. |
shortdescription | eVis 드롭다운 메뉴에 나타나는 쿼리에 대한 짧은 설명입니다. |
description | 미리 정의된 쿼리 텍스트 창에 표시되는 좀 더 자세한 쿼리 설명입니다. |
databasetype | 데이터베이스 연결 탭에 있는 데이터베이스 유형 드롭다운 메뉴에 정의된 데이터베이스 유형입니다. |
databaseport | 데이터베이스 연결 탭에 있는 포트 텍스트 란에 정의하는 포트입니다. |
databasename | 데이터베이스 연결 탭에 있는 데이터베이스 명칭 텍스트 란에 정의하는 데이터베이스명입니다. |
databaseusername | 데이터베이스 연결 탭에 있는 사용자명 텍스트 란에 정의하는 데이터베이스 사용자명입니다. |
databasepassword | 데이터베이스 연결 탭에 있는 비밀번호 텍스트 란에 정의하는 데이터베이스 비밀번호입니다. |
sqlstatement | SQL 명령어입니다. |
autoconnect | 데이터베이스 연결 탭에서 데이터베이스 연결 루틴을 실행하지 않고 앞의 태그를 사용해서 데이터베이스에 자동적으로 연결해야 할지 여부를 지정하는 플래그(true 또는 false)입니다. |
다음은 쿼리 3개를 담고 있는 완전한 XML 파일의 예입니다:
<?xml version="1.0"?>
<doc>
<query>
<shortdescription>Import all photograph points</shortdescription>
<description>This command will import all of the data in the SQLite database to QGIS
</description>
<databasetype>SQLITE</databasetype>
<databasehost />
<databaseport />
<databasename>C:\textbackslash Workshop/textbackslash
eVis\_Data\textbackslash PhotoPoints.db</databasename>
<databaseusername />
<databasepassword />
<sqlstatement>SELECT Attributes.*, Points.x, Points.y FROM Attributes LEFT JOIN
Points ON Points.rec_id=Attributes.point_ID</sqlstatement>
<autoconnect>false</autoconnect>
</query>
<query>
<shortdescription>Import photograph points "looking across Valley"</shortdescription>
<description>This command will import only points that have photographs "looking across
a valley" to QGIS</description>
<databasetype>SQLITE</databasetype>
<databasehost />
<databaseport />
<databasename>C:\Workshop\eVis_Data\PhotoPoints.db</databasename>
<databaseusername />
<databasepassword />
<sqlstatement>SELECT Attributes.*, Points.x, Points.y FROM Attributes LEFT JOIN
Points ON Points.rec_id=Attributes.point_ID where COMMENTS='Looking across
valley'</sqlstatement>
<autoconnect>false</autoconnect>
</query>
<query>
<shortdescription>Import photograph points that mention "limestone"</shortdescription>
<description>This command will import only points that have photographs that mention
"limestone" to QGIS</description>
<databasetype>SQLITE</databasetype>
<databasehost />
<databaseport />
<databasename>C:\Workshop\eVis_Data\PhotoPoints.db</databasename>
<databaseusername />
<databasepassword />
<sqlstatement>SELECT Attributes.*, Points.x, Points.y FROM Attributes LEFT JOIN
Points ON Points.rec_id=Attributes.point_ID where COMMENTS like '%limestone%'
</sqlstatement>
<autoconnect>false</autoconnect>
</query>
</doc>