Euler operator (digital geometry)

In solid modeling and computer-aided design, the Euler operators modify the graph of connections to add or remove details of a mesh while preserving its topology. They are named by Baumgart [1] after the Euler–Poincaré characteristic. He chose a set of operators sufficient to create useful meshes, some lose information and so are not invertible.

The boundary representation for a solid object, its surface, is a polygon mesh of vertices, edges and faces. Its topology is captured by the graph of the connections between faces. A given mesh may actually contain multiple unconnected shells (or bodies); each body may be partitioned into multiple connected components each defined by their edge loop boundary. To represent a hollow object, the inside and outside surfaces are separate shells.

Let the number of vertices be V, edges be E, faces be F, components H, shells S, and let the genus be G (S and G correspond to the b0 and b2 Betti numbers respectively). Then, to denote a meaningful geometric object, the mesh must satisfy the generalized Euler–Poincaré formula

 VE + F = H + 2 * (SG)

The Euler operators preserve this characteristic. The Eastman paper lists the following basic operators, and their effects on the various terms:

Name Description ΔV ΔE ΔF ΔH ΔS ΔG
MBFLV Make Body-Face-Loop-Vertex 1 0 1 0 1 0
MEV Make Edge-Vertex 1 1 0 0 0 0
MEFL Make Edge-Face-Loop 0 1 1 0 0 0
MEKL Make Edge, Kill Loop 0 1 0 -1 0 0
KFLEVB Kill Faces-Loops-Edges-Vertices-Body −2 n n 0 -1 0
KFLEVMG Kill Faces-Loops-Edges-Vertices, Make Genus −2 n n 0 0 1

Geometry edit

Euler operators modify the mesh's graph creating or removing faces, edges and vertices according to simple rules while preserving the overall topology thus maintaining a valid boundary (i.e. not introducing holes). The operators themselves don't define how geometric or graphical attributes map to the new graph: e.g. position, gradient, uv texture coordinate, these will depend on the particular implementation.

See also edit

References edit

  1. ^ Baumgart, B.G^ "Winged edge polyhedron representation", Stanford Artificial Intelligence Report No. CS-320, October, 1972.
  • (see also Winged edge#External links)
  • Eastman, Charles M. and Weiler, Kevin J., "Geometric modeling using the Euler operators" (1979). Computer Science Department. Paper 1587. http://repository.cmu.edu/compsci/1587. Unfortunately this typo-ridden (OCR’d?) paper can be quite hard to read.
  • Easier-to-read reference[permanent dead link], from a solid-modelling course at NTU.
  • Another reference that uses a slightly different definition of terms.
  • Sven Havemann, Generative Mesh Modeling[permanent dead link], PhD thesis, Braunschweig University, Germany, 2005.
  • Martti Mäntylä, An Introduction to Solid Modeling, Computer Science Press, Rockville MD, 1988. ISBN 0-88175-108-1.