Siatka (grafika 3D)
Z Wikipedii
Siatka to w grafice 3D dwa lub więcej wielokątów połączonych ze sobą krawędziami. Może ulegać różnym modyfikacjom i deformacjom. Siatka tworzy obiekt.
Siatka może być reprezentowana na kilka sposobów:
- Tablica wielokątów — każdy wielokąt przechowuje współrzędne swoich wierzchołków.
- Tablica wielokątów ze wskaźnikami na wierzchołki — obiekt jest reprezentowany przez dwie tablice: wielokątów i wierzchołków. Każdy wielokąt przechowuje listę indeksów do tablicy wierzchołków, natomiast tablica wierzchołków zawiera współrzędne. Dzięki temu można łatwo stwierdzić, które wielokąty mają wspólne wierzchołki, także przekształcenia obiektu są szybsze, ponieważ wspólne wierzchołki są przekształcane tylko jeden raz. Reprezentacja ta pozwala na znaczne oszczędzenie pamięci wymaganej do zapamiętania siatki, ponieważ najczęściej jeden wierzchołek jest wspólny dla wielu wielokątów.
- Tablica wielokątów ze wskaźnikami na krawędzie — obiekt jest reprezentowany przez trzy tablice: wielokątów, krawędzi i wierzchołków. Każdy wielokąt przechowuję listę indeksów do tablicy krawędzi, natomiast każda krawędź przechowuję parę indeksów do tablicy wierzchołków. Dzięki temu można łatwo stwierdzić, które krawędzie są wspólne dla wierzchołków, co ma to istotne znaczenie w dwóch przypadkach: modelowaniu CSG oraz symulacjach fizycznych. W obu zastosowaniach należy zagwarantować, że siatka wielokątów reprezentuje bryłę (zamyka pewną objętość), aby stwierdzenia punkt leży wewnątrz/na zewnątrz bryły miały sens. Mając listę krawędzi można to bardzo łatwo stwierdzić, jeśli bowiem każda krawędź należy do dokładnie dwóch wielokątów, to siatka jest bryłą. Jeśli istnieją krawędzie należące do pojedynczych wielokątów, wówczas w powierzchni bryły jest "dziura" i istnieją algorytmy, które potrafią takie "dziury" wypełnić. Jeśli natomiast jakaś krawędź należy do więcej niż dwóch wielokątów, wówczas siatka nie może reprezentować bryły.
Istnieją również rozwiązania hybrydowe, np. w których ze względu na efektywność wielokąty zawierają listę indeksów do tablicy krawędzi oraz listę indeksów do tablicy wierzchołków.