Полігональна сітка (англ. Polygon mesh) — це набір вершин, ребер, та граней, що описують форму багатогранного об'єкта в тривимірній графіці та твердотілому моделюванні. Грані зазвичай складаються з трикутників (сітка з трикутників), чотирикутників, чи інших опуклих многокутників, що спрощує їх рендеринг, хоча можуть використовуватись і загальніші, неопуклі многокутники, чи багатокутники з дірками.
Дослідження полігональних сіток — це великий підрозділ комп'ютерної графіки та геометричного моделювання. Різні представлення полігональних сіток використовуються для різних цілей та застосунків. Серед операцій, які можна виконувати над сітками, можуть бути операції булевої алгебри, згладжування, спрощення та багато інших. Для передачі полігональних сіток по мережі використовуються мережеві представлення, такі як «потокові» та «прогресивні» сітки. Об'ємні сітки відрізняються від полігональних тим, що вони явно представляють поверхню та об'ємні структури, тоді як полігональні сітки явно представляють лише поверхню, а об'єм залишається неявним. Оскільки полігональні сітки широко використовуються в комп'ютерній графіці, для них розроблені алгоритми трасування променів, виявлення зіткнень та [en].
Математичний еквівалент полігональних сіток — неструктуровані сітки. Вони досліджуються методами дискретної геометрії.
Елементи моделювання сітки
Об'єкти, створені за допомогою полігональних сіток, повинні зберігати різні типи елементів, такі як вершини, ребра, грані, многокутники (полігони) та поверхні. У багатьох випадках, зберігаються лише вершини, ребра, грані, або многокутники. Деякі візуалізатори можуть підтримувати лише тристоронні грані, тому полігони повинні бути побудовані із них, як показано вище. Однак, багато візуалізаторів підтримують многокутники з чотирма та більше сторонами, або вміють перетворювати многокутники в трикутники, роблячи необов'язковим зберігання сітки в тріангульованому вигляді. Також в деяких випадках, таких як моделювання голови, бажано вміти створювати тристоронні і чотиристоронні многокутники.
Вершина: містить інформацію, таку як позиція (зазвичай у тривимірному просторі), колір, нормальний вектор та координати текстури.
Ребро з'єднує дві вершини.
Грань це набір ребер, в якому трикутна грань має три ребра та чотирикутна — чотири. Багатокутник (Полігон) містить довільну кількість граней. У системах, які підтримують багатосторонні грані, полігони та грані еквівалентні. Однак, більшість апаратного забезпечення для рендерингу підтримує лише грані з трьома або чотирма сторонами, так що полігони представлені як множина граней. Математично, полігональна сітка може бути представлена у вигляді неструктурованої сітки, або неорієнтованого графа, з додаванням властивостей геометрії, форми та топології.
Поверхні, або групи згладжування, корисні, але не обов'язкові для групування гладких областей. Розглянемо циліндр із кришкою, такий як пляшка з газованою водою. Для плавного затінення боків всі нормалі поверхні повинні бути спрямовані горизонтально від центру, тоді як нормалі шапок повинні бути спрямовані прямо вгору і вниз. Видані у вигляді єдиної поверхні, затіненої за Фонгом, вершини складки мали б неправильні нормалі. Таким чином, для групування гладких частин сітки необхідний певний спосіб визначення місця припинення згладжування, подібно до того, як багатокутники групують 3-сторонні грані. Як альтернатива забезпеченню поверхонь / згладжувальних груп, сітка може містити інші дані для обчислення тих самих даних, наприклад, кут розщеплення (полігони з нормалями вище цього порогу або автоматично обробляються, як окремі згладжувальні групи, або деякі методи, такі як розщеплення або фаска автоматично застосовується до краю між ними). Крім того, сітки з дуже високою роздільною здатністю менш схильні до проблем, які потребують згладжування груп, оскільки їх багатокутники настільки малі, що робить потребу неактуальною. Крім того, існує ще одна альтернатива у можливості простого від'єднання самих поверхонь від решти сітки. Візуалізатори не намагаються згладжувати краї несуміжних багатокутників.
Групи: Деякі формати сіток містять групи, які визначають окремі елементи сітки, і корисні для визначення окремих під-об'єктів для скелетної анімації, або окремих виконавців для нескелетної анімації.
Матеріали: Як правило, визначаються матеріали, що дозволяють різним частинам сітки використовувати різні шейдери при отриманні.
Більшість форматів сіток також підтримують певну форму УФ-координат, які є окремим двовимірним поданням сітки, "розгорнутою", щоб показати, яку частину двовимірної карти текстури застосовувати до різних полігонів сітки. Також сітки можуть містити іншу інформацію про такі атрибути вершин, як колір, дотичні вектори, карти ваги для управління анімацією тощо (іноді їх також називають каналами).
Представлення
Полігональні сітки можуть бути представлені безліччю способів, використовуючи різні способи зберігання вершин, ребер і граней. У них входять:
- Список граней: опис граней відбувається за допомогою покажчиків в список вершин.
- «Крилате» представлення: у ньому кожна точка ребра вказує на дві вершини, дві грані і чотири (за годинниковою стрілкою і проти годинникової) ребра, яким вона належить. Крилате подання дозволяє обійти поверхню за сталий час, але у нього великі вимоги по пам'яті для зберігання даних опису сітки.
- Півреберні сітки: спосіб схожий на «крилате» представлення, за винятком того, що використовується інформація обходу лише половини грані.
- Чотириреберні сітки, які зберігають ребра, півребра і вершини без будь-якої вказівки на полігони. Полігони прямо не виражені в представленні, і можуть бути обчислені при обході структури. Вимоги по пам'яті аналогічні півреберним сіткам.
- Таблиця кутів, які зберігають вершини в зумовленій таблиці, такій, що обхід таблиці неявно задає полігони. По суті, це «віяло трикутників», використовуване в апаратному рендерінгу. Представлення більш компактне і більш продуктивне для знаходження полігонів, але операції по їх зміні повільні. Більш того, таблиці кутів не подають сітки повністю. Для представлення більшості сіток потрібно кілька таблиць кутів (віял трикутників).
- Вершинне представлення: представлені лише вершини, що вказують на інші вершини. Інформація про грані та ребра виражена неявно в цьому поданні. Однак, простота представлення дозволяє проводити над сіткою безліч ефективних операцій.
Кожне з представлень має свої переваги і недоліки.
Вибір структури даних визначається застосуванням, необхідною продуктивністю, розміром даних, операціями, які будуть виконуватися. Наприклад, легше мати справу з трикутниками, ніж з багатокутниками загального вигляду, особливо в обчислювальній геометрії. Для певних операцій необхідно мати швидкий доступ до топологічної інформації, такої як ребра або сусідні грані; для цього потрібні більш складні структури, такі як «крилате» представлення. Для апаратного рендерінгу потрібні компактні, прості структури; тому в API низького рівня, такі як DirectX і OpenGL зазвичай включена таблиця кутів (віяло трикутників).
Вершинне представлення
Вершинне представлення описує об'єкт як множину вершин, з'єднаних з іншими вершинами. Це найпростіше представлення, але воно не широко використовується, тому що інформація про грані та ребра не виражена явно. Тому потрібно обійти всі дані, щоб згенерувати список граней для візуалізації. Крім того, нелегко виконуються операції на ребрах і гранях. Однак, сітки ВП отримують вигоду з малого використання пам'яті і ефективної трансформації.
Список граней
Сітка з використанням списку граней представляє об'єкт як множину граней і множину вершин. Це саме найпоширеніше представлення, будучи вхідними даними типово прийнятими сучасним графічним обладнанням.
Список граней кращий для моделювання, ніж вершинне представлення тим, що він дозволяє явний пошук вершин грані, і граней оточуючих вершину. Для рендерінгу грань звичайно посилається в графічний процесор як безліч індексів вершин, і вершини надсилаються як позиція / колір / структури нормалей. Тому зміни форми, але не геометрії, можуть бути динамічно оновлені простим пересиланням даних вершини без оновлення зв'язності граней.
Моделювання вимагає легкого обходу всіх структур. З сіткою, що використовує список граней дуже легко знайти вершини грані. Також, список вершин містить список всіх граней пов'язаних з кожною вершиною. На відміну від вершинного представлення, і грані і вершини явно представлені, так що знаходження сусідніх граней і вершин постійно за часом. Однак, ребра не задані явно, так що пошук все ще потрібен, щоб знайти всі грані, які є навколо заданої грані. Інші динамічні операції, такі як розрив або об'єднання граней, також є складними операціями зі списком граней.
Кожне з наведених представлень з порівнянням переваг та недоліків, дискутується у статті Сміта (2006).
«Крилате» представлення
Представлене Брюсом Баумгартеном 1975 року, «Крилате» представлення явно представляє вершини, грані і ребра сітки. Це представлення широко використовується в програмах для моделювання для надання найвищої гнучкості в динамічній зміні геометрії сітки, тому що можуть бути швидко виконані операції розриву та об'єднання. Їх основний недолік — високі вимоги до пам'яті і збільшена складність через вміст великої кількості індексів.
«Крилате» представлення вирішує проблему обходу від ребра до ребра і забезпечує упорядковану множину граней навколо ребра. Для будь-якого заданого ребра число вихідних ребер може бути довільним. Щоб спростити це, «крилате» представлення надає лише чотири, найближчих ребра за годинниковою і проти годинникової стрілки на кожному кінці ребра. Інші ребра можна обійти поступово. Тому інформація про кожне ребро нагадує метелика, завдяки чому подання називається «крилатим».
Візуалізація «крилатого» представлення графічним обладнанням вимагає генерування списку індексів граней. Зазвичай це робиться тільки тоді, коли змінюється геометрія поверхні. «Крилате» представлення ідеально підходить для динамічної геометрії, таких задач як розбиття поверхонь і інтерактивне моделювання, тому що зміни сітки можуть відбуватися локально. Перетин вздовж сітки, який може знадобитись при виявлення зіткнень, може бути виконаним ефективно.
Подробиці можна знайти в статті Баумгарта (1975).
Короткий зміст представлення сітки
Операція | Вершина-вершина | Грань-вершина | Крилатий край | Динамічна візуалізація | |
---|---|---|---|---|---|
V-V | Всі вершини навколо вершини | Явний | V → f1, f2, f3, ... → v1, v2, v3,. . . | V → e1, e2, e3, ... → v1, v2, v3,. . . | V → e1, e2, e3, ... → v1, v2, v3,. . . |
E-F | Всі ребра грані | F (a, b, c) → {a, b}, {b, c}, {a, c} | F → {a, b}, {b, c}, {a, c} | Явний | Явний |
V-F | Всі вершини грані | F (a, b, c) → {a, b, c} | Явний | F → e1, e2, e3 → a, b, c | Явний |
F-V | Всі грані навколо вершини | Пошук пар | Явний | V → e1, e2, e3 → f1, f2, f3,. . . | Явний |
E-V | Всі ребра навколо вершини | V → {v, v1}, {v, v2}, {v, v3},. . . | V → f1, f2, f3, ... → v1, v2, v3,. . . | Явний | Явний |
F-E | Обидві грані ребра | Список порівняння | Список порівняння | Явний | Явний |
V-E | Обидві вершини ребра | E (a, b) → {a, b} | E (a, b) → {a, b} | Явний | Явний |
потік | Знайдіть грані із заданими вершинами | F (a, b, c) → {a, b, c} | Встановити перетин v1, v2, v3 | Встановити перетин v1, v2, v3 | Встановити перетин v1, v2, v3 |
Розмір зберігання | V * avg (V, V) | 3F + V * avg (F, V) | 3F + 8E + V * avg (E, V) | 6F + 4E + V * avg (E, V) | |
Приклад з 10 вершинами, 16 гранями, 24 ребрами: | |||||
10 * 5 = 50 | 3 * 16 + 10 * 5 = 98 | 3 * 16 + 8 * 24 + 10 * 5 = 290 | 6 * 16 + 4 * 24 + 10 * 5 = 242 | ||
Малюнок 6: короткий зміст операцій представлення сітки |
У наведеній вище таблиці "явне" вказує на те, що операцію можна виконувати за сталий час, оскільки дані зберігаються безпосередньо; "список порівняння" вказує на те, що для виконання операції необхідно виконати порівняння списків; а "пошук пар" вказує, що пошук потрібно проводити за двома індексами. Позначення "avg (V, V)" означає середню кількість вершин, підключених до даної вершини; "avg (E, V)" означає середню кількість ребер, підключених до даної вершини, а "avg (F, V)" - середня кількість граней, підключених до даної вершини.
Позначення "V → f1, f2, f3, ... → v1, v2, v3, ..." описує, що для виконання операції необхідний обхід декількох елементів. Наприклад, щоб отримати "всі вершини навколо даної вершини V", використовуючи сітку грань-вершина, необхідно спочатку знайти грані навколо даної вершини V, використовуючи список вершин. Потім за цими гранями використовуйте список граней, щоб знайти вершини навколо них. Зверніть увагу, що крилаті сітки явно зберігають майже всю інформацію, а інші операції завжди переходять спочатку до ребра, щоб отримати додаткову інформацію. Сітки вершин-вершин є єдиним виображенням, яке явно зберігає сусідні вершини даної вершини.
У міру того, як уявлення сітки стають більш складними (зліва направо в представленні сітки), кількість явно збереженої інформації збільшується. Це дає більше абсолютного, сталого часу, доступу до обходу та топології різних елементів, але ціною збільшення накладних витрат та простору для належного ведення індексів.
На малюнку 7 показана для кожного з чотирьох методів, описаних у цій статті. Також існують інші уявлення, такі як напівребра та кутові таблиці. Це всі варіанти того, як вершини, грані та ребра індексують один одного.
Як загальне правило, грані-вершини сітки використовуються всякий раз, коли об'єкт повинен бути відтворений на графічному обладнанні, яке не змінює геометрію (зв'язок), але може деформувати або змінити форму (положення вершин), наприклад, візуалізація в реальному часі статичних або морфінгуючих об'єктів. Візуалізація динамічної сітки або крилате ребро використовуються при зміні геометрії, наприклад, в інтерактивних пакетах моделювання або для обчислення поверхових підрозділів. Вершинно-вершинні сітки ідеально підходять для ефективних, складних змін геометрії або топології, якщо апаратне відображення не викликає занепокоєння.
Формати файлів
Існує безліч різних форматів файлів для зберігання даних полігональних сіток. Кожен формат є найефективнішим, якщо використовується для цілей, призначених його творцем. Деякі з цих форматів представлені нижче:
Суфікс файлу | Назва формату | Організація (ї) | Програма (и) | Опис |
---|---|---|---|---|
.raw | Unknown | Various | Відкритий формат, призначений лише для ASCII. Кожен рядок містить 3 вершини, розділені пробілами, щоб утворити трикутник, наприклад: X1 Y1 Z1 X2 Y2 Z2 X3 Y3 Z3 | |
.blend | Blender File Format | Blender 3D | Формат із відкритим кодом, лише у двійковому форматі | |
Autodesk FBX Format | Autodesk | Various | Запатентована. Існують двійкові та ASCII специфікації. | |
3ds Max File | Autodesk | 3ds Max | Поширений, але застарілий формат із жорсткими 16-бітовими обмеженнями на кількість вершин та граней. Ні стандартизований, ні добре документований, але раніше був "фактичним стандартом" для обміну даними. | |
Digital Asset Exchange (COLLADA) | Sony Computer Entertainment, Khronos Group | N/A | Стенди для "COLLAborative Design Activity". Універсальний формат, призначений для запобігання несумісності. | |
MicroStation File | Існує два формати файлів dgn: попередня версія 8 та версія 8 (V8) | |||
.3dm | Rhino File | Robert McNeel & Associates | Rhinoceros 3D | |
.dxf, .dwg | Drawing Exchange Format | Autodesk | AutoCAD | |
.obj | Wavefront OBJ | Wavefront Technologies | Various | Формат ASCII, що описує 3D-геометрію. Вершини всіх граней упорядковані проти годинникової стрілки, що робить нормальні аспекти неявними. Плавні нормалі вказані для кожної вершини. |
.ply | Polygon File Format | Stanford University | Various | Бінарні та ASCII |
.pmd | Polygon Movie Maker data | Yu Higuchi | MikuMikuDance | Запатентований бінарний формат файлу для зберігання геометрії гуманоїдної моделі з фальсифікацією, матеріалами та фізичною інформацією. |
.stl | Stereolithography Format | Many | Бінарний формат та формат ASCII, спочатку розроблений для допомоги в ЧПК. | |
Additive Manufacturing File Format | ASTM International | N/A | Як і формат STL, але з доданим природним кольором, матеріалом та підтримкою сузір’їв. | |
.wrl | Virtual Reality Modeling Language | Web Browsers | Стандарт ISO 14772-1: 1997 | |
.wrz | VRML Compressed | Web Browsers | ||
.x3d, .x3db, .x3dv | Extensible 3D | Web Browsers | XML на основі відкритого коду, безкорисна, розширюваного та сумісного; також підтримує інформацію про колір, текстуру та епізод. Стандарт ISO 19775/19776/19777 | |
.x3dz, .x3dbz, .x3dvz | X3D Compressed Binary | Web Browsers | ||
.c4d | Cinema 4D File | CINEMA 4D | ||
LightWave 3D object File | ||||
.smb | SCOREC apf | RPI SCOREC | PUMI | Паралельні адаптивні неструктуровані 3D-сітки з відкритим кодом для робочих процесів моделювання на основі PDE. |
Gmsh Mesh | GMsh Developers | Відкритий код, що надає опис сітки ASCII для лінійних та поліноміально інтерпольованих елементів у 1 - 3 вимірах. | ||
OGRE XML | OGRE Development Team | OGRE, purebasic | Відкрите джерело. Доступний бінарний (.mesh) та ASCII (.mesh.xml) формат. Включає дані для анімації вершин та Морф цільової анімації (змішана форма). Дані скелетної анімації в окремому файлі (.skeleton). | |
Vega FEM tetrahedral mesh | Jernej Barbič | Vega FEM | Відкрите джерело. Зберігає тетраедричну сітку та її властивості матеріалу для моделювання FEM. Доступні формати ASCII (.veg) та бінарні (.vegb). | |
. | Z3d | Oleg Melashenko | - | |
VTK mesh | , | , | Відкритий формат, ASCII або двійковий формат, який містить безліч різні поля даних , включаючи дані точок, дані комірок та дані полів. | |
.l4d | LAI4D drawing | Laboratory of Artificial Intelligence for Design | Формат даних ASCII, що описує ієрархічне дерево сутностей. |
Див. також
- Каркасна модель (англ. Wire-frame model)
Зноски
- Colin Smith, On Vertex-Vertex Meshes and Their Use in Geometric and Biological Modeling, http://algorithmicbotany.org/papers/smithco.dis2006.pdf
- Bruce Baumgart, Winged-Edge Polyhedron Representation for Computer Vision. National Computer Conference, May 1975. http://www.baumgart.org/winged-edge/winged-edge.html [ 29 серпня 2005 у Wayback Machine.]
В іншому мовному розділі є повніша стаття Polygon mesh(англ.). Ви можете допомогти, розширивши поточну статтю за допомогою з англійської.
|
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Poligonalna sitka angl Polygon mesh ce nabir vershin reber ta granej sho opisuyut formu bagatogrannogo ob yekta v trivimirnij grafici ta tverdotilomu modelyuvanni Grani zazvichaj skladayutsya z trikutnikiv sitka z trikutnikiv chotirikutnikiv chi inshih opuklih mnogokutnikiv sho sproshuye yih rendering hocha mozhut vikoristovuvatis i zagalnishi neopukli mnogokutniki chi bagatokutniki z dirkami Priklad poligonalnoyi sitki sho zobrazhaye mavpochku Syuzannu odin z primitiviv programi Blender Doslidzhennya poligonalnih sitok ce velikij pidrozdil komp yuternoyi grafiki ta geometrichnogo modelyuvannya Rizni predstavlennya poligonalnih sitok vikoristovuyutsya dlya riznih cilej ta zastosunkiv Sered operacij yaki mozhna vikonuvati nad sitkami mozhut buti operaciyi bulevoyi algebri zgladzhuvannya sproshennya ta bagato inshih Dlya peredachi poligonalnih sitok po merezhi vikoristovuyutsya merezhevi predstavlennya taki yak potokovi ta progresivni sitki Ob yemni sitki vidriznyayutsya vid poligonalnih tim sho voni yavno predstavlyayut poverhnyu ta ob yemni strukturi todi yak poligonalni sitki yavno predstavlyayut lishe poverhnyu a ob yem zalishayetsya neyavnim Oskilki poligonalni sitki shiroko vikoristovuyutsya v komp yuternij grafici dlya nih rozrobleni algoritmi trasuvannya promeniv viyavlennya zitknen ta en Matematichnij ekvivalent poligonalnih sitok nestrukturovani sitki Voni doslidzhuyutsya metodami diskretnoyi geometriyi Elementi modelyuvannya sitkiOb yekti stvoreni za dopomogoyu poligonalnih sitok povinni zberigati rizni tipi elementiv taki yak vershini rebra grani mnogokutniki poligoni ta poverhni U bagatoh vipadkah zberigayutsya lishe vershini rebra grani abo mnogokutniki Deyaki vizualizatori mozhut pidtrimuvati lishe tristoronni grani tomu poligoni povinni buti pobudovani iz nih yak pokazano vishe Odnak bagato vizualizatoriv pidtrimuyut mnogokutniki z chotirma ta bilshe storonami abo vmiyut peretvoryuvati mnogokutniki v trikutniki roblyachi neobov yazkovim zberigannya sitki v triangulovanomu viglyadi Takozh v deyakih vipadkah takih yak modelyuvannya golovi bazhano vmiti stvoryuvati tristoronni i chotiristoronni mnogokutniki Vershina mistit informaciyu taku yak poziciya zazvichaj u trivimirnomu prostori kolir normalnij vektor ta koordinati teksturi Rebro z yednuye dvi vershini Gran ce nabir reber v yakomu trikutna gran maye tri rebra ta chotirikutna chotiri Bagatokutnik Poligon mistit dovilnu kilkist granej U sistemah yaki pidtrimuyut bagatostoronni grani poligoni ta grani ekvivalentni Odnak bilshist aparatnogo zabezpechennya dlya renderingu pidtrimuye lishe grani z troma abo chotirma storonami tak sho poligoni predstavleni yak mnozhina granej Matematichno poligonalna sitka mozhe buti predstavlena u viglyadi nestrukturovanoyi sitki abo neoriyentovanogo grafa z dodavannyam vlastivostej geometriyi formi ta topologiyi Poverhni abo grupi zgladzhuvannya korisni ale ne obov yazkovi dlya grupuvannya gladkih oblastej Rozglyanemo cilindr iz krishkoyu takij yak plyashka z gazovanoyu vodoyu Dlya plavnogo zatinennya bokiv vsi normali poverhni povinni buti spryamovani gorizontalno vid centru todi yak normali shapok povinni buti spryamovani pryamo vgoru i vniz Vidani u viglyadi yedinoyi poverhni zatinenoyi za Fongom vershini skladki mali b nepravilni normali Takim chinom dlya grupuvannya gladkih chastin sitki neobhidnij pevnij sposib viznachennya miscya pripinennya zgladzhuvannya podibno do togo yak bagatokutniki grupuyut 3 storonni grani Yak alternativa zabezpechennyu poverhon zgladzhuvalnih grup sitka mozhe mistiti inshi dani dlya obchislennya tih samih danih napriklad kut rozsheplennya poligoni z normalyami vishe cogo porogu abo avtomatichno obroblyayutsya yak okremi zgladzhuvalni grupi abo deyaki metodi taki yak rozsheplennya abo faska avtomatichno zastosovuyetsya do krayu mizh nimi Krim togo sitki z duzhe visokoyu rozdilnoyu zdatnistyu mensh shilni do problem yaki potrebuyut zgladzhuvannya grup oskilki yih bagatokutniki nastilki mali sho robit potrebu neaktualnoyu Krim togo isnuye she odna alternativa u mozhlivosti prostogo vid yednannya samih poverhon vid reshti sitki Vizualizatori ne namagayutsya zgladzhuvati krayi nesumizhnih bagatokutnikiv Grupi Deyaki formati sitok mistyat grupi yaki viznachayut okremi elementi sitki i korisni dlya viznachennya okremih pid ob yektiv dlya skeletnoyi animaciyi abo okremih vikonavciv dlya neskeletnoyi animaciyi Materiali Yak pravilo viznachayutsya materiali sho dozvolyayut riznim chastinam sitki vikoristovuvati rizni shejderi pri otrimanni UF koordinati Bilshist formativ sitok takozh pidtrimuyut pevnu formu UF koordinat yaki ye okremim dvovimirnim podannyam sitki rozgornutoyu shob pokazati yaku chastinu dvovimirnoyi karti teksturi zastosovuvati do riznih poligoniv sitki Takozh sitki mozhut mistiti inshu informaciyu pro taki atributi vershin yak kolir dotichni vektori karti vagi dlya upravlinnya animaciyeyu tosho inodi yih takozh nazivayut kanalami PredstavlennyaPriklad trikutnoyi sitki yaka vikoristovuyetsya dlya zobrazhennya delfina Poligonalni sitki mozhut buti predstavleni bezlichchyu sposobiv vikoristovuyuchi rizni sposobi zberigannya vershin reber i granej U nih vhodyat Spisok granej opis granej vidbuvayetsya za dopomogoyu pokazhchikiv v spisok vershin Krilate predstavlennya u nomu kozhna tochka rebra vkazuye na dvi vershini dvi grani i chotiri za godinnikovoyu strilkoyu i proti godinnikovoyi rebra yakim vona nalezhit Krilate podannya dozvolyaye obijti poverhnyu za stalij chas ale u nogo veliki vimogi po pam yati dlya zberigannya danih opisu sitki Pivreberni sitki sposib shozhij na krilate predstavlennya za vinyatkom togo sho vikoristovuyetsya informaciya obhodu lishe polovini grani Chotirireberni sitki yaki zberigayut rebra pivrebra i vershini bez bud yakoyi vkazivki na poligoni Poligoni pryamo ne virazheni v predstavlenni i mozhut buti obchisleni pri obhodi strukturi Vimogi po pam yati analogichni pivrebernim sitkam Tablicya kutiv yaki zberigayut vershini v zumovlenij tablici takij sho obhid tablici neyavno zadaye poligoni Po suti ce viyalo trikutnikiv vikoristovuvane v aparatnomu renderingu Predstavlennya bilsh kompaktne i bilsh produktivne dlya znahodzhennya poligoniv ale operaciyi po yih zmini povilni Bilsh togo tablici kutiv ne podayut sitki povnistyu Dlya predstavlennya bilshosti sitok potribno kilka tablic kutiv viyal trikutnikiv Vershinne predstavlennya predstavleni lishe vershini sho vkazuyut na inshi vershini Informaciya pro grani ta rebra virazhena neyavno v comu podanni Odnak prostota predstavlennya dozvolyaye provoditi nad sitkoyu bezlich efektivnih operacij Kozhne z predstavlen maye svoyi perevagi i nedoliki Vibir strukturi danih viznachayetsya zastosuvannyam neobhidnoyu produktivnistyu rozmirom danih operaciyami yaki budut vikonuvatisya Napriklad legshe mati spravu z trikutnikami nizh z bagatokutnikami zagalnogo viglyadu osoblivo v obchislyuvalnij geometriyi Dlya pevnih operacij neobhidno mati shvidkij dostup do topologichnoyi informaciyi takoyi yak rebra abo susidni grani dlya cogo potribni bilsh skladni strukturi taki yak krilate predstavlennya Dlya aparatnogo renderingu potribni kompaktni prosti strukturi tomu v API nizkogo rivnya taki yak DirectX i OpenGL zazvichaj vklyuchena tablicya kutiv viyalo trikutnikiv Vershinne predstavlennya Vershinne predstavlennya opisuye ob yekt yak mnozhinu vershin z yednanih z inshimi vershinami Ce najprostishe predstavlennya ale vono ne shiroko vikoristovuyetsya tomu sho informaciya pro grani ta rebra ne virazhena yavno Tomu potribno obijti vsi dani shob zgeneruvati spisok granej dlya vizualizaciyi Krim togo nelegko vikonuyutsya operaciyi na rebrah i granyah Odnak sitki VP otrimuyut vigodu z malogo vikoristannya pam yati i efektivnoyi transformaciyi Spisok granej Malyunok 3 Spisok granej Sitka z vikoristannyam spisku granej predstavlyaye ob yekt yak mnozhinu granej i mnozhinu vershin Ce same najposhirenishe predstavlennya buduchi vhidnimi danimi tipovo prijnyatimi suchasnim grafichnim obladnannyam Spisok granej krashij dlya modelyuvannya nizh vershinne predstavlennya tim sho vin dozvolyaye yavnij poshuk vershin grani i granej otochuyuchih vershinu Dlya renderingu gran zvichajno posilayetsya v grafichnij procesor yak bezlich indeksiv vershin i vershini nadsilayutsya yak poziciya kolir strukturi normalej Tomu zmini formi ale ne geometriyi mozhut buti dinamichno onovleni prostim peresilannyam danih vershini bez onovlennya zv yaznosti granej Modelyuvannya vimagaye legkogo obhodu vsih struktur Z sitkoyu sho vikoristovuye spisok granej duzhe legko znajti vershini grani Takozh spisok vershin mistit spisok vsih granej pov yazanih z kozhnoyu vershinoyu Na vidminu vid vershinnogo predstavlennya i grani i vershini yavno predstavleni tak sho znahodzhennya susidnih granej i vershin postijno za chasom Odnak rebra ne zadani yavno tak sho poshuk vse she potriben shob znajti vsi grani yaki ye navkolo zadanoyi grani Inshi dinamichni operaciyi taki yak rozriv abo ob yednannya granej takozh ye skladnimi operaciyami zi spiskom granej Kozhne z navedenih predstavlen z porivnyannyam perevag ta nedolikiv diskutuyetsya u statti Smita 2006 Krilate predstavlennya Dokladnishe Krilate predstavlennya Malyunok 4 Krilate predstavlennya Predstavlene Bryusom Baumgartenom 1975 roku Krilate predstavlennya yavno predstavlyaye vershini grani i rebra sitki Ce predstavlennya shiroko vikoristovuyetsya v programah dlya modelyuvannya dlya nadannya najvishoyi gnuchkosti v dinamichnij zmini geometriyi sitki tomu sho mozhut buti shvidko vikonani operaciyi rozrivu ta ob yednannya Yih osnovnij nedolik visoki vimogi do pam yati i zbilshena skladnist cherez vmist velikoyi kilkosti indeksiv Krilate predstavlennya virishuye problemu obhodu vid rebra do rebra i zabezpechuye uporyadkovanu mnozhinu granej navkolo rebra Dlya bud yakogo zadanogo rebra chislo vihidnih reber mozhe buti dovilnim Shob sprostiti ce krilate predstavlennya nadaye lishe chotiri najblizhchih rebra za godinnikovoyu i proti godinnikovoyi strilki na kozhnomu kinci rebra Inshi rebra mozhna obijti postupovo Tomu informaciya pro kozhne rebro nagaduye metelika zavdyaki chomu podannya nazivayetsya krilatim Vizualizaciya krilatogo predstavlennya grafichnim obladnannyam vimagaye generuvannya spisku indeksiv granej Zazvichaj ce robitsya tilki todi koli zminyuyetsya geometriya poverhni Krilate predstavlennya idealno pidhodit dlya dinamichnoyi geometriyi takih zadach yak rozbittya poverhon i interaktivne modelyuvannya tomu sho zmini sitki mozhut vidbuvatisya lokalno Peretin vzdovzh sitki yakij mozhe znadobitis pri viyavlennya zitknen mozhe buti vikonanim efektivno Podrobici mozhna znajti v statti Baumgarta 1975 Korotkij zmist predstavlennya sitkiOperaciya Vershina vershina Gran vershina Krilatij kraj Dinamichna vizualizaciya V V Vsi vershini navkolo vershini Yavnij V f1 f2 f3 v1 v2 v3 V e1 e2 e3 v1 v2 v3 V e1 e2 e3 v1 v2 v3 E F Vsi rebra grani F a b c a b b c a c F a b b c a c Yavnij Yavnij V F Vsi vershini grani F a b c a b c Yavnij F e1 e2 e3 a b c Yavnij F V Vsi grani navkolo vershini Poshuk par Yavnij V e1 e2 e3 f1 f2 f3 Yavnij E V Vsi rebra navkolo vershini V v v1 v v2 v v3 V f1 f2 f3 v1 v2 v3 Yavnij Yavnij F E Obidvi grani rebra Spisok porivnyannya Spisok porivnyannya Yavnij Yavnij V E Obidvi vershini rebra E a b a b E a b a b Yavnij Yavnij potik Znajdit grani iz zadanimi vershinami F a b c a b c Vstanoviti peretin v1 v2 v3 Vstanoviti peretin v1 v2 v3 Vstanoviti peretin v1 v2 v3 Rozmir zberigannya V avg V V 3F V avg F V 3F 8E V avg E V 6F 4E V avg E V Priklad z 10 vershinami 16 granyami 24 rebrami 10 5 50 3 16 10 5 98 3 16 8 24 10 5 290 6 16 4 24 10 5 242 Malyunok 6 korotkij zmist operacij predstavlennya sitki U navedenij vishe tablici yavne vkazuye na te sho operaciyu mozhna vikonuvati za stalij chas oskilki dani zberigayutsya bezposeredno spisok porivnyannya vkazuye na te sho dlya vikonannya operaciyi neobhidno vikonati porivnyannya spiskiv a poshuk par vkazuye sho poshuk potribno provoditi za dvoma indeksami Poznachennya avg V V oznachaye serednyu kilkist vershin pidklyuchenih do danoyi vershini avg E V oznachaye serednyu kilkist reber pidklyuchenih do danoyi vershini a avg F V serednya kilkist granej pidklyuchenih do danoyi vershini Poznachennya V f1 f2 f3 v1 v2 v3 opisuye sho dlya vikonannya operaciyi neobhidnij obhid dekilkoh elementiv Napriklad shob otrimati vsi vershini navkolo danoyi vershini V vikoristovuyuchi sitku gran vershina neobhidno spochatku znajti grani navkolo danoyi vershini V vikoristovuyuchi spisok vershin Potim za cimi granyami vikoristovujte spisok granej shob znajti vershini navkolo nih Zvernit uvagu sho krilati sitki yavno zberigayut majzhe vsyu informaciyu a inshi operaciyi zavzhdi perehodyat spochatku do rebra shob otrimati dodatkovu informaciyu Sitki vershin vershin ye yedinim viobrazhennyam yake yavno zberigaye susidni vershini danoyi vershini U miru togo yak uyavlennya sitki stayut bilsh skladnimi zliva napravo v predstavlenni sitki kilkist yavno zberezhenoyi informaciyi zbilshuyetsya Ce daye bilshe absolyutnogo stalogo chasu dostupu do obhodu ta topologiyi riznih elementiv ale cinoyu zbilshennya nakladnih vitrat ta prostoru dlya nalezhnogo vedennya indeksiv Na malyunku 7 pokazana dlya kozhnogo z chotiroh metodiv opisanih u cij statti Takozh isnuyut inshi uyavlennya taki yak napivrebra ta kutovi tablici Ce vsi varianti togo yak vershini grani ta rebra indeksuyut odin odnogo Yak zagalne pravilo grani vershini sitki vikoristovuyutsya vsyakij raz koli ob yekt povinen buti vidtvorenij na grafichnomu obladnanni yake ne zminyuye geometriyu zv yazok ale mozhe deformuvati abo zminiti formu polozhennya vershin napriklad vizualizaciya v realnomu chasi statichnih abo morfinguyuchih ob yektiv Vizualizaciya dinamichnoyi sitki abo krilate rebro vikoristovuyutsya pri zmini geometriyi napriklad v interaktivnih paketah modelyuvannya abo dlya obchislennya poverhovih pidrozdiliv Vershinno vershinni sitki idealno pidhodyat dlya efektivnih skladnih zmin geometriyi abo topologiyi yaksho aparatne vidobrazhennya ne viklikaye zanepokoyennya Formati fajlivIsnuye bezlich riznih formativ fajliv dlya zberigannya danih poligonalnih sitok Kozhen format ye najefektivnishim yaksho vikoristovuyetsya dlya cilej priznachenih jogo tvorcem Deyaki z cih formativ predstavleni nizhche Sufiks fajlu Nazva formatu Organizaciya yi Programa i Opis raw Unknown Various Vidkritij format priznachenij lishe dlya ASCII Kozhen ryadok mistit 3 vershini rozdileni probilami shob utvoriti trikutnik napriklad X1 Y1 Z1 X2 Y2 Z2 X3 Y3 Z3 blend Blender File Format Blender 3D Format iz vidkritim kodom lishe u dvijkovomu formati Autodesk FBX Format Autodesk Various Zapatentovana Isnuyut dvijkovi ta ASCII specifikaciyi 3ds Max File Autodesk 3ds Max Poshirenij ale zastarilij format iz zhorstkimi 16 bitovimi obmezhennyami na kilkist vershin ta granej Ni standartizovanij ni dobre dokumentovanij ale ranishe buv faktichnim standartom dlya obminu danimi Digital Asset Exchange COLLADA Sony Computer Entertainment Khronos Group N A Stendi dlya COLLAborative Design Activity Universalnij format priznachenij dlya zapobigannya nesumisnosti MicroStation File Isnuye dva formati fajliv dgn poperednya versiya 8 ta versiya 8 V8 3dm Rhino File Robert McNeel amp Associates Rhinoceros 3D dxf dwg Drawing Exchange Format Autodesk AutoCAD obj Wavefront OBJ Wavefront Technologies Various Format ASCII sho opisuye 3D geometriyu Vershini vsih granej uporyadkovani proti godinnikovoyi strilki sho robit normalni aspekti neyavnimi Plavni normali vkazani dlya kozhnoyi vershini ply Polygon File Format Stanford University Various Binarni ta ASCII pmd Polygon Movie Maker data Yu Higuchi MikuMikuDance Zapatentovanij binarnij format fajlu dlya zberigannya geometriyi gumanoyidnoyi modeli z falsifikaciyeyu materialami ta fizichnoyu informaciyeyu stl Stereolithography Format Many Binarnij format ta format ASCII spochatku rozroblenij dlya dopomogi v ChPK Additive Manufacturing File Format ASTM International N A Yak i format STL ale z dodanim prirodnim kolorom materialom ta pidtrimkoyu suzir yiv wrl Virtual Reality Modeling Language Web Browsers Standart ISO 14772 1 1997 wrz VRML Compressed Web Browsers x3d x3db x3dv Extensible 3D Web Browsers XML na osnovi vidkritogo kodu bezkorisna rozshiryuvanogo ta sumisnogo takozh pidtrimuye informaciyu pro kolir teksturu ta epizod Standart ISO 19775 19776 19777 x3dz x3dbz x3dvz X3D Compressed Binary Web Browsers c4d Cinema 4D File CINEMA 4D LightWave 3D object File smb SCOREC apf RPI SCOREC PUMI Paralelni adaptivni nestrukturovani 3D sitki z vidkritim kodom dlya robochih procesiv modelyuvannya na osnovi PDE Gmsh Mesh GMsh Developers Vidkritij kod sho nadaye opis sitki ASCII dlya linijnih ta polinomialno interpolovanih elementiv u 1 3 vimirah OGRE XML OGRE Development Team OGRE purebasic Vidkrite dzherelo Dostupnij binarnij mesh ta ASCII mesh xml format Vklyuchaye dani dlya animaciyi vershin ta Morf cilovoyi animaciyi zmishana forma Dani skeletnoyi animaciyi v okremomu fajli skeleton Vega FEM tetrahedral mesh Jernej Barbic Vega FEM Vidkrite dzherelo Zberigaye tetraedrichnu sitku ta yiyi vlastivosti materialu dlya modelyuvannya FEM Dostupni formati ASCII veg ta binarni vegb Z3d Oleg Melashenko VTK mesh Vidkritij format ASCII abo dvijkovij format yakij mistit bezlich rizni polya danih vklyuchayuchi dani tochok dani komirok ta dani poliv l4d LAI4D drawing Laboratory of Artificial Intelligence for Design Format danih ASCII sho opisuye iyerarhichne derevo sutnostej Div takozhKarkasna model angl Wire frame model ZnoskiColin Smith On Vertex Vertex Meshes and Their Use in Geometric and Biological Modeling http algorithmicbotany org papers smithco dis2006 pdf Bruce Baumgart Winged Edge Polyhedron Representation for Computer Vision National Computer Conference May 1975 http www baumgart org winged edge winged edge html 29 serpnya 2005 u Wayback Machine V inshomu movnomu rozdili ye povnisha stattya Polygon mesh angl Vi mozhete dopomogti rozshirivshi potochnu stattyu za dopomogoyu perekladu z anglijskoyi Divitis avtoperekladenu versiyu statti z movi anglijska Perekladach povinen rozumiti sho vidpovidalnist za kincevij vmist statti u Vikipediyi nese same avtor redaguvan Onlajn pereklad nadayetsya lishe yak korisnij instrument pereglyadu vmistu zrozumiloyu movoyu Ne vikoristovujte nevichitanij i nevidkorigovanij mashinnij pereklad u stattyah ukrayinskoyi Vikipediyi Mashinnij pereklad Google ye korisnoyu vidpravnoyu tochkoyu dlya perekladu ale perekladacham neobhidno vipravlyati pomilki ta pidtverdzhuvati tochnist perekladu a ne prosto skopiyuvati mashinnij pereklad do ukrayinskoyi Vikipediyi Ne perekladajte tekst yakij vidayetsya nedostovirnim abo neyakisnim Yaksho mozhlivo perevirte tekst za posilannyami podanimi v inshomovnij statti Dokladni rekomendaciyi div Vikipediya Pereklad