Розуміння різниці між полігоном та мультиполігоном для форм-файлів у QGIS?


30

Створення шару Scratch дає мені вибір між полігоном та мультиполігоном, тому я почав цікавитись, як мені їх використовувати.

Новий шар скретч-темпу

Читаючи нову книгу "Освоєння QGIS" (через цю відповідь Джозефа на те, що означає буфер у діалоговому вікні QGIS Voronoi? ), Коментар авторів був:"ESRI shapefiles store geospatial data in multi- type geometry, so using multi- type geometry is a good practice if you plan on converting between formats."

Як я повинен вибрати один з них (Полігон або Мультиполігон), коли створюю новий шар багатокутника? (Я переплутав багатокутник з багаточастинним багатокутником, тому вибрав полігон.)

Однією з останніх ситуацій, в яких я вибрав полігон / мультиполігон, було зміна довжини паралельної лінії на роздвоєння багатокутника в QGIS? в якому я малюю фіктивний багатокутник як фоновий шар. Працюючи в основному над профілями, здавалося, що я повинен вибрати мультиполігон, хоча мені потрібен був лише один багатокутник. У цьому випадку мені потрібно було просту геометрію багатокутника без будь-якого атрибута (Не впевнений, що цей приклад робить якусь різницю.)


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

@Вінсе спасибі Я додав останній досвід, в якому мені потрібно було вибрати один з них. Не впевнений, чи має цей спрощений приклад якийсь сенс.
Казухіто

@Vince Що стосується останньої частини Вашого коментаря, чи не потрібно мені турбуватися про одно- чи багато-, наскільки я збираюся зберегти шар як форм-файл на диску?
Казухіто

Відповіді:


36

З більш формальної точки зору я повідомляю про визначення як для багатокутника, так і для багатополігона (наступний текст та зображення походять з цього документа Стандартів OGC® , усі кредити цитується джерелом).


Полігон

Полігон - це плоска поверхня, визначена 1 зовнішньою межею та 0 або більше внутрішніх меж. Кожна внутрішня межа визначає отвір у Полігоні.

Зовнішня межа LinearRing визначає “верх” поверхні, яка є стороною поверхні, від якої зовнішня межа виявляється для переходу кордону в напрямку проти годинникової стрілки. Внутрішні LinearRings матимуть протилежну орієнтацію, і виглядатимуть як за годинниковою стрілкою, якщо дивитися з «верху».

Твердження для полігонів (правила, що визначають дійсні багатокутники) наступні:

  1. Полігони топологічно закриті;
  2. Межа багатокутника складається з набору лінійних кілець, що складають його зовнішні та внутрішні межі;
  3. Немає двох Кілець у межовому хресті та Кільця в межі Полігона не можуть перетинатися в точці, але лише як дотична;
  4. Полігон може не мати ліній зрізу, шипів або проколів;
  5. Інтер'єр кожного полігону - це з'єднаний набір точок;
  6. Зовнішній вигляд багатокутника з 1 або більше отворами не з'єднаний. Кожен отвір визначає з'єднаний компонент зовнішності.

Нижче наведено кілька прикладів багатокутників:

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


Мультиполігон

Мультиполігон - це багатоповерхня, елементами якої є багатокутники.

Твердження для MultiPolygons наступні:

  1. Інтер'єри 2 полігонів, які є елементами багатополігона, можуть не перетинатися;
  2. Межі будь-яких 2 Полігонів, які є елементами багатополігона, не можуть «перетинатися» і можуть торкатися лише кінцевої кількості точок;
  3. Мультиполігон визначається як топологічно замкнутий;
  4. У мультиполігона може бути відсутні лінії зрізу, шипи або проколи, MultiPolygon - це звичайний набір закритих точок;
  5. Внутрішня частина багатополігона з більш ніж 1 полігоном не пов'язана; кількість з'єднаних компонентів внутрішніх частин багатополігона дорівнює кількості полігонів у мультиполігоні

Межа мультиполігону - це сукупність замкнутих кривих (LineStrings), що відповідають межам його елемента Полігони. Кожна крива в межі Мультиполігону знаходиться в межі рівно 1 елемента многокутника, а кожна крива в межі елемента багатокутника знаходиться в межі мультиполігону.

