QGIS에서 점과 다각형 사이의 최소 거리를 계산합니까?


9

두 개의 벡터 레이어가 있습니다 : 하나의 점과 하나의 다각형. 다각형에서 각 점의 최소 거리 (가장 가까운 다각형의 가장 가까운 점과의 거리)를 계산하려고합니다.

QGIS에 사용 가능한 플러그인이 있습니까?


1
다각형 정점, 중심 또는 다른 것을 의미합니까?
lynxlynxlynx 2016 년

이 작업은 postgis가 더 잘 처리 할 수 ​​있습니다.
Pablo

나는 다각형의 경계로부터의 거리를 의미한다 (실제로 그것은 내가 계산하고 싶은 해안선으로부터 바다에서 관찰 된 조류의 거리이다)
Sylvia

Pablo, 불행히도 PostGIS 사용법을 모르겠고 코드를 작성할 수 없습니다 ...
Sylvia

답변:


9

다각형을 먼저 점으로 변환하는 것은 좋지 않습니다. 다각형까지의 거리를 계산하지 않고 다각형의 가장 가까운 노드까지의 거리를 계산합니다 (가장 가까운 가장자리가 아님). NNJoin 플러그인 을 사용 하여 다각형을 정확하게 측정 할 수 있습니다. 분석을 수행하기 전에 레이어가 동일한 투영에 있는지 확인하십시오.


1
QGIS NNJoin 플러그인은 좌표 시스템 변환을 처리합니다. 그러나 조인 데이터 세트에 대해 투영 된 좌표계를 사용해야합니다 (좌표 시스템이 다른 경우 입력 데이터 세트가 조인 데이터 세트의 좌표계로 변환 됨).
Håvard Tveite

6

QGIS를 사용 하려면 GRASS 플러그인 의 GRASS v.distance 기능이 작업을 수행해야합니다. NNJoin의 플러그인은 작은 데이터 세트에 대한 작동 및 사용에 덜 복잡합니다.

NNJoin의 플러그인 거리를 계산합니다 (GEOSdistance를 사용)를 QgsGeometry.distance () 함수를 사용한다.


3

먼저 다각형을 점으로 변환하십시오.

벡터-> 기하학 도구-> 노드 추출

이 새 레이어를 추가 한 다음, 포인트 레이어와 방금 만든 새 다각형 포인트 레이어 사이의 거리 행렬을 계산하십시오

벡터-> 분석 도구-> 거리 행렬

"가장 가까운 (k) 목표점 만 사용"을 1로 선택하십시오


이것은 원래 질문에 대한 좋은 답변이지만, 질문에서 주석으로 수정되었습니다. 추출 노드와 거리 행렬이 경계에서 가장 가까운 곳을 찾지 못할 수 있습니다 (가장 가까운 곳은 경계 폴리 라인의 점 사이에있을 수 있음). GRASS v.distance 또는 NNJoin 플러그인입니다.
Håvard Tveite

2

MMQGIS 플러그인에서 Hub Distance를 사용해보십시오.

http://michaelminn.com/linux/mmqgis/


참고 문헌 :


2
허브 거리는 작업을 수행했지만 레코드의 경우 먼저 다각형을 포인트 레이어로 변환하고 최소 포인트 간 거리를 계산했습니다. 다각형을 사용하면 중심 또는 해안 경계의 중간에서 최소 거리를 계산했습니다
Sylvia
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.