CGAL::remove_cell<CMap,i>

#include <CGAL/Combinatorial_map_operations.h>


template <class CMap, unsigned int i>
unsigned int remove_cell ( CMap& cm, typename CMap::Dart_handle dh)
Removes the i-cell containing dh. Returns the number of darts removed from cm.
Precondition: is_removable<CMap,i>(cm,dh).
See examples in Figures 27.11, 27.13 and 27.14.
If i<CMap::dimension, and i+1-attributes are non void, and if there are two distinct (i+1)-cells around dart dh, Attribute_type<i+1>::type::On_merge(a1,a2) is called, with a1 the (i+1)-attribute associated to dh, and a2 the (i+1)-attribute associated to βi+1(dh).
If a j-cell is disconnected in two j-cells during the operation, and if j-attributes are non void, Attribute_type<j>::type::On_split(a,a') is called with a the original j-attribute and a' the new j-attribute created due to the disconnection.

See Also

CGAL::is_removable<CMap,i>
CGAL::insert_cell_0_in_cell_1<CMap>
CGAL::insert_cell_0_in_cell_2<CMap>
CGAL::insert_cell_1_in_cell_2<CMap>
CGAL::insert_dangling_cell_1_in_cell_2<CMap>
CGAL::insert_cell_2_in_cell_3<CMap,InputIterator>