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.