Подвійно зв'язаний список ребер (англ. doubly connected edge list) або півреберна структура даних (англ. half-edge data structure) — це структура даних, що представляє вкладення планарного графу на площину або багатогранник у 3D. Ця структура даних забезпечує дієву маніпуляцію топологічною інформацією пов'язаною з об'єктами, що розглядаються (вершини, ребра, грані). Її використовують багато алгоритмів обчислювальної геометрії для обробки полігонального розбиття площини, часто згадуваних як планарні прямолінійні графи. Наприклад, діаграму Вороного зазвичай представляють як ПЗСР всередині обмежувального прямокутника.
Цю структуру даних вперше представили Мюллер і Препарата для представлення тривимірного опуклого політопа.
Пізніше набули поширення змінені варіанти структури, але назва залишилась.
Звичайно структуру використовують для зв'язних графів, однак ПЗСР можна використовувати і для незв'язних графів також.
Структура даних
ПЗСР складається з трьох типів об'єктів; вершин, півребер і граней. Ці об'єкти головно містять «вказівники» на інші об'єкти. Це можуть бути вказівники C/C++, які містять адресу в пам'яті інших об'єктів, або логічні індекси чи індекси в масиві, або інший тип адресації. Неодмінною властивістю є можливість прямого доступу до об'єкта, на який посилаються, без пошуку.
Вершина
Вершина містить єдиний ПЗСР вказівник, який вказує на будь-яке півребро для якого ця вершина є початком.
Півребро
Півребро містить вказівник на вершину з якої воно починається, вказівник на грань і два вказівники на півребра, один на близнюка і один на наступне півребро. Вказівник на грань посилається на грань, що ліворуч від півребра, тоді як вказівник на півребро близнюка посилається на правий бік ребра, який доповнює його до цілого ребра. Вказівник на наступне півребро посилається на півребро, яке починається у тій же вершині, що і близнюк даного півребра, і яке посилається на ту ж грань, що і дане півребро.
Грань
Грань містить єдиний вказівник на будь-яке півребро, що посилається на цю грань.
Примітки
- Muller, D. E. ; Preparata, F. P. «Finding the Intersection of Two Convex Polyhedra», Tech. Rept. UIUC, 1977, 38pp, also Theoretical Computer Science", Vol. 7, 1978, 217—236
Посилання
- The DCEL Data Structure for 3D Graphics by Ryan Holmes
- The DCEL data structure: a C++ implementation
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Podvijno zv yazanij spisok reber angl doubly connected edge list abo pivreberna struktura danih angl half edge data structure ce struktura danih sho predstavlyaye vkladennya planarnogo grafu na ploshinu abo bagatogrannik u 3D Cya struktura danih zabezpechuye diyevu manipulyaciyu topologichnoyu informaciyeyu pov yazanoyu z ob yektami sho rozglyadayutsya vershini rebra grani Yiyi vikoristovuyut bagato algoritmiv obchislyuvalnoyi geometriyi dlya obrobki poligonalnogo rozbittya ploshini chasto zgaduvanih yak planarni pryamolinijni grafi Napriklad diagramu Voronogo zazvichaj predstavlyayut yak PZSR vseredini obmezhuvalnogo pryamokutnika Cyu strukturu danih vpershe predstavili Myuller i Preparata dlya predstavlennya trivimirnogo opuklogo politopa Piznishe nabuli poshirennya zmineni varianti strukturi ale nazva zalishilas Zvichajno strukturu vikoristovuyut dlya zv yaznih grafiv odnak PZSR mozhna vikoristovuvati i dlya nezv yaznih grafiv takozh Struktura danihKozhne pivrebro maye rivno odne poperednye pivrebro odne nastupne pivrebro i bliznyuka PZSR skladayetsya z troh tipiv ob yektiv vershin pivreber i granej Ci ob yekti golovno mistyat vkazivniki na inshi ob yekti Ce mozhut buti vkazivniki C C yaki mistyat adresu v pam yati inshih ob yektiv abo logichni indeksi chi indeksi v masivi abo inshij tip adresaciyi Neodminnoyu vlastivistyu ye mozhlivist pryamogo dostupu do ob yekta na yakij posilayutsya bez poshuku Vershina Vershina mistit yedinij PZSR vkazivnik yakij vkazuye na bud yake pivrebro dlya yakogo cya vershina ye pochatkom Pivrebro Pivrebro mistit vkazivnik na vershinu z yakoyi vono pochinayetsya vkazivnik na gran i dva vkazivniki na pivrebra odin na bliznyuka i odin na nastupne pivrebro Vkazivnik na gran posilayetsya na gran sho livoruch vid pivrebra todi yak vkazivnik na pivrebro bliznyuka posilayetsya na pravij bik rebra yakij dopovnyuye jogo do cilogo rebra Vkazivnik na nastupne pivrebro posilayetsya na pivrebro yake pochinayetsya u tij zhe vershini sho i bliznyuk danogo pivrebra i yake posilayetsya na tu zh gran sho i dane pivrebro Gran Gran mistit yedinij vkazivnik na bud yake pivrebro sho posilayetsya na cyu gran PrimitkiMuller D E Preparata F P Finding the Intersection of Two Convex Polyhedra Tech Rept UIUC 1977 38pp also Theoretical Computer Science Vol 7 1978 217 236PosilannyaThe DCEL Data Structure for 3D Graphics by Ryan Holmes The DCEL data structure a C implementation