2 pytania do geometrii obliczeniowej lub algebraistów:
Właśnie zaczynam nurkować w geometrii obliczeniowej i uwielbiam ją =)
Próbuję przeczytać słynny artykuł Guibasa i Stolfiego zatytułowany „Prymitywy do manipulowania ogólnymi poddziałami i obliczaniem diagramów Voronoi” w celu zaimplementowania algorytmu triangulacji Delaunaya. Kusi mnie, aby pominąć wszystkie teoretyczne rzeczy i po prostu przeczytać opis ich czterokładowej struktury danych, aby zaoszczędzić czas. Myślę jednak, że warto zrozumieć całą matematykę zawartą w artykule, jeśli struktura jest szeroko stosowana lub tylko dlatego, że może być piękna.
Matematyka jest dla mnie trochę zagęszczona. Nie jestem całkowicie nieświadomy topologii, ale opis ich algebry krawędzi wymaga znajomości algebry abstrakcyjnej, której nie mam.
Moje dwa pytania brzmią: jakie są inne zastosowania struktury quad-edge oprócz obliczeń Delaunay / Voronoi? Wygląda na niezwykle potężne narzędzie.
Drugie pytanie; Co to jest algebra abstrakcyjna? Byłoby wspaniale, gdybyś mógł podać mi odniesienie do wstępu do algebry abstrakcyjnej, na tyle, żebym mógł zrozumieć część na temat algebry krawędzi.
Dziękuję Ci!
źródło
Odpowiedzi:
Myślę, że formalizm „algebry krawędzi” Guibasa i Stolfiego jest nieco niepotrzebny.
Wszystko, co jest naprawdę konieczne, to pamiętać o rozróżnieniu między pierwotnymi i podwójnymi wykresami. Każda powierzchnia pierwotnego wykresu ma odpowiadający podwójny wierzchołek f ∗ ; każda krawędź e pierwotnego wykresu ma odpowiadającą podwójną krawędź e ∗ ; a każdy wierzchołek v pierwotnego wykresu ma odpowiadającą podwójną ścianę v ∗ . Pierwotne krawędzie łączą pierwotne wierzchołki i oddzielne pierwotne ściany; podwójne krawędzie łączą podwójne wierzchołki i oddzielne podwójne ściany. Podwójność wszystkiego jest oryginalną rzeczą. Zobacz rysunek 4 w pracy Guibasa i Stolfiego:fa fa∗ mi mi∗ v v∗
Guibas i Stolfi proponują myślenie o każdej krawędzi (pierwotnej lub podwójnej) jako zbiór czterech ukierunkowanych, zorientowanych krawędzi; dla uproszczenia nazywam te strzałki . Każda lotka punktów z jednego punktu końcowego ogona ( → e ) do innego punktu końcowego głowicy ( → E ) , a lokalnie oddziela dwie twarze w lewo ( → e ) i prawo ( → E ) . Wybór punktu końcowego, który ma być nazywany ogonem ( → e ), jest strzałkąmi⃗ ogon ( np⃗ ) głowa ( np⃗ ) w lewo ( np⃗ ) racja ( np⃗ ) ogon ( np⃗ ) kierunek , a wybór, którą twarz wywołać w jest jego orientacją . (Guibas i Stolfi używają „Org” i „Dest” zamiast „tail” i „head”, ale wolę krótsze etykiety, ponieważ niepotrzebne skróty są złe.)w lewo ( np⃗ )
Dla dowolnej strzałki Guibas i Stolfi kojarzą trzy powiązane strzałki:mi⃗
Te trzy funkcje spełniają wszelkiego rodzaju wspaniałe tożsamości, takie jak:
e.Flip
Ponadto, biorąc pod uwagę te trzy funkcje, można zdefiniować kilka innych przydatnych funkcji, takich jak
Wreszcie, znajomość tych funkcji mówi absolutnie wszystko o topologii podziału, a każdy wieloboczny podział dowolnej powierzchni (orientowalnej lub nie) można zakodować za pomocą tych trzech funkcji.
Poczwórna struktura danych jest szczególnie wygodną reprezentacją wykresu powierzchniowego, który zapewnia dostęp do wszystkich tych funkcji, wraz z kilkoma innymi operacjami w czasie stałym, takimi jak wstawianie, usuwanie, kurczenie, rozszerzanie i przerzucanie krawędzi; dzielenie lub łączenie wierzchołków lub ścian; oraz dodawanie lub usuwanie uchwytów lub zaślepek.
Baw się dobrze!
źródło