[QGIS] QIGS에서 도형수정 기능을 사용하여 유효하지 않은 도형정보를 수정해보자. ( feat. Polygon must have closed rings 에러 )
문제발생
이번에 연속지적도를 QGIS를 통해서 Postgresql에 넣으려고 하니 위와 같은 에러가 발생했다.
Polygon must have closed rings라는 에러인데, 문구만 보면 Polygon이 아닌 녀석이 숨어있다..
linestring이 숨어 있는 거 같은데..
어떻게 할까 하다가, 부장님이 QGIS에 도형수정 이라는 기능이 있어서 자동으로 잡아준다고 한다.
도형수정
1. 도형수정 팝업창 활성화
[공간처리] -> 툴박스(T)를 통해 툴박스를 활성화 해주자.
만약 QGIS에 툴박스가 안보인다면 아래 링크를 참고하도록 하자.
이제 툴박스에서 벡터도형 -> 도형수정을 선택하여 도형수정 팝업을 활성화 해준다.
입력레이어에서 자신이 도형을 수정하고 싶은 레이어를 지정하고 그냥 실행을 누르면 된다.
( 수정한 도형을 임시레이어로 생성하도록 하자. 이상하게 파일로 저장하면 텍스트가 인코딩이 안되는건지 실제 DB에 넣었을 때 깨지더라... 생성한 임시레이어로 SHP파일을 내보낸 뒤, 그 SHP을 DB에 넣으면 된다... )
다시 import
이제 수정한 도형을 가지고 다시 DB에 import 해보도록 하자.
import 성공... 제대로 된다..
이 도형수정을 사용하면, 유효하지 않은 도형들을 한번에 처리할 수 있다.
( 정확히 어떤 로직인지 모름.. 왜 Polygon만 된다고 하는지도... import할 때, geometry 타입을 지정하는 것도 아닌데.. )
이 방법 말고도 PostGIS 확장팩을 통해 직접 DB에 import할 수도 있다. 끝