CGAL 4.12 - Triangulated Surface Mesh Simplification
StopPredicate Concept Reference

## Definition

The concept StopPredicate describes the requirements for the predicate which indicates if the simplification process must finish.

Has Models:

CGAL::Surface_mesh_simplification::Count_stop_predicate<ECM>

CGAL::Surface_mesh_simplification::Count_ratio_stop_predicate<ECM>

CGAL::Surface_mesh_simplification::Edge_length_stop_predicate<FT>

## Types

typedef unspecified_type ECM
The type of the surface mesh to simplify. More...

typedef unspecified_type FT
A field type representing the collapse cost.

typedef unspecified_type size_type
An integer type representing the number of edges.

typedef unspecified_type Profile
The type of the edge profile cache. More...

## Operations

bool operator() (FT const &current_cost, Profile const &profile, size_type initial_count, size_type current_count) const
This predicate is called each time an edge is selected for processing, before it is collapsed. More...

## ◆ ECM

 typedef unspecified_type StopPredicate::ECM

The type of the surface mesh to simplify.

Must be a model of the EdgeCollapsableSurfaceMesh concept.

## ◆ Profile

The type of the edge profile cache.

Must be a model of the EdgeProfile concept.

## ◆ operator()()

 bool StopPredicate::operator() ( FT const & current_cost, Profile const & profile, size_type initial_count, size_type current_count ) const

This predicate is called each time an edge is selected for processing, before it is collapsed.

current_cost is the cost of the selected edge.

initial_count and current_count are the number of initial and current edges.

If the return value is true the simplification terminates before processing the edge, otherwise it continues normally.