선을 다각형으로 변환


13

도시 지역이있는 shapefile이 있지만 불행히도 shapefile에는 한 줄만 있습니다. shapefile은 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

QGIS에서이 선들을 area-polygon shapefile로 변환하고 싶습니다. "선에 다각형"도구 (벡터> 형상 도구> 선에 다각형)를 사용하여 시도했지만 제대로 작동하지 않았습니다. 이 도구를 사용한 후 shapefile은 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

QGIS에서 선 모양 파일을 영역 다각형 모양 파일로 변환하는 다른 방법이 있습니까?

그건 그렇고, 나는 QGIS 2.14.3 Essen을 사용하고 있습니다.


2
나는 그 도구를 마지막으로 사용했을 때 비슷한 것을 얻었다. 다각형 도구를 사용하여 다각형을 얻을 수있었습니다.
johns

대답을위한 Thnaks, 다각형 도구는 어디에서 찾을 수 있습니까?
Mark White

Polygonize는 Processing Toolbox, QGIS 지리 알고리즘, 벡터 지오메트리 도구에서 찾을 수 있습니다.
klewis

나는 그것을 시도했지만, 다각형 화기를 실행하면 빈 모양 파일이 나타납니다 :-(
Mark White

보관 용 파일이나 비슷한 곳에 shapefile을 업로드 할 수 있습니까?
AndreJ

답변:


16

Polygonize처리 도구 상자 의 도구는 간단한 줄에서 여전히 잘 작동합니다.

여기에 이미지 설명을 입력하십시오

그러나 선이 교차하거나 공통 정점을 공유해야합니다. 그리고 선에는 자체 교차가 없어야합니다.

모서리 정점을 스냅하여 작동시켜야 할 수도 있습니다. 나는 보통 정점에 대해 스냅 허용 오차를 10 픽셀로 설정했습니다.


1
선을 다각형으로 변환 할 때도 같은 문제에 직면했습니다. "Polygonize"도구로 문제가 해결되었습니다. gis.stackexchange.com/a/211794/62237
Sjs

7

Polygonize도구를 찾을 수없는 경우 힌트 입니다. QGIS 2.18.3 설치 (Windows) 에서 도구 상자 내에서 Polygonize도구를 찾을 수 없습니다 Vector geometry tools. python-shapelyOSGeo4W로 라이브러리 를 설치해야한다는 것을 깨닫는 데 시간이 걸렸습니다 ( Nick Hopton : Perfect Polygons 덕분 에 QGIS ).


감사합니다! Windows의 기본 QGIS에는 래스터 전용 다각형 도구 가 있기 때문에 오랫동안 혼란 스러웠습니다 . 또는 필요하지 않을 수있는 또 다른 단계는 QGIS에서 Geoalgorithms "처리 >> 옵션 >> 공급자"수 있도록하는 것입니다
매트 윌키

이 답변에 감사드립니다. 더 이상 찾지 못해서 미쳤다고 생각했는데 ...
gisnside

3

귀하의 이미지를 보면 각 라인이 영역을 완전히 포함하지 않는다고 가정하고 라인은 울타리 역할을하고 처음에는 다시 연결되지 않습니다. 선의 끝에서 다각형이 만들어지고 있으므로 '다각형 선'도구가 문제없이 작동합니다.

내가 생각할 수있는 유일한 것은 새로운 다각형 레이어를 디지털화하는 것입니다. 고맙게도 QGIS는 2.14에서 사용할 수있는 추적 디지타이징 도구 (자석 아이콘)를 사용하여이를 쉽게 만들었습니다.


0

구멍이 없으면 전체 영역을 덮을만큼 큰 단일 다각형으로 스크래치 레이어를 만듭니다. 그런 다음 라인 대 다각형 결과와 교차시키고 필요에 따라 더 분할합니다.


0

QGIS 2.18 및 QGIS 3.4에서 테스트

"Virtual Layer"통해 사용하는 것이 좋습니다 Layer > Add Layer > Add/Edit Virtual Layer....

에 5 가지 기능이 있다고 가정 해 보겠습니다 ( "lines"아래 이미지 참조).

예

다음 쿼리를 사용하면 결과를 얻을 수 있습니다.

SELECT l.id, l.NAME, MakePolygon(AddPoint(l.geometry,StartPoint(l.geometry)))
FROM lines AS l
GROUP BY l.id

출력 가상 레이어는 다음과 같습니다

결과 _1

@AndreJ 가 이미 언급했듯이 선은 공통 정점을 교차하거나 공유해야합니다. 그리고 선에는 자체 교차가 없어야합니다. 레이어 토폴로지를 정리할 때 v.cleanGRASS 툴셋을 살펴볼 것을 제안 할 수 있습니다 .


라인에 자체 교차가있는 경우 다음 쿼리와 함께 ConvexHull을 사용할 수 있습니다

SELECT l.id, l.NAME, ConvexHull(AddPoint(l.geometry,StartPoint(l.geometry)))
FROM lines AS l
GROUP BY l.id

케이스

산출


참고 문헌 :


0

폴리선이 서로 겹치는 경우 Polygonize도구는 다음과 같이 처리 할 수 ​​없습니다.

여기에 이미지 설명을 입력하십시오

그러나 Lines to polygons도구는 다음과 같이 예상대로 작동합니다.

여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.