Wildmeshing Toolkit
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
wmtk::TetOptimizerMesh::VertexAttributes Struct Reference

Public Member Functions

 VertexAttributes (const Vector3r &p)
 

Public Attributes

Vector3d m_posf
 
bool m_is_rounded = false
 
bool m_is_on_surface = false
 
size_t m_order = 0
 
std::vector< int > on_bbox_faces
 
double m_sizing_scalar = 1
 
size_t partition_id = 0
 Required for multi-threading.
 

Exact position

Stored only while it differs from m_posf; see ExactPosition. Read it with pos() (or pos_coord_equals() for one coordinate); set it with set_pos() when it is a genuinely exact value, or set_pos_to_posf() when it is m_posf – a rounded vertex, or one placed at a double position.

ExactPosition< Vector3r, Vector3d > m_exact
 
Vector3r pos () const
 
bool pos_coord_equals (int k, const Rational &r) const
 
void set_pos (const Vector3r &p)
 
void set_pos_to_posf ()
 

Member Data Documentation

◆ m_is_rounded

bool wmtk::TetOptimizerMesh::VertexAttributes::m_is_rounded = false

If a vertex cannot be rounded without inverting a tet, the exact position must be used. Once the vertex can be rounded to double precision, the rational representation is obsolete.

◆ m_order

size_t wmtk::TetOptimizerMesh::VertexAttributes::m_order = 0

The order of a vertex in a TetMesh is as follows: 0: vertex is not on the surface 1: vertex is on the surface 2: vertex is on the boundary of the surface or a non-manifold edge 3: vertex is at the boundary of a non-manifold edge or a non-manifold vertex


The documentation for this struct was generated from the following files: