MeshCleaner< ambient, topological > Class Template Reference

#include <MeshCleaner.h>

List of all members.

Static Public Member Functions

static void traverseComponent (Delaunay *del, const Simplex &seed, SimplexSet &component, hudson::SmallList< Simplex > &next_seeds)
template<class v_iterator>
static bool clean (Delaunay *del, v_iterator begin_corners, v_iterator end_corners, hudson::SmallList< Simplex > *optional_output=0)

Classes

struct  FindAllDead
struct  FindCorners


Detailed Description

template<unsigned ambient, unsigned topological>
class MeshCleaner< ambient, topological >

Clean a mesh by removing unneeded corners and anything the corners touch, recursively on until we hit a boundary.

TODO: handle the deletion of vertices.


Member Function Documentation

template<unsigned ambient, unsigned topological>
template<class v_iterator>
static bool MeshCleaner< ambient, topological >::clean Delaunay *  del,
v_iterator  begin_corners,
v_iterator  end_corners,
hudson::SmallList< Simplex > *  optional_output = 0
[inline, static]
 

Remove all ``exterior'' simplices.

The corners are assumed to be exterior points. We remove that entire component. We then save the next component we find, and delete all later components. If we have many 'next' components, undefined behaviour results. This probably should be checked against.

Returns false if the mesh was not watertight and we identify every simplex as being exterior. The caller should check and see what to do about this. The mesh is unmodified in this case.

template<unsigned ambient, unsigned topological>
static void MeshCleaner< ambient, topological >::traverseComponent Delaunay *  del,
const Simplex &  seed,
SimplexSet component,
hudson::SmallList< Simplex > &  next_seeds
[inline, static]
 

Traverse one component. Return the component as an ordered set, and return a list of seeds (possibly with duplicates) of simplices just on the other side of a boundary from the current component.

The component need not be initialized to be empty.


The documentation for this class was generated from the following file:
Generated on Thu Mar 27 19:04:15 2008 by  doxygen 1.4.6