임소반 경계를 새로 그리거나 기존 임상도를 수정하고 나서 QGIS에서 전체 레이어를 열어보면, 분명 붙어 있어야 할 두 폴리곤 사이에 실선 하나 두께만큼의 틈이 남아 있는 경우가 있다. 확대해 보면 별것 아닌 것 같은데, 면적을 다시 계산해 보면 소반 몇 개의 면적이 미묘하게 어긋나 있고, 산림경영계획서에 들어갈 임소반별 면적 합계가 전체 필지 면적과 맞지 않는 상황까지 벌어진다. 여러 명이 나눠서 디지타이징한 임상도, 혹은 예전 파일을 편집 프로그램만 바꿔가며 몇 년째 이어받은 자료에서 자주 보게 되는 문제다.
임소반 경계에 위상 오류가 쌓이는 이유
위상(topology) 오류는 한 번에 크게 터지지 않고 조금씩 누적된다는 점이 골치 아프다. 스냅핑 설정을 켜지 않은 채로 인접 소반 경계를 따라 그리면 노드가 완전히 겹치지 않고 아주 미세하게 어긋나는데, 화면 배율이 낮을 때는 전혀 티가 나지 않는다. 여기에 좌표계나 출처가 다른 원본 자료(과거 도면, GPS 실측 트랙, 위성영상 판독 결과)를 그대로 얹어서 편집하면 오차는 더 커진다. 또 하나 흔한 원인은 공동 작업이다. 담당자별로 소반을 나눠서 편집하고 나중에 하나의 shapefile로 합치는 방식을 쓰는 현장이 많은데, 이 과정에서 경계선을 각자 따로 그리다 보니 겹침(overlap)과 틈(gap)이 동시에 생긴다. 가을철 벌채 예정지 조사처럼 일정이 촉박한 시기에는 이런 정리 작업이 뒤로 밀리다가 나중에 걷잡을 수 없이 쌓이는 걸 여러 번 봤다.
QGIS 위상 점검기가 잡아내는 오류 유형
QGIS에는 코어 플러그인으로 제공되는 위상 점검기(Topology Checker)가 있다. 플러그인 관리자에서 기본적으로 꺼져 있는 경우가 많으니, Plugins 메뉴의 “Manage and Install Plugins”에서 Installed 탭을 확인해 체크가 되어 있는지부터 봐야 한다. 활성화하면 Vector 메뉴 아래 위상 점검기 항목이 생기는데, 레이어 종류에 따라 점검할 수 있는 규칙이 다르다.
임소반처럼 폴리곤으로 구성된 레이어라면 인접 폴리곤 사이에 틈이 없어야 한다는 규칙, 폴리곤끼리 공통 영역을 공유해서는 안 된다는 규칙(겹침 방지), 중복된 도형이 없어야 한다는 규칙, 그리고 각 도형 자체가 유효한 지오메트리여야 한다는 규칙을 함께 걸어두는 걸 추천한다. 임도나 계류 같은 선형 레이어를 같이 검토한다면 오버슛(dangle, 선이 다른 선과 만나지 않고 허공에 뜬 채 끝나는 경우)과 유사 노드(pseudo node) 규칙도 쓸모가 있다. 점 레이어(표본점, 벌채 표시점 등)는 폴리곤 내부에 위치해야 한다는 규칙으로 표본점이 소반 경계 밖으로 튀어나간 경우를 걸러낼 수 있다.
점검 절차
규칙을 설정한 뒤 Validate All(또는 필요하면 현재 화면 범위만 보는 Validate Extent)을 실행하면 결과 목록에 오류가 좌표와 함께 쌓인다. 목록에서 항목을 클릭하면 지도 화면이 해당 위치로 이동하니, 하나씩 확대해 가며 확인하면 된다. 오류가 수백 개 단위로 쏟아지는 경우도 있는데, 처음부터 전부 손으로 고치려 하지 말고 겹침과 틈부터 우선순위를 두고 처리하는 편이 낫다. 면적 계산이나 소반 구분에 직접 영향을 주는 오류이기 때문이다. 반면 아주 미세한 유사 노드 같은 항목은 전체 결과에 영향이 적은 경우가 많아 뒤로 미뤄도 된다.
수정 작업에서 놓치기 쉬운 부분
오류를 고칠 때는 편집 세션을 켜고 스냅핑 툴바에서 허용 오차(tolerance)를 픽셀 단위가 아니라 지도 단위로 설정해 두는 편이 안전하다. 화면을 얼마나 확대했는지에 따라 스냅 결과가 달라지는 걸 모르고 작업하면, 오류 하나를 고치는 과정에서 새로운 미세 오차를 또 만들어내는 경우가 생긴다. 실제로 같은 구간을 세 번 넘게 고쳐본 경험이 있다. 정점 편집 도구(Vertex Tool)로 노드를 직접 겹치도록 옮기거나, 폴리곤을 합치고 다시 나누는 방식(Union 후 재분할)이 경계가 복잡하게 얽힌 구간에서는 오히려 더 빠를 때도 있다.
수정이 끝났다고 바로 최종본으로 쓰기보다는, 위상 점검을 한 번 더 돌려서 결과가 0건인지 확인하는 습관을 들이는 게 좋다. 특히 여러 사람이 나눠 작업한 파일을 병합했을 때는 반드시 재검증을 거쳐야 하는데, 이 단계를 생략했다가 나중에 면적 불일치 지적을 받아 도면을 다시 손봐야 하는 경우를 주변에서 어렵지 않게 들을 수 있다.
현장에서 쓸 수 있는 점검 체크리스트
- 편집 시작 전 스냅핑을 켜고 허용 오차를 지도 단위로 지정했는가
- 인접 폴리곤 겹침, 틈, 중복 도형 세 가지 규칙은 기본으로 걸어두었는가
- 선형·점 레이어를 함께 다룬다면 오버슛과 포함 관계 규칙도 추가했는가
- 여러 담당자의 파일을 병합한 뒤 위상 점검을 다시 실행했는가
- 수정 후 면적 합계가 원본 필지·소반 면적과 일치하는지 별도로 대조했는가
위상 오류는 화면상으로는 잘 안 보이다가 면적 계산이나 다른 시스템과의 데이터 연동 단계에서야 문제로 드러나는 경우가 많다. 편집 단계에서부터 위상 점검기를 습관적으로 돌려보는 것만으로도, 나중에 도면 전체를 다시 열어 하나하나 대조하는 수고를 상당 부분 줄일 수 있다.