\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.8 - Triangulated Surface Mesh Simplification

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
GetCost Concept Reference
Concepts

## Definition

The concept `GetCost` describes the requirements for the policy function object which gets the collapse cost of an edge.

The cost returned is a `boost::optional` value (i.e. it can be absent). An absent cost indicates that the edge should not be collapsed. This could be the result of a computational limitation (such as overflow), or can be intentionally returned to prevent the edge from being collapsed.

Refines:

  `DefaultConstructible`

  `CopyConstructible`

Has Models:

  `CGAL::Surface_mesh_simplification::Edge_length_cost<ECM>`

  `CGAL::Surface_mesh_simplification::LindstromTurk_cost<ECM>`

## Operations
template<class Profile >
boost::optional< typename Profile::FT > | operator() (Profile const &edge_profile, boost::optional< typename Profile::Point > const &placement) const
| Computes and returns the cost of collapsing the edge (represented by its profile), using the calculated placement. More...

## Member Function Documentation

template<class Profile >

boost::optional<typename Profile::FT> GetCost::operator() | ( | Profile const & | edge_profile,
|  | boost::optional< typename Profile::Point > const & | placement
| ) |  | const

Computes and returns the cost of collapsing the edge (represented by its profile), using the calculated placement.

Template Parameters

  Profile | must be a model of `EdgeProfile`.