Полігони Вороного, які закінчуються до нескінченності?


18

Я працював над реалізацією сценарію voronoi.py (переклад Білла Саймона з кодом Стіва Фортуна). За посиланням QGIS, це в основному той самий код, з яким я працюю, але спосіб генерування полігонів, які можуть поширюватися на нескінченність, відрізняється між ними. У випадку QGIS я припускаю, що деякий обмежуючий прямокутник створюється певною мірою за межами розширень точки сайту. У моєму випадку я генерую помилкові точки сайту як коло, що оточує цікаві місця. Точки кола мають радіус удвічі більший за діаметр розміру точок ділянки. Результати між ними показані на доданому малюнку, реалізація QGIS зліва та моя реалізація праворуч. Приклади Вороного.

Як видно, реалізація QGIS створює дивні багатокутники, які не мають точок сайту (див. Приклад в обох реалізаціях). Це очевидно неправильно, але я не впевнений, чи правильна моя реалізація. Оскільки у мене немає доступу до ліцензії ArcInfo для ArcMap, я не можу порівняти те, що ArcMap генерує споконвічно, і я не бачу способу приєднати файл файлу до формату для когось для тестування. Тож, якщо хтось має коментар щодо мого використання «нескінченного кола», щоб допомогти змусити крайові багатокутники проти «прямокутника нескінченності», я би вдячний. Ще краще, якщо хтось зацікавлений у тестуванні результатів на якійсь іншій ГІС-платформі, я можу надати форму файлу використовуваних точок сайту.


Очевидно, що проблема полягає в тому, що багатокутники, що знаходяться за межами точок сайту, перетинаються, тому, символізуючи їх без заповнення, вони виглядають як окремі багатокутники. На наступному малюнку показано, що відбувається при виборі полігону про ділянку 473 та 415. Тож оригінальні запитання залишаються, але з’являється нова зморшка.


Це помилка (або "незавершеність"), правильні результати в QGIS, якщо використовується буфер 0%. Що ще потрібно вирішити, чи буде щільний візерунок круглих "точок нескінченності" давати такий же результат, як прямокутні "нескінченні краї".

введіть тут опис зображення


Я хотів би спробувати ваші точкові дані. Мої тести не показують такої поведінки.
underdark

У мене є готовий поштовий файл, зв’яжіться зі мною електронною поштою на Dan_Patterson@carleton.ca і я можу переслати його вам. Я думаю, що я додав 10% буфер під час запуску voronoi в QGIS.

Можливо, ви могли б переформулювати те, що є вашим поточним питанням (після оновлення 2).
underdark

Чудова робота. Сподіваюся, ви якось поділитесь кодом зі спільнотою.
Міхаліс Авраам

дивіться посилання нижче у відповіді, мені довелося оновити, оскільки ESRI вбив оригінальні теми

Відповіді:


10

Я зміг підтвердити, що моя реалізація принаймні порівнює з ArcGIS (але вимагає ліцензії ArcInfo). Реалізація QGIS помиляється, якщо використовується відстань буфера. Для тих, хто використовує ArcGIS з ліцензією ArcView, набір інструментів для Voronoi та / або Delaunay можна знайти як інструменти триангуляції .


У коді QGIS Voronoi було кілька помилок. У QGIS 3.2.2 було застосовано багато виправлень. Було б цікаво почути, якщо це допомогло.
Håvard Tveite
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.