#include <face.h>
Collaboration diagram for A48::Face:
Public Member Functions | |
Face (Hedge *e0, Hedge *e1, Hedge *e2) | |
The constructor creates a triangular face. | |
Hedge * | hedge (int k) |
Returns the half-edge of index k. | |
Vertex * | vertex (int k) |
Returns the vertex of index k. | |
int | level () |
Returns face level. | |
bool | is_inbase () |
Returns true if the face belongs to the level 0, else return false. | |
Hedge * | subd_edge () |
Returns the face's subdivision edge. | |
Vertex * | weld_vertex () |
Returns the face vertex that can be used for simplification. | |
Private Member Functions | |
void | set_hedge (int k, Hedge *h) |
Updates the half-edge of index k. | |
void | set_vertex (int k, Vertex *v) |
Updates the vertex of index k. | |
void | link_star_verts () |
Links the vertices to the half-edges. | |
Face * | reuse (Hedge *e0, Hedge *e1, Hedge *e2) |
Redefines a face by specifing replacement half-edges. | |
Private Attributes | |
Hedge * | e_ |
Points to the first half-egde of face's loop. |
Definition at line 17 of file face.h.
|
The constructor creates a triangular face.
Definition at line 27 of file face.h. References reuse().
|
|
Returns the half-edge of index k.
Definition at line 39 of file face.cpp. References e_, and A48::Hedge::next(). Referenced by link_star_verts(), set_hedge(), set_vertex(), A48::Mesh::split(), and vertex().
|
|
Returns true if the face belongs to the level 0, else return false. Returns true if the face belongs to level 0, else return false.
Definition at line 107 of file face.cpp. References A48::Vertex::level(), and vertex().
|
|
Returns face level. Returns the face level. This level is determined by the highest resolution level of face vertices.
Definition at line 98 of file face.cpp. References vertex(). Referenced by A48::Mesh::split().
|
|
Links the vertices to the half-edges. Links vertices to half-edges. Builds canonical vertex indexing to work with stelar mesh. Definition at line 77 of file face.cpp. References hedge(), A48::Vertex::set_star(), and vertex().
|
|
Redefines a face by specifing replacement half-edges. Updates the half-edges of the face. Make half-edge links to build a face loop. Links half-edges to face.
Definition at line 27 of file face.cpp. References e_, A48::Hedge::set_face(), and A48::Hedge::set_next(). Referenced by A48::Mesh::bisect(), Face(), A48::Mesh::flip(), A48::Mesh::split(), and A48::Mesh::weld().
|
|
Updates the half-edge of index k. Updates the half-edge of index k.
Definition at line 64 of file face.cpp. References e_, hedge(), and A48::Hedge::set_next().
|
|
Updates the vertex of index k. Updates the opposite vertex of half-edge specified by the index k.
Definition at line 88 of file face.cpp. References hedge(), and A48::Hedge::set_org().
|
|
Returns the face's subdivision edge.
Definition at line 45 of file face.h. Referenced by A48::Hedge::is_subdiv_itself(), A48::Mesh::is_triquad(), and A48::Mesh::refine().
|
|
Returns the vertex of index k.
Definition at line 54 of file face.cpp. References hedge(), and A48::Hedge::org(). Referenced by is_inbase(), level(), link_star_verts(), and A48::Mesh::split().
|