#include <refractory.h>
Collaboration diagram for Refractory:
Refractory & Refractory::instance | ( | void | ) | [static] |
int Refractory::numRecordedVertexMoves | ( | Vertex * | v | ) |
Get number of recorded moves for input vertex.
[in] | v | Vertex of interest. |
int Refractory::getNumVertRefractedN | ( | void | ) | const |
Get number of vertices currently in refraction for filling their quota of moves per group.
int Refractory::getNumVertRefractedInt | ( | void | ) | const |
Get number of vertices currently in refraction for resulting in intersected faces.
int Refractory::getNumVertRefractedAng | ( | void | ) | const |
Get number of vertices currently in refraction for resulting in extreme angles.
int Refractory::getNumVertRefractedSmallDisp | ( | void | ) | const |
Get number of vertices currently in refraction for having unacceptably small virtual displacements.
int Refractory::getNumVertRefractedOctreeVio | ( | void | ) | const |
Get number of vertices currently in refraction for breaching boundarsy of octree.
bool Refractory::isRefracted | ( | Vertex * const | v | ) |
Determine if input vertex is currently in refractory period.
[in] | v | Vertex of interest. |
bool Refractory::vertexIsMoveCandidate | ( | Vertex *const | v | ) |
Determine if vertex is allowed to move.
[in] | v | Vertex of interest. |
bool Refractory::vertexMovesAreRecorded | ( | Vertex * | v | ) |
Check if any moves by input vertex are recorded in this class.
[in] | v | Vertex of interest. |
void Refractory::refractVertexForSmallDispVio | ( | Vertex * const | v | ) |
Put input vertex into refractory state (period when vertex cannot move) for attempting such a small move.
[in] | v | Vertex to be refracted. |
void Refractory::refractVertexForIntVio | ( | Vertex * const | v | ) |
Put input vertex into refractory state (period when vertex cannot move) for resulting in face intersections with every attempted move.
[in] | v | Vertex to be refracted. |
void Refractory::refractVertforAngleVio | ( | Vertex * const | v | ) |
Put input vertex into refractory state (period when vertex cannot move) for ulting in very small (near 0) or very large (near 2*pi) angles with every attempted move.
[in] | v | Vertex to be refracted. |
void Refractory::refractVertforOctreeVio | ( | Vertex * | v | ) |
Put input vertex into refractory state (period when vertex cannot move) for passing the octree boundary limits with every attempted move.
[in] | v | Vertex to be refracted. |
void Refractory::refractVertForNumVio | ( | Vertex * const | v | ) |
Put input vertex into refractory state (period when vertex cannot move) for being moved too many times.
[in] | v | Vertex to be refracted. |
Enforce maximum vertex displacment policy.
[in] | v | Vertex being moved. |
[out] | new_pos | New Position of input vertex. |
void Refractory::updateSuccessfulMove | ( | const int & | group, | |
Vertex * const | v | |||
) |
Update class after successful vertex move.
[in] | v | Last moved vertex. |
void Refractory::resetForNewGroup | ( | void | ) |
Clear class members for new group of moved vertices.
vp_cit Refractory::getNextVertex | ( | const int & | group, | |
vp_cit | v, | |||
bool const | int_flag, | |||
bool const | ang_flag, | |||
bool const | outside_octree | |||
) |
Decide whether to try moving the same vertex again or give up and try moving another vertex.
[in] | v | Vertex of interest. |
[in] | int_flag | True if vertex move resulted in new face intersections; false otherwise. |
[in] | ang_flag | True if vertex move resulted in extreme angles; false otherwise. |
[in] | outside_octree | True if vertex move breached octree boundary; false otherwise. |
vp_cit Refractory::beginN | ( | void | ) | const |
Get an iterator pointing to the first in the collection of vertices refracted for moving MAX_TOUCHES times.
vp_cit Refractory::endN | ( | void | ) | const |
Get an iterator pointing to one past the last in the collection of vertices refracted for moving MAX_TOUCHES times.
vp_cit Refractory::beginInt | ( | void | ) | const |
Get an iterator pointing to the first in the collection of vertices refracted for resulting in intersected faces.
vp_cit Refractory::endInt | ( | void | ) | const |
Get an iterator pointing to one past the last in the collection of vertices refracted for resulting in intersected faces.
vp_cit Refractory::beginAng | ( | void | ) | const |
Get an iterator pointing to the first in the collection of vertices refracted for resulting in extreme angles.
vp_cit Refractory::endAng | ( | void | ) | const |
Get an iterator pointing to one past the last in the collection of vertices refracted for resulting in extreme angles.
vp_cit Refractory::beginSmallDisp | ( | void | ) | const |
Get an iterator pointing to the first in the collection of vertices refracted for having an unacceptably small virtual displacement.
vp_cit Refractory::endSmallDisp | ( | void | ) | const |
Get an iterator pointing to one past the last in the collection of vertices refracted for having an unacceptably small virtual displacement.
vp_cit Refractory::beginOctreeVio | ( | void | ) | const |
Get an iterator pointing to the first in the collection of vertices refracted for breaching boundary of octree.
vp_cit Refractory::endOctreeVio | ( | void | ) | const |
Get an iterator pointing to one past the last in the collection of vertices refracted for breaching boundary of octree.