RefineVertex< ambient > Class Template Reference

#include <RefineVertex.h>

List of all members.

Public Types

typedef Geometry::Point< ambient > Point
typedef ::GenericMesh< ambient > Mesh
typedef ::ConcentricShells<
RefineVertex, Point
ConcentricShells
typedef MeshTypes< ambient
>::Ball 
Ball
typedef hudson::FastHashSet<
RefineVertex *, hudson::HashPointer<
RefineVertex > > 
VertexSet
typedef hudson::OrderedHashSet<
RefineVertex *, hudson::HashPointer<
RefineVertex > > 
VertexUniqueList
typedef std::vector< const
Mesh * >::const_iterator 
upper_iterator

Public Member Functions

 RefineVertex (const Point &p, unsigned cd=-1)
void setContainingDimension (unsigned cd)
void replaceHandle (Ball *handle)
BallgetHandle () const
void addUpperMesh (const Mesh *m)
void setID (unsigned id)
upper_iterator begin_uppers (unsigned d) const
upper_iterator end_uppers (unsigned d) const
const std::vector< const Mesh * > & get_uppers (unsigned d) const
bool hasUpperMesh (const Mesh *m) const
unsigned getID () const
unsigned getCD () const
double dist2 (const RefineVertex *other) const
bool isCrowded (const Mesh *m) const
bool isCrowded () const
RefineVertexgetFarVertex (const Mesh *m) const
RefineVertexgetFarVertex () const
void reassignTo (const Mesh *m, RefineVertex *other)
void addUninserted (const Mesh *m, RefineVertex *uninserted)
pair< RefineVertex *, double > findClosest (const Mesh *m, const Point &q, double r2) const
const PointtoPoint () const
double x (size_t i) const
const double * x () const
std::string toString () const

Classes

struct  IsCloser
struct  Printer

template<size_t ambient>
class RefineVertex< ambient >


Member Typedef Documentation

template<size_t ambient>
typedef MeshTypes<ambient>::Ball RefineVertex< ambient >::Ball
 

template<size_t ambient>
typedef ::ConcentricShells<RefineVertex, Point> RefineVertex< ambient >::ConcentricShells
 

template<size_t ambient>
typedef ::GenericMesh<ambient> RefineVertex< ambient >::Mesh
 

template<size_t ambient>
typedef Geometry::Point<ambient> RefineVertex< ambient >::Point
 

template<size_t ambient>
typedef std::vector<const Mesh*>::const_iterator RefineVertex< ambient >::upper_iterator
 

Get the meshes that contain this vertex.

template<size_t ambient>
typedef hudson::FastHashSet<RefineVertex*, hudson::HashPointer<RefineVertex> > RefineVertex< ambient >::VertexSet
 

template<size_t ambient>
typedef hudson::OrderedHashSet<RefineVertex*, hudson::HashPointer<RefineVertex> > RefineVertex< ambient >::VertexUniqueList
 


Constructor & Destructor Documentation

template<size_t ambient>
RefineVertex< ambient >::RefineVertex const Point p,
unsigned  cd = -1
[inline]
 

Constructor. The Vertex signature requires having a constructor taking only a point; for those calls, we set the containing dimension to -1 to be fixed later with setContainingDimension().


Member Function Documentation

template<size_t ambient>
void RefineVertex< ambient >::addUninserted const Mesh m,
RefineVertex< ambient > *  uninserted
[inline]
 

Add one new vertex to our list.

template<size_t ambient>
void RefineVertex< ambient >::addUpperMesh const Mesh m  )  [inline]
 

Add a new mesh to the list of meshes that care about this vertex. We keep the list sorted.

template<size_t ambient>
upper_iterator RefineVertex< ambient >::begin_uppers unsigned  d  )  const [inline]
 

template<size_t ambient>
double RefineVertex< ambient >::dist2 const RefineVertex< ambient > *  other  )  const [inline]
 

Distance to a vertex.

template<size_t ambient>
upper_iterator RefineVertex< ambient >::end_uppers unsigned  d  )  const [inline]
 

template<size_t ambient>
pair<RefineVertex*, double> RefineVertex< ambient >::findClosest const Mesh m,
const Point q,
double  r2
const [inline]
 

Get the closest uninserted vertex to a given point (NULL if there is no point closer than the given range, for shortcut execution).

template<size_t ambient>
const std::vector<const Mesh*>& RefineVertex< ambient >::get_uppers unsigned  d  )  const [inline]
 

template<size_t ambient>
unsigned RefineVertex< ambient >::getCD  )  const [inline]
 

template<size_t ambient>
RefineVertex* RefineVertex< ambient >::getFarVertex  )  const [inline]
 

template<size_t ambient>
RefineVertex* RefineVertex< ambient >::getFarVertex const Mesh m  )  const [inline]
 

Return an uninserted point, about as far as possible, that crowds this vertex.

template<size_t ambient>
Ball* RefineVertex< ambient >::getHandle  )  const [inline]
 

Get the handle associated with the top-dimensional mesh.

template<size_t ambient>
unsigned RefineVertex< ambient >::getID  )  const [inline]
 

Get the unique ID number for this vertex.

template<size_t ambient>
bool RefineVertex< ambient >::hasUpperMesh const Mesh m  )  const [inline]
 

template<size_t ambient>
bool RefineVertex< ambient >::isCrowded  )  const [inline]
 

template<size_t ambient>
bool RefineVertex< ambient >::isCrowded const Mesh m  )  const [inline]
 

Is this vertex crowded?

template<size_t ambient>
void RefineVertex< ambient >::reassignTo const Mesh m,
RefineVertex< ambient > *  other
[inline]
 

Reassign uninserted vertices from this vertex to the new vertex.

template<size_t ambient>
void RefineVertex< ambient >::replaceHandle Ball handle  )  [inline]
 

Change the handle into the simplices of the top-dimensional mesh.

template<size_t ambient>
void RefineVertex< ambient >::setContainingDimension unsigned  cd  )  [inline]
 

Set the containing dimension on a vertex that had to be constructed with the Point constructor.

template<size_t ambient>
void RefineVertex< ambient >::setID unsigned  id  )  [inline]
 

The creator of the vertex doesn't know what ID it will have (if any); only the SVR main loop does. Thus we need this accessor. IDs must be positive. Note that the ID can only be set once, and never reset.

template<size_t ambient>
const Point& RefineVertex< ambient >::toPoint  )  const [inline]
 

Get the position of this vertex.

template<size_t ambient>
std::string RefineVertex< ambient >::toString  )  const [inline]
 

For debugging: Get a (ugly) string for the point.

template<size_t ambient>
const double* RefineVertex< ambient >::x  )  const [inline]
 

Get a C array pointing to the point's data.

template<size_t ambient>
double RefineVertex< ambient >::x size_t  i  )  const [inline]
 

Read the ith coordinate of the point.


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