Another very good blog overview here (not mine): <a href="https://ianthehenry.com/posts/delaunay/" rel="nofollow noreferrer">https://ianthehenry.com/posts/delaunay/</a><p>I love DCELs and have been tinkering with them in my own side projects lately. Very cool data structure!
The original GLU Tessellator[1][2] used that structure for most of its internal representation of meshes, it's a very powerful data structure for meshes.<p>[1] <a href="https://github.com/memononen/libtess2/blob/fc52516467dfa124bdd967c15c7cf9faf02a34ca/Source/mesh.h#L40">https://github.com/memononen/libtess2/blob/fc52516467dfa124b...</a><p>[2] <a href="http://www.glprogramming.com/red/chapter11.html#name1" rel="nofollow noreferrer">http://www.glprogramming.com/red/chapter11.html#name1</a>
The Symbolics Lisp Machine S-Geometry 3D modeler from the mid 1980's was based on the winged-edge structure. It was the best polygonal modeler of its time, and the package lives on in philosophy as the Wings3D open source modeler.<p><a href="https://www.youtube.com/watch?v=UNXEemZ_Ysk">https://www.youtube.com/watch?v=UNXEemZ_Ysk</a>
The difficulty, in a geometric setting, is still how to maintain a robust correspondence between geometry and topology.<p><a href="https://en.wikipedia.org/wiki/Robust_geometric_computation" rel="nofollow noreferrer">https://en.wikipedia.org/wiki/Robust_geometric_computation</a>
I enjoyed reading this book a few years ago: <a href="https://www.amazon.com/Introduction-Solid-Modeling-Martti-Mantyla/dp/0716780151" rel="nofollow noreferrer">https://www.amazon.com/Introduction-Solid-Modeling-Martti-Ma...</a>
This article would be more clear if the & symbol were clarified. Right now it looks like Rust borrowing in Python. Maybe I’m too dumb and didn’t read it right and missed the definition. Anyway the big picture idea is cool and resonates with the idea of a bidirectional HashMap.
In action:
<a href="https://doc.cgal.org/latest/Surface_mesh/index.html" rel="nofollow noreferrer">https://doc.cgal.org/latest/Surface_mesh/index.html</a>
Built on top of boost graph.