Simplex queries on an indexed simplex set. More...
#include <ISS_SimplexQuery.h>
Public Types | |
typedef IssType::Number | Number |
The number type. | |
typedef IssType::Vertex | Vertex |
A vertex. | |
typedef geom::BBox< ISS::N, Number > | BBox |
A bounding box. | |
Public Member Functions | |
Constructors etc. | |
ISS_SimplexQuery (const IssType &iss) | |
Construct from the indexed simplex set. | |
void | build () |
Build the bounding box tree. Call this after the simplicial complex changes. | |
~ISS_SimplexQuery () | |
Destructor has no effect on the indexed simplex set. | |
Queries | |
template<typename IntOutIter > | |
void | computePointQuery (IntOutIter iter, const Vertex &x) const |
Get the indices of the simplices that contain the point. | |
template<typename IntOutIter > | |
void | computeWindowQuery (IntOutIter iter, const BBox &window) const |
Get the indices of the simplices whose bounding boxes overlap the window. | |
int | computeMinimumDistanceAndIndex (const Vertex &x, Number *minDistance) const |
Return the index of the simplex of minimum distance. | |
int | computeMinimumDistanceIndex (const Vertex &x) const |
Return the index of the simplex of minimum distance. | |
Number | computeMinimumDistance (const Vertex &x) const |
Return the minimum distance. |
Simplex queries on an indexed simplex set.
ISS | is the indexed simplex set. |
This class stores a constant reference to an indexed simplex set.
ISS_SimplexQuery< ISS >::ISS_SimplexQuery | ( | const IssType & | iss | ) | [inline] |
Construct from the indexed simplex set.
iss | is the indexed simplex set. |
Number ISS_SimplexQuery< ISS >::computeMinimumDistance | ( | const Vertex & | x | ) | const |
Return the minimum distance.
If M = N, the signed distance is used. If M < N, we use the unsigned distance.
int ISS_SimplexQuery< ISS >::computeMinimumDistanceAndIndex | ( | const Vertex & | x, | |
Number * | minDistance | |||
) | const |
Return the index of the simplex of minimum distance.
If M = N, the signed distance is used. If M < N, we use the unsigned distance.
Referenced by ISS_SimplexQuery< SurfaceManifold >::computeMinimumDistanceIndex().
int ISS_SimplexQuery< ISS >::computeMinimumDistanceIndex | ( | const Vertex & | x | ) | const [inline] |
Return the index of the simplex of minimum distance.
If M = N, the signed distance is used. If M < N, we use the unsigned distance.