CGAL 5.5 - Triangulated Surface Mesh Simplification
CGAL::Surface_mesh_simplification::GarlandHeckbert_plane_policies< TriangleMesh, GeomTraits > Class Template Reference

#include <CGAL/Surface_mesh_simplification/Policies/Edge_collapse/GarlandHeckbert_plane_policies.h>

## Definition

The class GarlandHeckbert_plane_policies regroups the cost and placement policies based on the Garland-Heckbert "Classic Plane" strategy (Section Garland-Heckbert Cost and Placement Strategy).

This class implements the original Garland-Heckbert quadric error metric strategy, as described in their seminal paper [2].

Both the cost and the placement policies must be used together as they internally use and share information associating quadrics to vertices. Note however, that they may still be wrapped with behavior modifying classes such as Constrained_placement or Bounded_normal_change_placement.

Template Parameters
 TriangleMesh is the type of surface mesh being simplified, and must be a model of the MutableFaceGraph and HalfedgeListGraph concepts. GeomTraits must be a model of Kernel. If you have passed a traits class in the optional named parameters in the call to edge_collapse(), the types must be identical.

These policies depend on the third party Eigen library.

GarlandHeckbert_probabilistic_plane_policies
GarlandHeckbert_triangle_policies
GarlandHeckbert_probabilistic_triangle_policies

## Public Types

typedef unspecified_type Get_cost
The type of the Garland Heckbert cost functor, a model of the concept GetCost

typedef unspecified_type Get_placement
The type of the Garland Heckbert placement functor, a model of the concept GetPlacement

## Creation

GarlandHeckbert_plane_policies (TriangleMesh &tmesh)
initializes the Garland-Heckbert Plane policies.

## Accessors

const Get_costget_cost () const

const Get_placementget_placement () const