Tách một lớp đa giác bằng một lớp đường?


12

Tôi đang vẽ các khu vực hành chính có ranh giới theo các đường phố trong một lớp khác. Vì những con đường này khá dài với nhiều đỉnh, tôi không muốn theo dõi lại chúng. Tôi đang tìm cách để "phân tách" công cụ đa giác như "tính năng phân chia" (công cụ có biểu tượng cái kéo).

Trước: toàn bộ một đa giác với một dòng chạy qua nó

nhập mô tả hình ảnh ở đây

Sau: đường này hoạt động như một cặp kéo và chia đa giác thành 2 phần (trong hình bên dưới, các đa giác được di chuyển ra ngoài chỉ nhằm mục đích minh họa)

nhập mô tả hình ảnh ở đây

Câu trả lời:


8

Trước tiên, bạn phải hợp nhất cả hai hình dạng

nhập mô tả hình ảnh ở đây

Sau đó kích hoạt Polygonizerplugin để định hình lại các dòng thành đa giác:

nhập mô tả hình ảnh ở đây


Ubuntu Qgis của tôi đã phàn nàn về việc thiếu shapely.ops khi tôi cố gắng cài đặt plugin Polygonizer. Ngay bây giờ tôi không biết làm thế nào để sửa nó. Tôi sẽ phải giải quyết vấn đề này trước khi thử giải pháp của bạn. Cảm ơn.
Cao Minh Từ

Nó hoạt động. Điều khiến tôi mất quá nhiều thời gian để chấp nhận câu trả lời của bạn là tôi không biết cách cài đặt shapely.ops. Hóa ra rất dễ dàng: đi đến trung tâm phần mềm Ubuntu, tìm kiếm "shapely" và cài đặt gói duy nhất python-shapely. Sau đó tôi đã có thể cài đặt plugin đa giác và thử giải pháp của bạn. Cảm ơn rất nhiều!
Cao Minh Từ

1
Tôi không thể cài đặt plugin Polygonizer.
gregmacfarlane

4

Tôi đã giải quyết vấn đề này với Hộp công cụ xử lý, sử dụng Polygon-line intersectionthuật toán SAGA .

Quá trình có thể thất bại (nghĩa là không phân tách) nếu đầu dòng bị gãy vào một điểm đỉnh của đa giác. Mở rộng dòng một chút vào đa giác lân cận hoặc khu vực bên ngoài vệ sinh những cạm bẫy đó.


1

Câu hỏi tương tự này dành cho ArcGIS, nhưng có thể cung cấp cho bạn một số ý tưởng từ cuộc thảo luận mà bạn có thể triển khai trong QGIS.

Tôi cũng đã tạo một mô hình ArcGIS mà bạn có thể sao chép bằng các khái niệm tương tự trong QGIS. Tôi đã cố gắng để mô tả các khái niệm mà tôi sử dụng ở đây .


Cảm ơn câu trả lời của bạn, nhưng ngay bây giờ ArcGIS hoặc kỹ năng lập trình nằm ngoài khả năng của tôi.
Cao Minh Từ


0

Nếu bạn không có giấy phép ArcInfo , bạn có thể sử dụng lệnh " geom.splitpolysbylines " trong Môi trường mô hình hóa không gian địa lý . Nó hoạt động hoàn hảo. Tuy nhiên, hãy đảm bảo rằng bạn có ArcGIS 10.1 hoặc ArcGIS 10.0 SP4 và đã cài đặt "R" 2.12 trở lên.


Câu hỏi của tôi là dành cho Qgis (hiển thị trong thẻ) - Tôi đã cập nhật tiêu đề để làm cho nó rõ hơn. Dẫu sao cũng xin cảm ơn!
Cao Minh Từ

1
Xin lỗi vì điều đó. Dù sao đi nữa, nếu "người khác" có cùng loại câu hỏi, anh ấy / cô ấy sử dụng tùy chọn mà tôi đề xuất ở trên.
Doum
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.