티스토리 뷰

반응형

1. VS CODE 개발 환경 설정

 

촬영한 사진에서 GPS 정보를 추출하는 QGIS 플러그인 코드작성 하기 위해서는

우선 이전 글을 참고해서 QGIS 프로그램의 플러그인 메뉴에서 plugin builder 기능을 이용해서 exifextractor플러그인을 기본 구조생성 하고( 2023.03.21 - [QGIS실습] - 사진에서 위치 정보를 추출하는 QGIS 플러그인 개발 - 1) 설치편 )

 

이번 글은 이어서 사진정보 추출 기능을 실제 개발하기 위한 환경을 설정하는 방법을 설명한다.

 

QGIS과 호환되는 파이썬이 실행 할 수 있는 개발환경은 다음 배치파일을 이용해서 가능한다.

이 배치 파일은 QGIS 3.28.4 기준으로 설치된 폴더는 C:\Program Files\QGIS 3.28.4 로 부터 배치파일이 작성된다.

 

다음 코드를 메모장에  복사 붙여넣기 한 후 확장자를 cmd, 또는 bat으로 저장하고 실행하면 된다.   

@echo off
    SET OSGEO4W_ROOT=C:\Program Files\QGIS 3.28.4
    call "%OSGEO4W_ROOT%"\bin\o4w_env.bat
    call "%OSGEO4W_ROOT%"\apps\grass\grass78\etc\env.bat
@echo off
    path %PATH%;%OSGEO4W_ROOT%\apps\qgis-ltr\bin
    path %PATH%;%OSGEO4W_ROOT%\apps\grass\grass78\lib
    path %PATH%;%OSGEO4W_ROOT%\apps\Qt5\bin
    path %PATH%;%OSGEO4W_ROOT%\apps\Python39\Scripts

    set PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis-ltr\python
    set PYTHONHOME=%OSGEO4W_ROOT%\apps\Python39

    set PATH=C:\Program Files\Git\bin;%PATH%

    
    start "VisualStudioCode for QGIS" /B "C:\Users\web1m\AppData\Local\Programs\Microsoft VS Code\Code.exe" %*

위의 코드를 배치파일로 실행하면 vs code 가 실행되는데 이때 사용하는 python 버전을 QGIS 프로그램의 python을 선택해야 한다. 이는 아래 그림처럼 vs code 우측하단에 빨간색으로 표시된 부분을 클릭한다.

클릭한 후 나타난 다양한 python 버전 중  "C:\Program Files\QGIS 3.28.4\bin\python.exe" 을 선택하면 된다. 아마 전체 경로는 보이지 않는다.

개발환경이 정상적으로 작동하는지를 확인하기 위해서 플러그인 기본 아이콘을 변경하는 작업을 진행한다.

이를 위해서 다음 아이콘을 제작하거나 구글에서 무료 아이콘을 검색해서 다운받는다.

아이콘 크기는 24x24이고 이름을 icon.png로 한다.

 

이제 icon를 변경하기 위해서  다음 QIcon() 함수에 아이콘 이름 icon.png로 하던지 다른 이름으로 변경해도 된다.

변경된 아이콘을 반영하기 위해서는 리소스 파일인 resoruce.py를 갱신해야 한다.

 

리소스 파일을 갱신하기 위해서는 compile.bat라는 파일을 만들고 실행하면 된다. compile.bat 파일 내용은 다음과 같다.

@echo off
call "C:\Program Files\QGIS 3.28.4\bin\o4w_env.bat"
call "C:\Program Files\QGIS 3.28.4\bin\qt5_env.bat"
call "C:\Program Files\QGIS 3.28.4\bin\py3_env.bat"

@echo on
pyrcc5 -o resources.py resources.qrc

플러그인 메뉴에서 Plugin Reloader 기능 중 Configure를 선택하여 갱신하는 플러그인 이름을 지정한다.

이제 변경된 내용을 갱신하기 위해서 Plugin Reloader 기능 중 Reload plugin: exifextractor를 선택하거나 리로더 아이콘을 클릭하면 된다.

 

리로더 아이콘을 클리하면 재로드 메시지와 함께 아이콘이 변경된 것을 확인 할 수 있다.

 

 

아이콘을 클릭하면 다음과 같이 빈 대화상자만 나타난다. 

 

위의 빈 대화상자를 다음 오른쪽 그림과 같이 사용자 인터페이스를 구성하기 위해서는 Qt Designer with QGIS 3.28.4 프로그램을 이용해야 한다.

 

다음 글에서 사용자 인터페이스를 만드는 방법을 설명하기로 한다.

 

반응형
댓글