Graphite
Version 3
An experimental 3D geometry processing program
|
Halfedfge-like API wrappers on top of a triangulated mesh. More...
#include <geogram/mesh/mesh_surface_intersection.h>
Public Member Functions | |
Halfedges (MeshSurfaceIntersection &I) | |
Halfedges constructor. More... | |
~Halfedges () | |
Halfedges destructor. | |
void | initialize () |
Initializes the structure. More... | |
index_t | nb () const |
Gets the number of halfedegs in the map. More... | |
index_as_iterator | begin () const |
used by range-based for More... | |
index_as_iterator | end () const |
used by range-based for More... | |
index_t | facet (index_t h) const |
Gets the facet associated to a halfedge. More... | |
index_t | alpha2 (index_t h) const |
gets the surfacic neighbor of a halfedge More... | |
index_t | alpha3 (index_t h) const |
gets the volumetric neighbor of a halfedge More... | |
index_t | facet_alpha3 (index_t f) const |
gets the volumetric neighbor of a facet More... | |
index_t | vertex (index_t h, index_t dlv) const |
gets a vertex of an halfedge More... | |
void | sew2 (index_t h1, index_t h2) |
Creates a surfacic link between two halfedges. More... | |
void | sew3 (index_t h1, index_t h2) |
Creates a volumetric link between two halfedges. More... | |
Halfedfge-like API wrappers on top of a triangulated mesh.
These are volumetric halfedges, also called combinatorial 3-map, with both volumetric links (alpha3) and surfacic link (alpha2). One may refer to this webpage for the definition of a 3-map: https://doc.cgal.org/latest/Combinatorial_map/
Definition at line 588 of file mesh_surface_intersection.h.
|
inline |
Halfedges constructor.
[in] | I | a reference to the MeshSurfaceIntersection |
Definition at line 595 of file mesh_surface_intersection.h.
gets the surfacic neighbor of a halfedge
see definition of a combinatorial 3-map here: https://doc.cgal.org/latest/Combinatorial_map/
[in] | h | a halfedge index |
h
, but in opposite order Definition at line 658 of file mesh_surface_intersection.h.
gets the volumetric neighbor of a halfedge
see definition of a combinatorial 3-map here: https://doc.cgal.org/latest/Combinatorial_map/
[in] | h | a halfedge index |
h
, but in opposite order Definition at line 681 of file mesh_surface_intersection.h.
|
inline |
used by range-based for
Definition at line 628 of file mesh_surface_intersection.h.
|
inline |
used by range-based for
Definition at line 636 of file mesh_surface_intersection.h.
Gets the facet associated to a halfedge.
[in] | h | a halfedge index |
Definition at line 645 of file mesh_surface_intersection.h.
gets the volumetric neighbor of a facet
[in] | f | a facet |
f
but in opposite index Definition at line 691 of file mesh_surface_intersection.h.
|
inline |
Initializes the structure.
Needs to be called before any other function
Definition at line 609 of file mesh_surface_intersection.h.
|
inline |
Gets the number of halfedegs in the map.
Definition at line 620 of file mesh_surface_intersection.h.
Creates a surfacic link between two halfedges.
[in] | h1,h2 | the two halfedges to be connected |
h1
and h2
should have the same origins and destinations but in reverse order (h1
's origin should be h2
's destination and vice-versa). Definition at line 720 of file mesh_surface_intersection.h.
Creates a volumetric link between two halfedges.
[in] | h1,h2 | the two halfedges to be connected |
h1
and h2
should have the same origins and destinations but in reverse order (h1
's origin should be h2
's destination and vice-versa). Definition at line 737 of file mesh_surface_intersection.h.
gets a vertex of an halfedge
[in] | h | the halfedge |
[in] | dlv | the local index of the vertex, in {0,1,2} |
dlv
= 0 returns the origin vertex of h
dlv
= 1 returns the destination vertex of h
dlv
= 2 returns the vertex of the facet adjacent to h
that is neither the origin nor the destination of h
Definition at line 705 of file mesh_surface_intersection.h.