나는 당신이 두 번째 방법에서 겪는 것과 동일한 문제를 경험했습니다. Raster를 Vector로 내 보낸 후 v.generalise를 사용하고 사용하려고하는데 알고리즘에 영향을받지 않는 '단계적'경계가있는 부드러운 다각형을 주로 얻습니다.
내 작업에 적합한 프로세스를 찾았습니다. 최상의 방법인지 확실하지 않지만 도움이되는 경우 공유 할 것이라고 생각했습니다.
내가 시작한 것은 BoM 의 ASCII 그리드였습니다 .
내가 BoM이 다음과 같이 생산하는 것과 비슷한 것을 원했습니다.
다음 단계를 사용하여 결과에 만족할 수있었습니다.
- 그리드 (제 경우 BoM의 ASCII 그리드)를 QGIS에로드하십시오.
- 개별 클래스로 기록됩니다. (처리 도구 상자> 잔디> 래스터> r.recode)
- 다수의 필터를 실행하여 '정리'(Processing Toolbox> SAGA> Raster Filter> Majority Filter)
- 1 간격으로 필터링 된 그리드에서 등고선을 작성하고 속성 'class'에 저장했습니다 (내 클래스가 1,2,3,4 등이기 때문에). (래스터 '메뉴'> 추출> 컨투어)
- 출력 윤곽은 다소 일반화되었지만 '스네이크'알고리즘으로 v.generalized를 사용하여 부드럽게 처리했습니다. (Processing Toolbox> Grass> Vector> v.generalize)
- 그런 다음 선을 다각형으로 변환했습니다. (Processing Toolbox> QGIS geoalgorithms> Vector Geometry Tools> Lines to Polygons)
- 마지막으로 단일 다각형을 여러 부분으로 변환해야 모든 다각형이 멋지게 그려졌습니다. (처리 도구 상자> QGIS 지리 알고리즘> 벡터 지오메트리 도구> 싱글 파트와 멀티 파트).
스타일링 후 내 출력은 다음과 같습니다.
누군가가 더 간단한 방법을 알고 있다면 듣는 것에 관심이 있습니다. 원래 @Rx_와 비슷하다고 생각했는데 래스터를 벡터로 변환 한 다음 일반화하면 끝날 것입니다. 내가해야 할 일은 훨씬 더 길었다.