QGIS에서 Clip(클립) 분석은
한 레이어를 다른 레이어의 범위로 잘라내는 공간 연산입니다.
이번 예시는 Python 콘솔을 활용해
- Clip 자동 실행
- 메모리 레이어 출력
- 벡터 레이어 객체 생성
까지 수행한 사례입니다.
1. 작업 개요
현재 구조는 다음과 같습니다.
- INPUT: 원형(circles) 레이어
- OVERLAY: 1000m 격자(grid) 레이어
- OUTPUT: 격자 영역 안에 포함된 결과
즉,
격자 범위에 해당하는 원형 객체만 남긴 작업입니다.

2. Clip 실행 코드 구조
# buffer
import processing
import os
import time
# 실행 시간 확인
start = time.time()
# 인풋 경로
shpPath_input = r'C:\Users\wnsgu\Downloads\강의자료_ver.2\Section.01&03\SHP\02.clip&intersect\circles.shp'
shpPath_overlay = r'C:\Users\wnsgu\Downloads\강의자료_ver.2\Section.01&03\SHP\02.clip&intersect\grid_1000m.shp'
# 일시 산출물
output_clip = 'memory:output_clip'
# 클립 파라미터
clipParams = {'INPUT':shpPath_input, 'OVERLAY': shpPath_overlay, 'OUTPUT': output_clip}
# 클립 실행
clip = processing.run('native:clip', clipParams)
# 클립 결과 추가 및 완료 메시지
layer_grid=QgsVectorLayer(shpPath_overlay, 'grid')
QgsProject.instance().addMapLayer(layer_grid)
layer_circle=QgsVectorLayer(shpPath_input, 'circles')
QgsProject.instance().addMapLayer(layer_circle)
QgsProject.instance().addMapLayer(clip['OUTPUT'])
print('클립 완료 :', time.time()-start)
INPUT → 잘릴 대상
OVERLAY → 자르는 기준
OUTPUT → 결과 저장 위치
3. 일시 산출물 설정
output_clip = 'memory:output_clip'
여기서 'memory:'는
- 디스크에 저장하지 않음
- RAM에만 생성
- QGIS 종료 시 삭제
즉, 테스트용 임시 결과 레이어입니다.
분석 반복 과정에서는 매우 효율적입니다.
4. QgsVectorLayer 코드 의미
layer_grid = QgsVectorLayer(shpPath_overlay, 'grid')
이 코드는
- shp 파일을
- 'grid'라는 이름으로
- 벡터 레이어 객체로 불러오는 역할을 합니다.
파일을 단순 경로로 쓰는 것이 아니라
QGIS 내부에서 사용할 수 있는 레이어 객체로 변환하는 과정입니다.
이후
QgsProject.instance().addMapLayer(layer_grid)
로 지도에 추가됩니다.
5. 정리
- memory:는 임시 결과 저장 방식
- QgsVectorLayer()는 파일을 백터 레이어 객체로 생성
- native:clip은 공간 자르기 기본 연산
- addMapLayer()는 결과를 화면에 표시
QGIS Python 콘솔에서 native:clip을 활용하면 격자 기준 공간 자르기를 자동화할 수 있으며, 'memory:' 출력과 QgsVectorLayer()는 임시 분석과 레이어 객체 생성의 핵심 요소입니다.
'공간 분석 > 공간 분석 기초' 카테고리의 다른 글
| QGIS Python 실전 프로젝트: 서울시 공공 와이파이 소외지역 분석 자동화 (0) | 2026.02.28 |
|---|---|
| QGIS Python에서 addMapLayer() 기능 (0) | 2026.02.28 |
| QGIS Python 콘솔로 다중 Buffer 자동화하기: 반복문 활용 방법 (0) | 2026.02.28 |
| QGIS Python 콘솔로 Buffer 자동화하기 (0) | 2026.02.28 |
| QGIS Python 콘솔로 공간 처리 알고리즘 파악하기 (0) | 2026.02.28 |