Нижче наведено кілька прикладів MultiPolygons:

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


+1 Дуже дякую! Це так корисно. Мабуть, знадобилося багато часу, щоб узагальнити їх у такому стислому стилі, я не можу уявити, як я міг би це зробити ... Тому, здається, це колекція багатокутників, набір поверхонь та підтримувана досить слабкою орієнтиром у терміни топології (просто моє перше враження). Я буду читати і перечитувати пов'язаний матеріал, це дуже цікаво!
Казухіто

Я думаю, що вам потрібно думати про багатополігон з геометричної точки зору. Найбільш ясна відмінність, яку я бачу, полягає в тому, що, починаючи з будь-якого місця на поверхні полігону, ви можете дістатись до будь-якого іншого місця на ньому, тоді як для багатополігона це не завжди відповідає (див. Для довідки останні приклади для обох категорій на наведених вище зображеннях ).
мгрі

Зрозумів, дякую. Так, одна суміжна геометрія чи ні, .. це має велике значення. Залишилося лише питання, з яким я боремося, як ми ставимо багаточастинний об’єкт з точки зору цієї відмінності.
Казухіто

1
Що робить перший приклад MultiPolygon?
Штійн

1
@Stijn перший приклад - це багатополігон, оскільки в деяких випадках дві точки всередині нього можуть бути з'єднані лінією, яка не повністю міститься в самому полігоні. Така поведінка не допускається для багатокутника, тому це багатополігон.
mgri

13

Форми багатокутників побудовані з одного або декількох замкнутих кілець. Якщо форма має кілька кілець, вони можуть бути зовнішніми і внутрішніми (наприклад, утворюють пончик) або декількома зовнішніми (наприклад, острівні ланцюги). введіть тут опис зображення

Звичайно, наявність декількох зовнішніх приміщень не заважає мати одне або кілька внутрішніх кілець на кожній формі. У специфікації shapefile зазначено, що:

  1. Зовнішні кільця повинні бути за годинниковою стрілкою, тоді як внутрішні кільця повинні бути проти годинникової стрілки (ця умова відома як правило праворуч, оскільки форма завжди буде з правого боку, коли ви ходите по периметру; на жаль, вона також може бути відома як правило ліворуч , тому що зовнішні кільця слідують напрямку згорнутої лівої руки великим пальцем вгору зверху фігури)
  2. Внутрішні кільця завжди повинні відповідати зовнішньому кільцю, яке вони перегороджують
  3. Ні зовнішні, ні внутрішні кільця не можуть перекриватися або мати спільну межу (такі функції можуть бути заповнені, але вони недійсні та можуть спричинити дивні збої в геообробці).

Shapefiles не роблять різниці між цими об'єктами - всі вони є багатокутниками (і кожна геометрія пов'язана з одним записом dBase).

Тим НЕ менше, деякі інструменти роблять роблять відмінність, QGIS є одним з них. Якщо все, що ви коли-небудь матимете у формі, це прості форми з одним кільцем , то ви можете сміливо вибирати Полігон. Якщо фігури можуть містити «дірочки», також безпечно вибирати Полігон. Якщо, однак, деякі форми можуть містити кілька зовнішніх кілець, то вам потрібно вибрати Мультиполігон.


1
Це чудовий поглиблений підсумок форм-файлу, дуже дякую! Зараз я розумію, що більшість мого минулого досвіду підпадає під використання Polygon. В майбутньому я буду використовувати мультиполігон, коли мені потрібно оцифрувати нори, щось на зразок озер. Ще раз дякую вам!
Казухіто

1
Дякую за те, що додали фігуру, тому праворуч - це декілька зовнішніх кілець, для яких мені потрібно вибрати Мультиполігон ... а не той, що знаходиться в центрі з отвором!
Казухіто

3
Я мушу повернутися і позначити їх, але так, зелений багатокутник - це єдиний багатополігон
Вінс

1
У випадку з двома кільцями (мультиполігоном), чи мають ці два кільця однаковий запис, якщо ми бачимо таблицю атрибутів? (тобто форма файлу має лише один запис)?
Казухіто

1
Так, це одна геометрія в одному записі
Вінс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.