Angle-based flattening. Basic idea: Every interior vertex of a
flattened mesh must have a sum of angles equal to 2 pi. Does not fold
(although it may overlap).
- No boundary constraints needed.
- Compute optimal angles for each angle - for the vertices around
an interior node, normalize the angles so they sum to 2 pi. For
boundary vertices, the original mesh angles are used.
- Note that the solution to the optimization is a set of angles -
the node positions are computed from there.
- Optimize for difference from optimal angle, weighted. The weights
are 1/optimal squared.
- There must be no zero angles/collapsed corners.
- For a valid solution we have:
- All angles are positive, and bigger than some epsilon. [This is actually maintained by adjusting the weights, if an angle gets too small.]
- The angles of a triangle sum to pi.
- The angles around a vertex sum to 2pi.
- If you follow the angles around a vertex, building a wheel, you end up at the same distance out has you started. This is expressed as the product of the sines of the angles.
- Optimization solved by Newton's method, problem formulated as a Lagrange multiplier one.
- Overlaps are "fixed" by finding a pair of offending edges and
making them parallel. No guarantees here.
- Contains a proof of the validity of the algorithm.
- Alla Sheffer, Eric de Sturler, Angle Based Flattening of
Tesselated Surfaces, SIAM Conference on Geometric Design and
Computing, 2001, invited.
Paper. A. Sheffer, E. de Sturler, Parameterization of CAD
Surfaces for Meshing by Triangulation Flattening. Proc. 7th
International Conference on Numerical Grid Generation in Computational
Field Simulation, 699-708, 2000.
- A. Sheffer, E. de Sturler, Surface Parameterization for Meshing
by Triangulation Flattening. Proc. 9th International Meshing
Roundtable, 161-172, 2000. Journal version (EWC) listed above.
- A. Sheffer and E. de Sturler, Parameterization of Faceted Surfaces for
Meshing Using Angle Based Flattening, Engineering with Computers, 17
(3), 326-337, 2001.