Public Member Functions | |
void | optimize (std::vector< const SMDS_MeshNode * > &nodes, std::vector< PolyVertex > &points, std::vector< size_t > &nodeIndices) |
Optimize triangles by edge swapping. More... | |
double | computeBadness (size_t i1, size_t i2, size_t i3, std::vector< PolyVertex > &points, bool checkArea=false) |
Return 1. More... | |
Data Fields | |
std::vector< TriaNodeSet > | _nodeUsage |
double SMESH_MeshAlgos::Triangulate::Optimizer::computeBadness | ( | size_t | i1, |
size_t | i2, | ||
size_t | i3, | ||
std::vector< PolyVertex > & | points, | ||
bool | checkArea = false |
||
) |
Return 1.
/area. Initially: max cos^2 of triangle angles
Referenced by SMESH_MeshAlgos::Triangulate::Optimizer::optimize().
void SMESH_MeshAlgos::Triangulate::Optimizer::optimize | ( | std::vector< const SMDS_MeshNode * > & | nodes, |
std::vector< PolyVertex > & | points, | ||
std::vector< size_t > & | nodeIndices | ||
) |
Optimize triangles by edge swapping.
[in,out] | nodes | - polygon triangulation, i.e. connectivity of all triangles to optimize |
[in] | points | - coordinates of nodes of the input polygon |
[in] | nodeIndices | - indices of triangulation nodes within the input polygon |
References SMESH_MeshAlgos::Triangulate::Optimizer::_nodeUsage, and SMESH_MeshAlgos::Triangulate::Optimizer::computeBadness().
std::vector< TriaNodeSet > SMESH_MeshAlgos::Triangulate::Optimizer::_nodeUsage |
Referenced by SMESH_MeshAlgos::Triangulate::Optimizer::optimize().