cheshirekow
v0.1.0
|
implements simplex operations for simplex references, using other references can be easily extended by building on top of this class More...
#include <mpblocks/clarkson93/Simplex2.h>
Public Types | |
typedef BitSet::reference | BitRef |
typedef std::bitset < simplex::NUM_BITS > | BitSet |
typedef Traits::Deref | Deref |
typedef NeighborRange< Traits > | NRange |
typedef Traits::Point | Point |
typedef Traits::PointRef | PointRef |
typedef Traits::Scalar | Scalar |
typedef Simplex2< Traits > | Simplex |
typedef Traits::SimplexRef | SimplexRef |
typedef VertexRange< Traits > | VRange |
Public Member Functions | |
void | computeBase (Simplex &S, Deref &deref) |
make two simplices neighbors across a common facet More... | |
void | finish (Simplex &) |
after filling vertices, lay them out in sorted order More... | |
uint32_t | indexOf (Simplex &S, PointRef v) |
index of v in S More... | |
bool | isInfinite (const Simplex &S, PointRef antiOrigin) |
returns true if the base vertex is the anti origin More... | |
bool | isMember (Simplex &S, SimplexBits bit) |
S is a member of a set. More... | |
bool | isVisible (const Simplex &S, 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... | |
SimplexRef | neighbor (Simplex &S, uint32_t i) |
neighbor at i More... | |
SimplexRef | neighborAcross (Simplex &S, PointRef v) |
neighbor across v More... | |
NRange | neighborhood (Simplex &S) |
complete neighborhood More... | |
template<typename Input , typename Output > | |
void | neighborSharing (Simplex &S, Input first, Input last, Output iter) |
builds a list of neighbors that share a facet... this is the set of neighbors who are accross from a vertex v where v is not in the facet set More... | |
Scalar | normalProjection (const Simplex &S, const Point &x) |
returns the distance of x to the base facet, used in walking the triangulation to x More... | |
void | orientBase (Simplex &S, const Point &x, Orientation orient=INSIDE) |
orient the base facete normal by ensuring that the point x lies on the appropriate half-space ) More... | |
PointRef | peak (Simplex &S) |
designated peak vertex More... | |
SimplexRef | peakNeighbor (Simplex &S) |
neighbor across peak More... | |
BitRef | setMember (Simplex &S, SimplexBits bit) |
set S's membership in bit More... | |
Surrogate< SimplexRef > | setNeighbor (Simplex &S, uint32_t i) |
set neighbor i More... | |
Surrogate< SimplexRef > | setNeighborAcross (Simplex &S, PointRef v) |
set neighbor across v More... | |
Surrogate< PointRef > | setPeak (Simplex &S) |
Surrogate< PointRef > | setVertex (Simplex &S, uint32_t i) |
set vertex i More... | |
PointRef | vertex (Simplex &S, uint32_t i) |
vertex at i More... | |
VRange | vertices (Simplex &S) |
complete vertex set More... | |
template<typename Output > | |
void | vsetIntersection (Simplex &Sa, Simplex &Sb, Output intersect) |
builds a list of vertices common to both simplices More... | |
template<typename Output1 , typename Output2 , typename Output3 > | |
void | vsetSplit (Simplex &Sa, Simplex &Sb, Output1 a_only, Output2 b_only, Output3 intersect) |
simultaneously construct the set intersection and the set symmetric difference of Sa and Sb More... | |
Static Public Attributes | |
static const unsigned int | NDim = Traits::NDim |
implements simplex operations for simplex references, using other references can be easily extended by building on top of this class
Definition at line 229 of file Simplex2.h.
typedef BitSet::reference mpblocks::clarkson93::SimplexOps< Traits >::BitRef |
Definition at line 243 of file Simplex2.h.
typedef std::bitset<simplex::NUM_BITS> mpblocks::clarkson93::SimplexOps< Traits >::BitSet |
Definition at line 242 of file Simplex2.h.
typedef Traits::Deref mpblocks::clarkson93::SimplexOps< Traits >::Deref |
Definition at line 238 of file Simplex2.h.
typedef NeighborRange<Traits> mpblocks::clarkson93::SimplexOps< Traits >::NRange |
Definition at line 239 of file Simplex2.h.
typedef Traits::Point mpblocks::clarkson93::SimplexOps< Traits >::Point |
Definition at line 235 of file Simplex2.h.
typedef Traits::PointRef mpblocks::clarkson93::SimplexOps< Traits >::PointRef |
Definition at line 237 of file Simplex2.h.
typedef Traits::Scalar mpblocks::clarkson93::SimplexOps< Traits >::Scalar |
Definition at line 234 of file Simplex2.h.
typedef Simplex2<Traits> mpblocks::clarkson93::SimplexOps< Traits >::Simplex |
Definition at line 241 of file Simplex2.h.
typedef Traits::SimplexRef mpblocks::clarkson93::SimplexOps< Traits >::SimplexRef |
Definition at line 236 of file Simplex2.h.
typedef VertexRange<Traits> mpblocks::clarkson93::SimplexOps< Traits >::VRange |
Definition at line 240 of file Simplex2.h.
|
inline |
make two simplices neighbors across a common facet
compute the base facet normal and offset
Definition at line 233 of file Simplex2.hpp.
|
inline |
after filling vertices, lay them out in sorted order
Definition at line 211 of file Simplex2.hpp.
|
inline |
index of v in S
Definition at line 85 of file Simplex2.hpp.
|
inline |
returns true if the base vertex is the anti origin
Definition at line 304 of file Simplex2.hpp.
|
inline |
S is a member of a set.
Definition at line 78 of file Simplex2.hpp.
|
inline |
returns true if x is on the inside of the base facet (i.e. x is in the same half space as the simplex)
Definition at line 311 of file Simplex2.hpp.
|
inline |
neighbor at i
Definition at line 47 of file Simplex2.hpp.
|
inline |
neighbor across v
Definition at line 55 of file Simplex2.hpp.
|
inline |
complete neighborhood
Definition at line 93 of file Simplex2.hpp.
|
inline |
builds a list of neighbors that share a facet... this is the set of neighbors who are accross from a vertex v where v is not in the facet set
Definition at line 154 of file Simplex2.hpp.
|
inline |
returns the distance of x to the base facet, used in walking the triangulation to x
Definition at line 296 of file Simplex2.hpp.
|
inline |
orient the base facete normal by ensuring that the point x lies on the appropriate half-space )
Definition at line 259 of file Simplex2.hpp.
|
inline |
designated peak vertex
Definition at line 71 of file Simplex2.hpp.
|
inline |
neighbor across peak
Definition at line 63 of file Simplex2.hpp.
|
inline |
set S's membership in bit
Definition at line 204 of file Simplex2.hpp.
|
inline |
set neighbor i
Definition at line 187 of file Simplex2.hpp.
|
inline |
set neighbor across v
Definition at line 195 of file Simplex2.hpp.
|
inline |
Definition at line 170 of file Simplex2.hpp.
|
inline |
set vertex i
Definition at line 179 of file Simplex2.hpp.
|
inline |
vertex at i
Definition at line 39 of file Simplex2.hpp.
|
inline |
complete vertex set
Definition at line 101 of file Simplex2.hpp.
|
inline |
builds a list of vertices common to both simplices
Definition at line 140 of file Simplex2.hpp.
|
inline |
simultaneously construct the set intersection and the set symmetric difference of Sa and Sb
Definition at line 112 of file Simplex2.hpp.
|
static |
Definition at line 233 of file Simplex2.h.