QGIS Python 콘솔에서 processing.run()으로 분석을 실행하면
결과는 “객체”로 반환됩니다.
하지만 이 상태에서는 지도 화면에 자동으로 보이지 않습니다.
그 결과를 실제 화면에 추가하는 코드가 바로 아래 한 줄입니다.
QgsProject.instance().addMapLayer(buffer['OUTPUT'])
1. 코드 해석
이 한 줄을 단계별로 보면 다음과 같습니다.
1) QgsProject.instance()
현재 열려 있는 QGIS 프로젝트 객체를 불러옵니다.
즉, 지금 작업 중인 프로젝트 환경을 의미합니다.
2) .addMapLayer()
해당 프로젝트에 레이어를 추가하는 함수입니다.
3) buffer['OUTPUT']
processing.run()의 결과 딕셔너리에서
실제로 생성된 출력 레이어 객체를 가져옵니다.
2. 왜 필요한가?
processing.run()은 결과를 반환만 할 뿐
자동으로 지도에 추가하지 않습니다.
즉,
buffer = processing.run(...)
까지만 하면 결과는 메모리에 존재하지만 화면에는 보이지 않습니다.
addMapLayer()가 있어야
비로소 지도에 표시됩니다.
3. 정리
QgsProject.instance().addMapLayer(buffer['OUTPUT'])는 처리 결과 레이어를 현재 QGIS 프로젝트에 추가
'공간 분석 > 공간 분석 기초' 카테고리의 다른 글
| QGIS Python 실전 프로젝트: 서울시 공공 와이파이 소외지역 분석 자동화 (0) | 2026.02.28 |
|---|---|
| QGIS Python으로 Clip 자동화하기 (0) | 2026.02.28 |
| QGIS Python 콘솔로 다중 Buffer 자동화하기: 반복문 활용 방법 (0) | 2026.02.28 |
| QGIS Python 콘솔로 Buffer 자동화하기 (0) | 2026.02.28 |
| QGIS Python 콘솔로 공간 처리 알고리즘 파악하기 (0) | 2026.02.28 |