Розщеплення неправильного багатокутника на рівні площі за допомогою QGIS?


10

Я геодезист і використовую QGIS для ведення записів ґрунтових випробувань на цивільних проектах і постійно забезпечую площу тестової партії або кількість необхідних партій. Вони частіше за все мають неправильну форму, і мені цікаво.

Чи є плагін / рішення для вирізання шару, що містить неправильні багатокутники, на рівні площі або кількість партій із заданою площею, в результаті чого найбільше число лотів залежить від наданої площі?


Тут можуть бути корисними деякі рішення ArcGIS, розміщені раніше . Зокрема, я розмістив програмно-агностичний алгоритм .
whuber

Відповіді:


5

Найпростіший спосіб:

  • Відкрийте QGIS і завантажте розширення mmqgis через завантажувач плагінів
  • Завантажте свої форми та встановіть їх проекцію як проект CRS (клацання правою кнопкою миші)
  • Перейти до mmqgis - створити - створити шар сітки
  • Визначте сітку з достатньою відстані для ваших багатокутників. Крім прямокутників, ви також можете визначити шестикутники та інше
  • Тепер зробіть простий кліп з функцією у векторному меню, щоб отримати однаково розташовані частини ваших багатокутників. (обріжте створену сітку за допомогою багатокутників). Це вирішиться у чомусь подібномувведіть тут опис зображення
  • Тепер ви можете приєднатись до атрибутів старої форми та нової, щоб зберегти таблицю атрибутів. Ви також можете провести союз замість кліпу, щоб зберегти атрибути, але це може зажадати деякої післяобробки вашої форми залежно від структури поверхні.

1
ах, я щойно помітив, що це рішення не вирішується в однаково розташованих місцях через вирізання. Шрі. Можливо, це може стати основою нового сценарію, якщо ви будете брати лише повний прямокутник у ядрі полігонів.
Curlew

2

є декілька способів розділити файли форм за допомогою інструментів відкритих джерел. але я ніколи не намагався розділити їх на рівні частини, коли вхідні файли є неправильним багатокутником. все ж ви хочете спробувати, ви можете спробувати наступними способами.

  1. shp2tile - він може розділити рівні частини.

  2. Ви можете прочитати це питання Як розділити вектор на рівні менші частини в QGIS або подібному?

  3. Ви можете домогтися цього за допомогою ogr2ogr з деяким запитом sql та для циклу.

     ogr2ogr newshape_1.shp input.shp -sql "SELECT * FROM MyShape WHERE size = 100"
    
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.