Candy
|
A cell of the Delaunay triangulation. More...
Public Member Functions | |
Tetrahedron (const Tetrahedron &t) | |
Tetrahedron & | operator= (const Tetrahedron &t) |
bool | isInside (const std::vector< H3D::Vec3d > &points, H3D::Vec3d point) const |
This function checks if the point is inside of this tetrahedron. More... | |
bool | isInside (const std::vector< H3D::Vec3f > &points, H3D::Vec3f point) const |
This function checks if the point is inside of this tetrahedron. More... | |
double | distance (const std::vector< H3D::Vec3d > &points, H3D::Vec3d point) const |
This function will return a distance measure indicating how close the point is to the points of this tetrahedron, however it is not a euclidian measure. More... | |
float | distance (const std::vector< H3D::Vec3f > &points, H3D::Vec3f point) const |
This function will return a distance measure indicating how close the point is to the points of this tetrahedron, however it is not a euclidian measure. More... | |
template<class VECTOR_TYPE , class VALUE_TYPE > | |
VALUE_TYPE | barycentricInterpolation (const std::vector< VECTOR_TYPE > &points, const std::vector< VALUE_TYPE > &samples, VECTOR_TYPE point) const |
This function interpolates between the corners of this tetrahedron using the Barycentric coordinates of the specified point. More... | |
Public Attributes | |
int | corner_index [4] |
Point index. More... | |
H3D::Vec3d | edge_vector [4] |
Vectors are given lengths that simplifies on-line calculations. More... | |
A cell of the Delaunay triangulation.
VALUE_TYPE Candy::DelaunayTriangulation::Tetrahedron::barycentricInterpolation | ( | const std::vector< VECTOR_TYPE > & | points, |
const std::vector< VALUE_TYPE > & | samples, | ||
VECTOR_TYPE | point | ||
) | const |
This function interpolates between the corners of this tetrahedron using the Barycentric coordinates of the specified point.
double Candy::DelaunayTriangulation::Tetrahedron::distance | ( | const std::vector< H3D::Vec3d > & | points, |
H3D::Vec3d | point | ||
) | const |
This function will return a distance measure indicating how close the point is to the points of this tetrahedron, however it is not a euclidian measure.
The distance will be -1 if the point is inside and jump to zero on the transition to outside.
float Candy::DelaunayTriangulation::Tetrahedron::distance | ( | const std::vector< H3D::Vec3f > & | points, |
H3D::Vec3f | point | ||
) | const |
This function will return a distance measure indicating how close the point is to the points of this tetrahedron, however it is not a euclidian measure.
The distance will be -1 if the point is inside and jump to zero on the transition to outside.
bool Candy::DelaunayTriangulation::Tetrahedron::isInside | ( | const std::vector< H3D::Vec3d > & | points, |
H3D::Vec3d | point | ||
) | const |
This function checks if the point is inside of this tetrahedron.
This function will be slightly faster than the distance function in some cases, since it does not always have to calculate all sides.
bool Candy::DelaunayTriangulation::Tetrahedron::isInside | ( | const std::vector< H3D::Vec3f > & | points, |
H3D::Vec3f | point | ||
) | const |
This function checks if the point is inside of this tetrahedron.
This function will be slightly faster than the distance function in some cases, since it does not always have to calculate all sides.
int Candy::DelaunayTriangulation::Tetrahedron::corner_index[4] |
Point index.
H3D::Vec3d Candy::DelaunayTriangulation::Tetrahedron::edge_vector[4] |
Vectors are given lengths that simplifies on-line calculations.