Có thể tạo ra một mẫu boustrophedon lấp đầy Vùng vectơ bằng GRASS không?


21

Có thể tạo ra một mẫu boustrophedon lấp đầy Vùng vectơ bằng GRASS không?

Tôi có một vùng vectơ trong GRASS. Và tôi muốn tạo ra một vectơ (một đa tuyến) là mẫu bostrophedon lấp đầy vùng này.

Trong hình dưới đây, tôi có vùng "màu xám" và tôi muốn tự động tạo đa tuyến màu đỏ.

Có thể với GRASS hoặc một công cụ GIS khác không?

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

Trong một thế giới hoàn hảo, hàm sẽ lấy các đối số sau:

  • Điểm bắt đầu (phải ở bất kỳ đâu trong khu vực)
  • Khoảng cách giữa hai đường song song
  • Một hướng (một vectơ sẽ giúp vẽ mẫu)

Câu hỏi thú vị. Làm thế nào bạn sẽ xác định điểm bắt đầu? "Trên cùng bên trái" có thể không phải lúc nào cũng liên quan đến một điểm góc đẹp như trong ví dụ của bạn.
Darren đối thủ

Tôi đã trả lời bình luận của bạn trong câu hỏi
Adrien BARRAL

1
Có lẽ một cái gì đó có thể được nấu chín bằng PyGRASS: grass.osgeo.org/grass70/manuals/libpython/pygrass_index.html
markusN

Là đầu ra cần thiết chỉ là một hình ảnh với các đường được vẽ trên đó, hoặc bạn có thực sự sau một số đầu ra của tọa độ có thể được cung cấp cho máy kéo để cày một cách hiệu quả nhất một trường không?
nmtoken

Câu trả lời:


2

Tôi không biết làm thế nào để xây dựng chức năng như vậy, nhưng các bước để thực hiện có thể là

  1. Vẽ một dòng với góc phương vị mong muốn và tạo các dòng mới với phần bù để đa giác được bao phủ hoàn toàn.

Trường dòng được tạo

  1. Bộ đệm đa giác để xác định khoảng cách giữa ranh giới đa giác và boustrophedon. Cắt các đường ở ranh giới của đa giác được đệm và giữ các phần bên trong.

Trường dòng cắt với đa giác được đệm

  1. Kết nối điểm cuối và điểm bắt đầu của các dòng theo đúng thứ tự.

Mẫu boustrophedon đã sẵn sàng


1
Tôi đã thử điều tương tự, tôi nghĩ rằng bạn đang ở một cái gì đó ở đây. Bước 1 và 2 khá dễ dàng - hoặc có thể được mô phỏng. Bước 3 phức tạp hơn .. có thể trong postgis sắp xếp các điểm đại diện cho các st_intersection()đường song song / bộ đệm bên trong theo ST_LineLocatePoint()giá trị của chúng dọc theo bộ đệm bên trong và nối các cặp thay thế.
Steven Kay

1
Nếu ranh giới của đa giác có các góc bên trong hoặc gai thì các đường nối giữa điểm cuối và điểm bắt đầu có thể giao nhau với đường biên. Không khó để kiểm tra nếu giao lộ xảy ra nhưng điều gì sẽ là cách đúng để vẽ đường thẳng trong trường hợp đó và làm thế nào để tự động thực hiện? Có thể không dễ để tìm một giải pháp chung.
dùng49584

bạn nói đúng, chỉ đường chính xác sẽ rất khó. Ngoài ra, nghi ngờ phương pháp này sẽ có các trường hợp cạnh, ví dụ như các trường hình chữ u hoặc các trường có lỗ :)
Steven Kay
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.