cheshirekow  v0.1.0
mpblocks::clarkson93::ExampleTraits::Simplex Struct Reference

The derived type to use for simplices. More...

#include <mpblocks/clarkson93/ExampleTraits.h>

Inheritance diagram for mpblocks::clarkson93::ExampleTraits::Simplex:
mpblocks::clarkson93::SimplexBase< ExampleTraits > mpblocks::clarkson93::BitMember< SimplexBits, simplex::NUM_BITS > mpblocks::clarkson93::BitMemberBase

Additional Inherited Members

- Public Types inherited from mpblocks::clarkson93::SimplexBase< ExampleTraits >
typedef HorizonRidge
< ExampleTraits
HorizonRidge_t
 
typedef ExampleTraits::idx_t idx_t
 
enum  Orientation
 
typedef ExampleTraits::Point Point
 
typedef ExampleTraits::PointDeref PointDeref
 
typedef ExampleTraits::PointRef PointRef
 
typedef ExampleTraits::Scalar Scalar
 
typedef ExampleTraits::Simplex Simplex
 
typedef SimplexBase
< ExampleTraits
SimplexBase_t
 
typedef SimplexBase
< ExampleTraits
This_t
 
- Public Member Functions inherited from mpblocks::clarkson93::SimplexBase< ExampleTraits >
void calculateConstraint (PointDeref &deref)
 calculate the normal and offset of the constraint given the d vertices on it's base facet (does not compute orientation / sign) More...
 
bool isInfinite (PointRef antiOrigin)
 returns true if vertex[0] is the anti origin More...
 
bool isVisible (const Point &x)
 returns true if x is on the inside of the base facet (i.e. x is in the same half space as the simplex) More...
 
Scalar normalProjection (const Point &x)
 returns the distance of x to the base facet, used in walking the triangulation to x More...
 
void orientConstraint (const Point &x, Orientation orient=INSIDE)
 orient the constraint by ensuring that the point x satisfies it (i.e. $ n \cdot x \le c $ ) More...
 
- Public Member Functions inherited from mpblocks::clarkson93::BitMember< SimplexBits, simplex::NUM_BITS >
void addTo (SimplexBitssetBit)
 
bool isMemberOf (SimplexBitssetBit)
 
void removeFrom (SimplexBitssetBit)
 
- Public Attributes inherited from mpblocks::clarkson93::SimplexBase< ExampleTraits >
SimplexN [NDim+1]
 simplices which share a facet More...
 
Point n
 normal vector of base facet More...
 
Scalar o
 offset of base facet inequality hyperplane More...
 
PointRef V [NDim+1]
 vertices of the simplex More...
 
- Static Public Attributes inherited from mpblocks::clarkson93::SimplexBase< ExampleTraits >
static const unsigned int NDim
 

Detailed Description

The derived type to use for simplices.

The only requirement is that it must derive from clarkson93::SimplexBase instantiated with the Traits class. Otherwise, it may contain as many extra data members as you want. You may hook into the triangulation control flow by overriding member functions of SimplexBase. If you do so your implementation will be called, instead of SimplexBase's (even though your implementation is not virtual). This is because the triangulation code maintains only Simplex* pointers (i.e. pointers to this type) not pointers to the base type. If you choose to hook into the program flow this way then you must be sure to call the SimplexBase member functions from your override.

Definition at line 128 of file ExampleTraits.h.


The documentation for this struct was generated from the following file: