Tính khoảng cách tối thiểu giữa các điểm và đa giác trong QGIS?


9

Tôi có hai lớp vectơ: một điểm và một đa giác và tôi muốn tính khoảng cách tối thiểu của mỗi điểm từ đa giác (tức là khoảng cách từ điểm gần nhất của đa giác gần nhất).

Có bất kỳ plugin có sẵn trong QGIS để làm điều này?


1
bạn có nghĩa là đỉnh đa giác, trung tâm hoặc cái gì khác?
lynxlynxlynx

Nhiệm vụ này sẽ được xử lý tốt hơn bởi postgis.
Pablo

Ý tôi là khoảng cách từ biên giới của đa giác (thực ra đó là khoảng cách của những con chim biển quan sát trên biển từ bờ biển mà tôi muốn tính toán)
Sylvia

Pablo, thật không may, tôi không biết cách sử dụng PostGIS và tôi không thể viết mã ...
Sylvia

Câu trả lời:


9

Chuyển đổi đa giác của bạn thành điểm đầu tiên là một ý tưởng tồi. Bạn sẽ không tính khoảng cách đến đa giác của mình, bạn sẽ tính khoảng cách đến nút gần nhất của đa giác của bạn (không phải các cạnh có thể gần hơn). Bạn có thể sử dụng Plugin NNJoin để có được số đo chính xác cho đa giác của mình. Hãy chắc chắn rằng các lớp của bạn nằm trong cùng một phép chiếu trước khi thực hiện phân tích.


1
Plugin QGIS NNJoin sẽ đảm nhiệm việc chuyển đổi hệ thống phối hợp. Nhưng bạn nên đảm bảo rằng bạn sử dụng hệ tọa độ dự kiến ​​cho tập dữ liệu nối (tập dữ liệu đầu vào sẽ được chuyển thành hệ tọa độ của tập dữ liệu nối nếu hệ thống tọa độ của chúng khác nhau).
Håvard Tveite

6

Nếu bạn muốn sử dụng QGIS, hàm GRASS v.distance trong plugin GRASS sẽ thực hiện công việc. Các NNJoin Plugin sẽ làm việc cho các tập dữ liệu nhỏ, và ít cồng kềnh để sử dụng.

Các NNJoin Plugin sử dụng QgsGeometry.distance () chức năng (trong đó sử dụng các GEOSdistance) để tính toán khoảng cách.


3

Đầu tiên chuyển đổi đa giác thành các điểm:

Vector -> Công cụ hình học -> Trích xuất nút

Thêm lớp mới này, sau đó tính toán ma trận khoảng cách giữa lớp điểm của bạn và lớp điểm đa giác mới mà bạn vừa tạo

Vector -> Công cụ phân tích -> Ma trận khoảng cách

Đảm bảo chọn "Chỉ sử dụng các điểm mục tiêu (k) gần nhất" làm 1


Đây là một câu trả lời tốt cho câu hỏi ban đầu, nhưng câu hỏi đã được sửa đổi trong một bình luận. Trích xuất các nút và Ma trận khoảng cách có thể không tìm thấy vị trí gần nhất trên đường biên (vị trí gần nhất có thể nằm giữa các điểm của đường đa tuyến biên). GRASS v.distance hoặc plugin NNJoin sẽ.
Håvard Tveite

2

Hãy thử Hub Khoảng cách trong plugin MMQGIS.

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


Người giới thiệu:


2
Khoảng cách trung tâm đã thực hiện công việc, nhưng đối với bản ghi, trước tiên tôi đã chuyển đổi đa giác thành một lớp điểm và tính khoảng cách điểm-điểm tối thiểu. Với các đa giác, nó đã tính được khoảng cách tối thiểu từ tâm hoặc giữa ranh giới ven biển
Sylvia
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.