Developer Documentation
|
Connectivity Class for Triangle Meshes. More...
#include <OpenFlipper/libs_required/OpenMesh/src/OpenMesh/Core/Mesh/TriConnectivity.hh>
Public Member Functions | |
void | assign_connectivity (const TriConnectivity &_other) |
void | assign_connectivity (const PolyConnectivity &_other) |
VertexHandle | opposite_vh (HalfedgeHandle _heh) const |
VertexHandle | opposite_he_opposite_vh (HalfedgeHandle _heh) const |
Addding items to a mesh | |
FaceHandle | add_face (const VertexHandle *_vhandles, size_t _vhs_size) |
Add a face with arbitrary valence to the triangle mesh. More... | |
FaceHandle | add_face (const std::vector< VertexHandle > &_vhandles) |
Add a face with arbitrary valence to the triangle mesh. More... | |
FaceHandle | add_face (VertexHandle _vh0, VertexHandle _vh1, VertexHandle _vh2) |
Add a face to the mesh (triangle) More... | |
Topology modifying operators | |
bool | is_collapse_ok (HalfedgeHandle _heh) |
HalfedgeHandle | vertex_split (VertexHandle v0, VertexHandle v1, VertexHandle vl, VertexHandle vr) |
Vertex Split: inverse operation to collapse(). | |
bool | is_flip_ok (EdgeHandle _eh) const |
Check whether flipping _eh is topologically correct. | |
void | flip (EdgeHandle _eh) |
void | split (EdgeHandle _eh, VertexHandle _vh) |
Edge split (= 2-to-4 split) More... | |
void | split_edge (EdgeHandle _eh, VertexHandle _vh) |
Edge split (= 2-to-4 split) More... | |
void | split_copy (EdgeHandle _eh, VertexHandle _vh) |
Edge split (= 2-to-4 split) More... | |
void | split_edge_copy (EdgeHandle _eh, VertexHandle _vh) |
Edge split (= 2-to-4 split) More... | |
void | split (FaceHandle _fh, VertexHandle _vh) |
Face split (= 1-to-3) split, calls corresponding PolyMeshT function). More... | |
void | split_copy (FaceHandle _fh, VertexHandle _vh) |
Face split (= 1-to-3) split, calls corresponding PolyMeshT function). More... | |
Public Member Functions inherited from OpenMesh::PolyConnectivity | |
void | assign_connectivity (const PolyConnectivity &_other) |
FaceHandle | opposite_face_handle (HalfedgeHandle _heh) const |
returns the face handle of the opposite halfedge | |
void | adjust_outgoing_halfedge (VertexHandle _vh) |
HalfedgeHandle | find_halfedge (VertexHandle _start_vh, VertexHandle _end_vh) const |
Find halfedge from _vh0 to _vh1. Returns invalid handle if not found. | |
uint | valence (VertexHandle _vh) const |
Vertex valence. | |
uint | valence (FaceHandle _fh) const |
Face valence. | |
void | collapse (HalfedgeHandle _heh) |
bool | is_simple_link (EdgeHandle _eh) const |
bool | is_simply_connected (FaceHandle _fh) const |
FaceHandle | remove_edge (EdgeHandle _eh) |
void | reinsert_edge (EdgeHandle _eh) |
HalfedgeHandle | insert_edge (HalfedgeHandle _prev_heh, HalfedgeHandle _next_heh) |
void | split (FaceHandle _fh, VertexHandle _vh) |
Face split (= 1-to-n split). More... | |
void | split_copy (FaceHandle _fh, VertexHandle _vh) |
Face split (= 1-to-n split). More... | |
void | triangulate (FaceHandle _fh) |
Triangulate the face _fh. More... | |
void | triangulate () |
triangulate the entire mesh | |
void | split_edge (EdgeHandle _eh, VertexHandle _vh) |
void | split_edge_copy (EdgeHandle _eh, VertexHandle _vh) |
VertexHandle | add_vertex () |
Add a new vertex. | |
FaceHandle | add_face (const std::vector< VertexHandle > &_vhandles) |
Add and connect a new face. More... | |
FaceHandle | add_face (VertexHandle _vh0, VertexHandle _vh1, VertexHandle _vh2) |
Add and connect a new face. More... | |
FaceHandle | add_face (VertexHandle _vh0, VertexHandle _vh1, VertexHandle _vh2, VertexHandle _vh3) |
Add and connect a new face. More... | |
FaceHandle | add_face (const VertexHandle *_vhandles, size_t _vhs_size) |
Add and connect a new face. More... | |
bool | is_collapse_ok (HalfedgeHandle _he) |
void | delete_vertex (VertexHandle _vh, bool _delete_isolated_vertices=true) |
void | delete_edge (EdgeHandle _eh, bool _delete_isolated_vertices=true) |
void | delete_face (FaceHandle _fh, bool _delete_isolated_vertices=true) |
VertexIter | vertices_begin () |
Begin iterator for vertices. | |
ConstVertexIter | vertices_begin () const |
Const begin iterator for vertices. | |
VertexIter | vertices_end () |
End iterator for vertices. | |
ConstVertexIter | vertices_end () const |
Const end iterator for vertices. | |
HalfedgeIter | halfedges_begin () |
Begin iterator for halfedges. | |
ConstHalfedgeIter | halfedges_begin () const |
Const begin iterator for halfedges. | |
HalfedgeIter | halfedges_end () |
End iterator for halfedges. | |
ConstHalfedgeIter | halfedges_end () const |
Const end iterator for halfedges. | |
EdgeIter | edges_begin () |
Begin iterator for edges. | |
ConstEdgeIter | edges_begin () const |
Const begin iterator for edges. | |
EdgeIter | edges_end () |
End iterator for edges. | |
ConstEdgeIter | edges_end () const |
Const end iterator for edges. | |
FaceIter | faces_begin () |
Begin iterator for faces. | |
ConstFaceIter | faces_begin () const |
Const begin iterator for faces. | |
FaceIter | faces_end () |
End iterator for faces. | |
ConstFaceIter | faces_end () const |
Const end iterator for faces. | |
VertexIter | vertices_sbegin () |
Begin iterator for vertices. | |
ConstVertexIter | vertices_sbegin () const |
Const begin iterator for vertices. | |
HalfedgeIter | halfedges_sbegin () |
Begin iterator for halfedges. | |
ConstHalfedgeIter | halfedges_sbegin () const |
Const begin iterator for halfedges. | |
EdgeIter | edges_sbegin () |
Begin iterator for edges. | |
ConstEdgeIter | edges_sbegin () const |
Const begin iterator for edges. | |
FaceIter | faces_sbegin () |
Begin iterator for faces. | |
ConstFaceIter | faces_sbegin () const |
Const begin iterator for faces. | |
VertexVertexIter | vv_iter (VertexHandle _vh) |
vertex - vertex circulator | |
VertexVertexCWIter | vv_cwiter (VertexHandle _vh) |
vertex - vertex circulator cw | |
VertexVertexCCWIter | vv_ccwiter (VertexHandle _vh) |
vertex - vertex circulator ccw | |
VertexIHalfedgeIter | vih_iter (VertexHandle _vh) |
vertex - incoming halfedge circulator | |
VertexIHalfedgeCWIter | vih_cwiter (VertexHandle _vh) |
vertex - incoming halfedge circulator cw | |
VertexIHalfedgeCCWIter | vih_ccwiter (VertexHandle _vh) |
vertex - incoming halfedge circulator ccw | |
VertexOHalfedgeIter | voh_iter (VertexHandle _vh) |
vertex - outgoing halfedge circulator | |
VertexOHalfedgeCWIter | voh_cwiter (VertexHandle _vh) |
vertex - outgoing halfedge circulator cw | |
VertexOHalfedgeCCWIter | voh_ccwiter (VertexHandle _vh) |
vertex - outgoing halfedge circulator ccw | |
VertexEdgeIter | ve_iter (VertexHandle _vh) |
vertex - edge circulator | |
VertexEdgeCWIter | ve_cwiter (VertexHandle _vh) |
vertex - edge circulator cw | |
VertexEdgeCCWIter | ve_ccwiter (VertexHandle _vh) |
vertex - edge circulator ccw | |
VertexFaceIter | vf_iter (VertexHandle _vh) |
vertex - face circulator | |
VertexFaceCWIter | vf_cwiter (VertexHandle _vh) |
vertex - face circulator cw | |
VertexFaceCCWIter | vf_ccwiter (VertexHandle _vh) |
vertex - face circulator ccw | |
ConstVertexVertexIter | cvv_iter (VertexHandle _vh) const |
const vertex circulator | |
ConstVertexVertexCWIter | cvv_cwiter (VertexHandle _vh) const |
const vertex circulator cw | |
ConstVertexVertexCCWIter | cvv_ccwiter (VertexHandle _vh) const |
const vertex circulator ccw | |
ConstVertexIHalfedgeIter | cvih_iter (VertexHandle _vh) const |
const vertex - incoming halfedge circulator | |
ConstVertexIHalfedgeCWIter | cvih_cwiter (VertexHandle _vh) const |
const vertex - incoming halfedge circulator cw | |
ConstVertexIHalfedgeCCWIter | cvih_ccwiter (VertexHandle _vh) const |
const vertex - incoming halfedge circulator ccw | |
ConstVertexOHalfedgeIter | cvoh_iter (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator | |
ConstVertexOHalfedgeCWIter | cvoh_cwiter (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator cw | |
ConstVertexOHalfedgeCCWIter | cvoh_ccwiter (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator ccw | |
ConstVertexEdgeIter | cve_iter (VertexHandle _vh) const |
const vertex - edge circulator | |
ConstVertexEdgeCWIter | cve_cwiter (VertexHandle _vh) const |
const vertex - edge circulator cw | |
ConstVertexEdgeCCWIter | cve_ccwiter (VertexHandle _vh) const |
const vertex - edge circulator ccw | |
ConstVertexFaceIter | cvf_iter (VertexHandle _vh) const |
const vertex - face circulator | |
ConstVertexFaceCWIter | cvf_cwiter (VertexHandle _vh) const |
const vertex - face circulator cw | |
ConstVertexFaceCCWIter | cvf_ccwiter (VertexHandle _vh) const |
const vertex - face circulator ccw | |
FaceVertexIter | fv_iter (FaceHandle _fh) |
face - vertex circulator | |
FaceVertexCWIter | fv_cwiter (FaceHandle _fh) |
face - vertex circulator cw | |
FaceVertexCCWIter | fv_ccwiter (FaceHandle _fh) |
face - vertex circulator ccw | |
FaceHalfedgeIter | fh_iter (FaceHandle _fh) |
face - halfedge circulator | |
FaceHalfedgeCWIter | fh_cwiter (FaceHandle _fh) |
face - halfedge circulator cw | |
FaceHalfedgeCCWIter | fh_ccwiter (FaceHandle _fh) |
face - halfedge circulator ccw | |
FaceEdgeIter | fe_iter (FaceHandle _fh) |
face - edge circulator | |
FaceEdgeCWIter | fe_cwiter (FaceHandle _fh) |
face - edge circulator cw | |
FaceEdgeCCWIter | fe_ccwiter (FaceHandle _fh) |
face - edge circulator ccw | |
FaceFaceIter | ff_iter (FaceHandle _fh) |
face - face circulator | |
FaceFaceCWIter | ff_cwiter (FaceHandle _fh) |
face - face circulator cw | |
FaceFaceCCWIter | ff_ccwiter (FaceHandle _fh) |
face - face circulator ccw | |
ConstFaceVertexIter | cfv_iter (FaceHandle _fh) const |
const face - vertex circulator | |
ConstFaceVertexCWIter | cfv_cwiter (FaceHandle _fh) const |
const face - vertex circulator cw | |
ConstFaceVertexCCWIter | cfv_ccwiter (FaceHandle _fh) const |
const face - vertex circulator ccw | |
ConstFaceHalfedgeIter | cfh_iter (FaceHandle _fh) const |
const face - halfedge circulator | |
ConstFaceHalfedgeCWIter | cfh_cwiter (FaceHandle _fh) const |
const face - halfedge circulator cw | |
ConstFaceHalfedgeCCWIter | cfh_ccwiter (FaceHandle _fh) const |
const face - halfedge circulator ccw | |
ConstFaceEdgeIter | cfe_iter (FaceHandle _fh) const |
const face - edge circulator | |
ConstFaceEdgeCWIter | cfe_cwiter (FaceHandle _fh) const |
const face - edge circulator cw | |
ConstFaceEdgeCCWIter | cfe_ccwiter (FaceHandle _fh) const |
const face - edge circulator ccw | |
ConstFaceFaceIter | cff_iter (FaceHandle _fh) const |
const face - face circulator | |
ConstFaceFaceCWIter | cff_cwiter (FaceHandle _fh) const |
const face - face circulator cw | |
ConstFaceFaceCCWIter | cff_ccwiter (FaceHandle _fh) const |
const face - face circulator | |
VertexVertexIter | vv_begin (VertexHandle _vh) |
vertex - vertex circulator | |
VertexVertexCWIter | vv_cwbegin (VertexHandle _vh) |
vertex - vertex circulator cw | |
VertexVertexCCWIter | vv_ccwbegin (VertexHandle _vh) |
vertex - vertex circulator ccw | |
VertexIHalfedgeIter | vih_begin (VertexHandle _vh) |
vertex - incoming halfedge circulator | |
VertexIHalfedgeCWIter | vih_cwbegin (VertexHandle _vh) |
vertex - incoming halfedge circulator cw | |
VertexIHalfedgeCCWIter | vih_ccwbegin (VertexHandle _vh) |
vertex - incoming halfedge circulator ccw | |
VertexOHalfedgeIter | voh_begin (VertexHandle _vh) |
vertex - outgoing halfedge circulator | |
VertexOHalfedgeCWIter | voh_cwbegin (VertexHandle _vh) |
vertex - outgoing halfedge circulator cw | |
VertexOHalfedgeCCWIter | voh_ccwbegin (VertexHandle _vh) |
vertex - outgoing halfedge circulator ccw | |
VertexEdgeIter | ve_begin (VertexHandle _vh) |
vertex - edge circulator | |
VertexEdgeCWIter | ve_cwbegin (VertexHandle _vh) |
vertex - edge circulator cw | |
VertexEdgeCCWIter | ve_ccwbegin (VertexHandle _vh) |
vertex - edge circulator ccw | |
VertexFaceIter | vf_begin (VertexHandle _vh) |
vertex - face circulator | |
VertexFaceCWIter | vf_cwbegin (VertexHandle _vh) |
vertex - face circulator cw | |
VertexFaceCCWIter | vf_ccwbegin (VertexHandle _vh) |
vertex - face circulator ccw | |
ConstVertexVertexIter | cvv_begin (VertexHandle _vh) const |
const vertex circulator | |
ConstVertexVertexCWIter | cvv_cwbegin (VertexHandle _vh) const |
const vertex circulator cw | |
ConstVertexVertexCCWIter | cvv_ccwbegin (VertexHandle _vh) const |
const vertex circulator ccw | |
ConstVertexIHalfedgeIter | cvih_begin (VertexHandle _vh) const |
const vertex - incoming halfedge circulator | |
ConstVertexIHalfedgeCWIter | cvih_cwbegin (VertexHandle _vh) const |
const vertex - incoming halfedge circulator cw | |
ConstVertexIHalfedgeCCWIter | cvih_ccwbegin (VertexHandle _vh) const |
const vertex - incoming halfedge circulator ccw | |
ConstVertexOHalfedgeIter | cvoh_begin (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator | |
ConstVertexOHalfedgeCWIter | cvoh_cwbegin (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator cw | |
ConstVertexOHalfedgeCCWIter | cvoh_ccwbegin (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator ccw | |
ConstVertexEdgeIter | cve_begin (VertexHandle _vh) const |
const vertex - edge circulator | |
ConstVertexEdgeCWIter | cve_cwbegin (VertexHandle _vh) const |
const vertex - edge circulator cw | |
ConstVertexEdgeCCWIter | cve_ccwbegin (VertexHandle _vh) const |
const vertex - edge circulator ccw | |
ConstVertexFaceIter | cvf_begin (VertexHandle _vh) const |
const vertex - face circulator | |
ConstVertexFaceCWIter | cvf_cwbegin (VertexHandle _vh) const |
const vertex - face circulator cw | |
ConstVertexFaceCCWIter | cvf_ccwbegin (VertexHandle _vh) const |
const vertex - face circulator ccw | |
FaceVertexIter | fv_begin (FaceHandle _fh) |
face - vertex circulator | |
FaceVertexCWIter | fv_cwbegin (FaceHandle _fh) |
face - vertex circulator cw | |
FaceVertexCCWIter | fv_ccwbegin (FaceHandle _fh) |
face - vertex circulator ccw | |
FaceHalfedgeIter | fh_begin (FaceHandle _fh) |
face - halfedge circulator | |
FaceHalfedgeCWIter | fh_cwbegin (FaceHandle _fh) |
face - halfedge circulator cw | |
FaceHalfedgeCCWIter | fh_ccwbegin (FaceHandle _fh) |
face - halfedge circulator ccw | |
FaceEdgeIter | fe_begin (FaceHandle _fh) |
face - edge circulator | |
FaceEdgeCWIter | fe_cwbegin (FaceHandle _fh) |
face - edge circulator cw | |
FaceEdgeCCWIter | fe_ccwbegin (FaceHandle _fh) |
face - edge circulator ccw | |
FaceFaceIter | ff_begin (FaceHandle _fh) |
face - face circulator | |
FaceFaceCWIter | ff_cwbegin (FaceHandle _fh) |
face - face circulator cw | |
FaceFaceCCWIter | ff_ccwbegin (FaceHandle _fh) |
face - face circulator ccw | |
HalfedgeLoopIter | hl_begin (HalfedgeHandle _heh) |
halfedge circulator | |
HalfedgeLoopCWIter | hl_cwbegin (HalfedgeHandle _heh) |
halfedge circulator | |
HalfedgeLoopCCWIter | hl_ccwbegin (HalfedgeHandle _heh) |
halfedge circulator ccw | |
ConstFaceVertexIter | cfv_begin (FaceHandle _fh) const |
const face - vertex circulator | |
ConstFaceVertexCWIter | cfv_cwbegin (FaceHandle _fh) const |
const face - vertex circulator cw | |
ConstFaceVertexCCWIter | cfv_ccwbegin (FaceHandle _fh) const |
const face - vertex circulator ccw | |
ConstFaceHalfedgeIter | cfh_begin (FaceHandle _fh) const |
const face - halfedge circulator | |
ConstFaceHalfedgeCWIter | cfh_cwbegin (FaceHandle _fh) const |
const face - halfedge circulator cw | |
ConstFaceHalfedgeCCWIter | cfh_ccwbegin (FaceHandle _fh) const |
const face - halfedge circulator ccw | |
ConstFaceEdgeIter | cfe_begin (FaceHandle _fh) const |
const face - edge circulator | |
ConstFaceEdgeCWIter | cfe_cwbegin (FaceHandle _fh) const |
const face - edge circulator cw | |
ConstFaceEdgeCCWIter | cfe_ccwbegin (FaceHandle _fh) const |
const face - edge circulator ccw | |
ConstFaceFaceIter | cff_begin (FaceHandle _fh) const |
const face - face circulator | |
ConstFaceFaceCWIter | cff_cwbegin (FaceHandle _fh) const |
const face - face circulator cw | |
ConstFaceFaceCCWIter | cff_ccwbegin (FaceHandle _fh) const |
const face - face circulator ccw | |
ConstHalfedgeLoopIter | chl_begin (HalfedgeHandle _heh) const |
const halfedge circulator | |
ConstHalfedgeLoopCWIter | chl_cwbegin (HalfedgeHandle _heh) const |
const halfedge circulator cw | |
ConstHalfedgeLoopCCWIter | chl_ccwbegin (HalfedgeHandle _heh) const |
const halfedge circulator ccw | |
VertexVertexIter | vv_end (VertexHandle _vh) |
vertex - vertex circulator | |
VertexVertexCWIter | vv_cwend (VertexHandle _vh) |
vertex - vertex circulator cw | |
VertexVertexCCWIter | vv_ccwend (VertexHandle _vh) |
vertex - vertex circulator ccw | |
VertexIHalfedgeIter | vih_end (VertexHandle _vh) |
vertex - incoming halfedge circulator | |
VertexIHalfedgeCWIter | vih_cwend (VertexHandle _vh) |
vertex - incoming halfedge circulator cw | |
VertexIHalfedgeCCWIter | vih_ccwend (VertexHandle _vh) |
vertex - incoming halfedge circulator ccw | |
VertexOHalfedgeIter | voh_end (VertexHandle _vh) |
vertex - outgoing halfedge circulator | |
VertexOHalfedgeCWIter | voh_cwend (VertexHandle _vh) |
vertex - outgoing halfedge circulator cw | |
VertexOHalfedgeCCWIter | voh_ccwend (VertexHandle _vh) |
vertex - outgoing halfedge circulator ccw | |
VertexEdgeIter | ve_end (VertexHandle _vh) |
vertex - edge circulator | |
VertexEdgeCWIter | ve_cwend (VertexHandle _vh) |
vertex - edge circulator cw | |
VertexEdgeCCWIter | ve_ccwend (VertexHandle _vh) |
vertex - edge circulator ccw | |
VertexFaceIter | vf_end (VertexHandle _vh) |
vertex - face circulator | |
VertexFaceCWIter | vf_cwend (VertexHandle _vh) |
vertex - face circulator cw | |
VertexFaceCCWIter | vf_ccwend (VertexHandle _vh) |
vertex - face circulator ccw | |
ConstVertexVertexIter | cvv_end (VertexHandle _vh) const |
const vertex circulator | |
ConstVertexVertexCWIter | cvv_cwend (VertexHandle _vh) const |
const vertex circulator cw | |
ConstVertexVertexCCWIter | cvv_ccwend (VertexHandle _vh) const |
const vertex circulator ccw | |
ConstVertexIHalfedgeIter | cvih_end (VertexHandle _vh) const |
const vertex - incoming halfedge circulator | |
ConstVertexIHalfedgeCWIter | cvih_cwend (VertexHandle _vh) const |
const vertex - incoming halfedge circulator cw | |
ConstVertexIHalfedgeCCWIter | cvih_ccwend (VertexHandle _vh) const |
const vertex - incoming halfedge circulator ccw | |
ConstVertexOHalfedgeIter | cvoh_end (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator | |
ConstVertexOHalfedgeCWIter | cvoh_cwend (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator cw | |
ConstVertexOHalfedgeCCWIter | cvoh_ccwend (VertexHandle _vh) const |
const vertex - outgoing halfedge circulator ccw | |
ConstVertexEdgeIter | cve_end (VertexHandle _vh) const |
const vertex - edge circulator | |
ConstVertexEdgeCWIter | cve_cwend (VertexHandle _vh) const |
const vertex - edge circulator cw | |
ConstVertexEdgeCCWIter | cve_ccwend (VertexHandle _vh) const |
const vertex - edge circulator ccw | |
ConstVertexFaceIter | cvf_end (VertexHandle _vh) const |
const vertex - face circulator | |
ConstVertexFaceCWIter | cvf_cwend (VertexHandle _vh) const |
const vertex - face circulator cw | |
ConstVertexFaceCCWIter | cvf_ccwend (VertexHandle _vh) const |
const vertex - face circulator ccw | |
FaceVertexIter | fv_end (FaceHandle _fh) |
face - vertex circulator | |
FaceVertexCWIter | fv_cwend (FaceHandle _fh) |
face - vertex circulator cw | |
FaceVertexCCWIter | fv_ccwend (FaceHandle _fh) |
face - vertex circulator ccw | |
FaceHalfedgeIter | fh_end (FaceHandle _fh) |
face - halfedge circulator | |
FaceHalfedgeCWIter | fh_cwend (FaceHandle _fh) |
face - halfedge circulator cw | |
FaceHalfedgeCCWIter | fh_ccwend (FaceHandle _fh) |
face - halfedge circulator ccw | |
FaceEdgeIter | fe_end (FaceHandle _fh) |
face - edge circulator | |
FaceEdgeCWIter | fe_cwend (FaceHandle _fh) |
face - edge circulator cw | |
FaceEdgeCCWIter | fe_ccwend (FaceHandle _fh) |
face - edge circulator ccw | |
FaceFaceIter | ff_end (FaceHandle _fh) |
face - face circulator | |
FaceFaceCWIter | ff_cwend (FaceHandle _fh) |
face - face circulator cw | |
FaceFaceCCWIter | ff_ccwend (FaceHandle _fh) |
face - face circulator ccw | |
HalfedgeLoopIter | hl_end (HalfedgeHandle _heh) |
face - face circulator | |
HalfedgeLoopCWIter | hl_cwend (HalfedgeHandle _heh) |
face - face circulator cw | |
HalfedgeLoopCCWIter | hl_ccwend (HalfedgeHandle _heh) |
face - face circulator ccw | |
ConstFaceVertexIter | cfv_end (FaceHandle _fh) const |
const face - vertex circulator | |
ConstFaceVertexCWIter | cfv_cwend (FaceHandle _fh) const |
const face - vertex circulator cw | |
ConstFaceVertexCCWIter | cfv_ccwend (FaceHandle _fh) const |
const face - vertex circulator ccw | |
ConstFaceHalfedgeIter | cfh_end (FaceHandle _fh) const |
const face - halfedge circulator | |
ConstFaceHalfedgeCWIter | cfh_cwend (FaceHandle _fh) const |
const face - halfedge circulator cw | |
ConstFaceHalfedgeCCWIter | cfh_ccwend (FaceHandle _fh) const |
const face - halfedge circulator ccw | |
ConstFaceEdgeIter | cfe_end (FaceHandle _fh) const |
const face - edge circulator | |
ConstFaceEdgeCWIter | cfe_cwend (FaceHandle _fh) const |
const face - edge circulator cw | |
ConstFaceEdgeCCWIter | cfe_ccwend (FaceHandle _fh) const |
const face - edge circulator ccw | |
ConstFaceFaceIter | cff_end (FaceHandle _fh) const |
const face - face circulator | |
ConstFaceFaceCWIter | cff_cwend (FaceHandle _fh) const |
const face - face circulator | |
ConstFaceFaceCCWIter | cff_ccwend (FaceHandle _fh) const |
const face - face circulator | |
ConstHalfedgeLoopIter | chl_end (HalfedgeHandle _heh) const |
const face - face circulator | |
ConstHalfedgeLoopCWIter | chl_cwend (HalfedgeHandle _heh) const |
const face - face circulator cw | |
ConstHalfedgeLoopCCWIter | chl_ccwend (HalfedgeHandle _heh) const |
const face - face circulator ccw | |
bool | is_boundary (HalfedgeHandle _heh) const |
Check if the halfedge is at the boundary. More... | |
bool | is_boundary (EdgeHandle _eh) const |
Is the edge a boundary edge? More... | |
bool | is_boundary (VertexHandle _vh) const |
Is vertex _vh a boundary vertex ? More... | |
bool | is_boundary (FaceHandle _fh, bool _check_vertex=false) const |
Check if face is at the boundary. More... | |
bool | is_manifold (VertexHandle _vh) const |
Is (the mesh at) vertex _vh two-manifold ? More... | |
const Vertex & | deref (VertexHandle _h) const |
Get item from handle. | |
Vertex & | deref (VertexHandle _h) |
Get item from handle. | |
const Halfedge & | deref (HalfedgeHandle _h) const |
Get item from handle. | |
Halfedge & | deref (HalfedgeHandle _h) |
Get item from handle. | |
const Edge & | deref (EdgeHandle _h) const |
Get item from handle. | |
Edge & | deref (EdgeHandle _h) |
Get item from handle. | |
const Face & | deref (FaceHandle _h) const |
Get item from handle. | |
Face & | deref (FaceHandle _h) |
Get item from handle. | |
ConstVertexRangeSkipping | vertices () const |
ConstVertexRange | all_vertices () const |
ConstHalfedgeRangeSkipping | halfedges () const |
ConstHalfedgeRange | all_halfedges () const |
ConstEdgeRangeSkipping | edges () const |
ConstEdgeRange | all_edges () const |
ConstFaceRangeSkipping | faces () const |
ConstFaceRange | all_faces () const |
ConstVertexVertexRange | vv_range (VertexHandle _vh) const |
ConstVertexIHalfedgeRange | vih_range (VertexHandle _vh) const |
ConstVertexOHalfedgeRange | voh_range (VertexHandle _vh) const |
ConstVertexEdgeRange | ve_range (VertexHandle _vh) const |
ConstVertexFaceRange | vf_range (VertexHandle _vh) const |
ConstFaceVertexRange | fv_range (FaceHandle _fh) const |
ConstFaceHalfedgeRange | fh_range (FaceHandle _fh) const |
ConstFaceEdgeRange | fe_range (FaceHandle _fh) const |
ConstFaceFaceRange | ff_range (FaceHandle _fh) const |
Public Member Functions inherited from OpenMesh::ArrayKernel | |
void | assign_connectivity (const ArrayKernel &_other) |
VertexHandle | handle (const Vertex &_v) const |
HalfedgeHandle | handle (const Halfedge &_he) const |
EdgeHandle | handle (const Edge &_e) const |
FaceHandle | handle (const Face &_f) const |
bool | is_valid_handle (VertexHandle _vh) const |
checks handle validity - useful for debugging | |
bool | is_valid_handle (HalfedgeHandle _heh) const |
checks handle validity - useful for debugging | |
bool | is_valid_handle (EdgeHandle _eh) const |
checks handle validity - useful for debugging | |
bool | is_valid_handle (FaceHandle _fh) const |
checks handle validity - useful for debugging | |
const Vertex & | vertex (VertexHandle _vh) const |
Vertex & | vertex (VertexHandle _vh) |
const Halfedge & | halfedge (HalfedgeHandle _heh) const |
Halfedge & | halfedge (HalfedgeHandle _heh) |
const Edge & | edge (EdgeHandle _eh) const |
Edge & | edge (EdgeHandle _eh) |
const Face & | face (FaceHandle _fh) const |
Face & | face (FaceHandle _fh) |
VertexHandle | vertex_handle (unsigned int _i) const |
HalfedgeHandle | halfedge_handle (unsigned int _i) const |
EdgeHandle | edge_handle (unsigned int _i) const |
FaceHandle | face_handle (unsigned int _i) const |
VertexHandle | new_vertex () |
Add a new vertex. More... | |
VertexHandle | new_vertex_dirty () |
HalfedgeHandle | new_edge (VertexHandle _start_vh, VertexHandle _end_vh) |
FaceHandle | new_face () |
FaceHandle | new_face (const Face &_f) |
void | resize (size_t _n_vertices, size_t _n_edges, size_t _n_faces) |
void | reserve (size_t _n_vertices, size_t _n_edges, size_t _n_faces) |
void | garbage_collection (bool _v=true, bool _e=true, bool _f=true) |
garbage collection More... | |
template<typename std_API_Container_VHandlePointer , typename std_API_Container_HHandlePointer , typename std_API_Container_FHandlePointer > | |
void | garbage_collection (std_API_Container_VHandlePointer &vh_to_update, std_API_Container_HHandlePointer &hh_to_update, std_API_Container_FHandlePointer &fh_to_update, bool _v=true, bool _e=true, bool _f=true) |
garbage collection with handle tracking More... | |
void | clear () |
Does the same as clean() and in addition erases all properties. | |
void | clean () |
Remove all vertices, edges and faces and deallocates their memory. More... | |
void | clean_keep_reservation () |
Remove all vertices, edges and faces but keep memory allocated. More... | |
size_t | n_vertices () const |
size_t | n_halfedges () const |
size_t | n_edges () const |
size_t | n_faces () const |
bool | vertices_empty () const |
bool | halfedges_empty () const |
bool | edges_empty () const |
bool | faces_empty () const |
HalfedgeHandle | halfedge_handle (VertexHandle _vh) const |
void | set_halfedge_handle (VertexHandle _vh, HalfedgeHandle _heh) |
bool | is_isolated (VertexHandle _vh) const |
void | set_isolated (VertexHandle _vh) |
unsigned int | delete_isolated_vertices () |
VertexHandle | to_vertex_handle (HalfedgeHandle _heh) const |
VertexHandle | from_vertex_handle (HalfedgeHandle _heh) const |
void | set_vertex_handle (HalfedgeHandle _heh, VertexHandle _vh) |
FaceHandle | face_handle (HalfedgeHandle _heh) const |
void | set_face_handle (HalfedgeHandle _heh, FaceHandle _fh) |
void | set_boundary (HalfedgeHandle _heh) |
bool | is_boundary (HalfedgeHandle _heh) const |
Is halfedge _heh a boundary halfedge (is its face handle invalid) ? | |
HalfedgeHandle | next_halfedge_handle (HalfedgeHandle _heh) const |
void | set_next_halfedge_handle (HalfedgeHandle _heh, HalfedgeHandle _nheh) |
void | set_prev_halfedge_handle (HalfedgeHandle _heh, HalfedgeHandle _pheh) |
void | set_prev_halfedge_handle (HalfedgeHandle _heh, HalfedgeHandle _pheh, GenProg::TrueType) |
void | set_prev_halfedge_handle (HalfedgeHandle, HalfedgeHandle, GenProg::FalseType) |
HalfedgeHandle | prev_halfedge_handle (HalfedgeHandle _heh) const |
HalfedgeHandle | prev_halfedge_handle (HalfedgeHandle _heh, GenProg::TrueType) const |
HalfedgeHandle | prev_halfedge_handle (HalfedgeHandle _heh, GenProg::FalseType) const |
HalfedgeHandle | opposite_halfedge_handle (HalfedgeHandle _heh) const |
HalfedgeHandle | ccw_rotated_halfedge_handle (HalfedgeHandle _heh) const |
HalfedgeHandle | cw_rotated_halfedge_handle (HalfedgeHandle _heh) const |
HalfedgeHandle | halfedge_handle (EdgeHandle _eh, unsigned int _i) const |
EdgeHandle | edge_handle (HalfedgeHandle _heh) const |
HalfedgeHandle | halfedge_handle (FaceHandle _fh) const |
void | set_halfedge_handle (FaceHandle _fh, HalfedgeHandle _heh) |
const StatusInfo & | status (VertexHandle _vh) const |
Status Query API. | |
StatusInfo & | status (VertexHandle _vh) |
void | reset_status () |
const StatusInfo & | status (HalfedgeHandle _hh) const |
StatusInfo & | status (HalfedgeHandle _hh) |
const StatusInfo & | status (EdgeHandle _eh) const |
StatusInfo & | status (EdgeHandle _eh) |
const StatusInfo & | status (FaceHandle _fh) const |
StatusInfo & | status (FaceHandle _fh) |
bool | has_vertex_status () const |
bool | has_halfedge_status () const |
bool | has_edge_status () const |
bool | has_face_status () const |
VertexStatusPropertyHandle | vertex_status_pph () const |
HalfedgeStatusPropertyHandle | halfedge_status_pph () const |
EdgeStatusPropertyHandle | edge_status_pph () const |
FaceStatusPropertyHandle | face_status_pph () const |
VertexStatusPropertyHandle | status_pph (VertexHandle) const |
status property by handle | |
HalfedgeStatusPropertyHandle | status_pph (HalfedgeHandle) const |
EdgeStatusPropertyHandle | status_pph (EdgeHandle) const |
FaceStatusPropertyHandle | status_pph (FaceHandle) const |
void | request_vertex_status () |
Status Request API. | |
void | request_halfedge_status () |
void | request_edge_status () |
void | request_face_status () |
void | release_vertex_status () |
Status Release API. | |
void | release_halfedge_status () |
void | release_edge_status () |
void | release_face_status () |
Public Member Functions inherited from OpenMesh::BaseKernel | |
template<class T > | |
void | copy_property (VPropHandleT< T > &_ph, VertexHandle _vh_from, VertexHandle _vh_to) |
template<class T > | |
void | copy_property (HPropHandleT< T > _ph, HalfedgeHandle _hh_from, HalfedgeHandle _hh_to) |
template<class T > | |
void | copy_property (EPropHandleT< T > _ph, EdgeHandle _eh_from, EdgeHandle _eh_to) |
template<class T > | |
void | copy_property (FPropHandleT< T > _ph, FaceHandle _fh_from, FaceHandle _fh_to) |
void | copy_all_properties (VertexHandle _vh_from, VertexHandle _vh_to, bool _copyBuildIn=false) |
void | copy_all_properties (HalfedgeHandle _hh_from, HalfedgeHandle _hh_to, bool _copyBuildIn=false) |
void | copy_all_properties (EdgeHandle _eh_from, EdgeHandle _eh_to, bool _copyBuildIn=false) |
void | copy_all_properties (FaceHandle _fh_from, FaceHandle _fh_to, bool _copyBuildIn=false) |
void | copy_all_kernel_properties (const BaseKernel &_other) |
copy_all_kernel_properties uses the = operator to copy all properties from a given other BaseKernel. More... | |
size_t | n_vprops (void) const |
size_t | n_eprops (void) const |
size_t | n_hprops (void) const |
size_t | n_fprops (void) const |
size_t | n_mprops (void) const |
BaseProperty * | _get_vprop (const std::string &_name) |
BaseProperty * | _get_eprop (const std::string &_name) |
BaseProperty * | _get_hprop (const std::string &_name) |
BaseProperty * | _get_fprop (const std::string &_name) |
BaseProperty * | _get_mprop (const std::string &_name) |
const BaseProperty * | _get_vprop (const std::string &_name) const |
const BaseProperty * | _get_eprop (const std::string &_name) const |
const BaseProperty * | _get_hprop (const std::string &_name) const |
const BaseProperty * | _get_fprop (const std::string &_name) const |
const BaseProperty * | _get_mprop (const std::string &_name) const |
BaseProperty & | _vprop (size_t _idx) |
BaseProperty & | _eprop (size_t _idx) |
BaseProperty & | _hprop (size_t _idx) |
BaseProperty & | _fprop (size_t _idx) |
BaseProperty & | _mprop (size_t _idx) |
const BaseProperty & | _vprop (size_t _idx) const |
const BaseProperty & | _eprop (size_t _idx) const |
const BaseProperty & | _hprop (size_t _idx) const |
const BaseProperty & | _fprop (size_t _idx) const |
const BaseProperty & | _mprop (size_t _idx) const |
size_t | _add_vprop (BaseProperty *_bp) |
size_t | _add_eprop (BaseProperty *_bp) |
size_t | _add_hprop (BaseProperty *_bp) |
size_t | _add_fprop (BaseProperty *_bp) |
size_t | _add_mprop (BaseProperty *_bp) |
void | property_stats () const |
void | property_stats (std::ostream &_ostr) const |
void | vprop_stats (std::string &_string) const |
void | hprop_stats (std::string &_string) const |
void | eprop_stats (std::string &_string) const |
void | fprop_stats (std::string &_string) const |
void | mprop_stats (std::string &_string) const |
void | vprop_stats () const |
void | hprop_stats () const |
void | eprop_stats () const |
void | fprop_stats () const |
void | mprop_stats () const |
void | vprop_stats (std::ostream &_ostr) const |
void | hprop_stats (std::ostream &_ostr) const |
void | eprop_stats (std::ostream &_ostr) const |
void | fprop_stats (std::ostream &_ostr) const |
void | mprop_stats (std::ostream &_ostr) const |
prop_iterator | vprops_begin () |
prop_iterator | vprops_end () |
const_prop_iterator | vprops_begin () const |
const_prop_iterator | vprops_end () const |
prop_iterator | eprops_begin () |
prop_iterator | eprops_end () |
const_prop_iterator | eprops_begin () const |
const_prop_iterator | eprops_end () const |
prop_iterator | hprops_begin () |
prop_iterator | hprops_end () |
const_prop_iterator | hprops_begin () const |
const_prop_iterator | hprops_end () const |
prop_iterator | fprops_begin () |
prop_iterator | fprops_end () |
const_prop_iterator | fprops_begin () const |
const_prop_iterator | fprops_end () const |
prop_iterator | mprops_begin () |
prop_iterator | mprops_end () |
const_prop_iterator | mprops_begin () const |
const_prop_iterator | mprops_end () const |
template<class T > | |
void | add_property (VPropHandleT< T > &_ph, const std::string &_name="<vprop>") |
template<class T > | |
void | add_property (HPropHandleT< T > &_ph, const std::string &_name="<hprop>") |
template<class T > | |
void | add_property (EPropHandleT< T > &_ph, const std::string &_name="<eprop>") |
template<class T > | |
void | add_property (FPropHandleT< T > &_ph, const std::string &_name="<fprop>") |
template<class T > | |
void | add_property (MPropHandleT< T > &_ph, const std::string &_name="<mprop>") |
template<typename T > | |
void | remove_property (VPropHandleT< T > &_ph) |
template<typename T > | |
void | remove_property (HPropHandleT< T > &_ph) |
template<typename T > | |
void | remove_property (EPropHandleT< T > &_ph) |
template<typename T > | |
void | remove_property (FPropHandleT< T > &_ph) |
template<typename T > | |
void | remove_property (MPropHandleT< T > &_ph) |
template<class T > | |
bool | get_property_handle (VPropHandleT< T > &_ph, const std::string &_name) const |
template<class T > | |
bool | get_property_handle (HPropHandleT< T > &_ph, const std::string &_name) const |
template<class T > | |
bool | get_property_handle (EPropHandleT< T > &_ph, const std::string &_name) const |
template<class T > | |
bool | get_property_handle (FPropHandleT< T > &_ph, const std::string &_name) const |
template<class T > | |
bool | get_property_handle (MPropHandleT< T > &_ph, const std::string &_name) const |
template<class T > | |
PropertyT< T > & | property (VPropHandleT< T > _ph) |
template<class T > | |
const PropertyT< T > & | property (VPropHandleT< T > _ph) const |
template<class T > | |
PropertyT< T > & | property (HPropHandleT< T > _ph) |
template<class T > | |
const PropertyT< T > & | property (HPropHandleT< T > _ph) const |
template<class T > | |
PropertyT< T > & | property (EPropHandleT< T > _ph) |
template<class T > | |
const PropertyT< T > & | property (EPropHandleT< T > _ph) const |
template<class T > | |
PropertyT< T > & | property (FPropHandleT< T > _ph) |
template<class T > | |
const PropertyT< T > & | property (FPropHandleT< T > _ph) const |
template<class T > | |
PropertyT< T > & | mproperty (MPropHandleT< T > _ph) |
template<class T > | |
const PropertyT< T > & | mproperty (MPropHandleT< T > _ph) const |
template<class T > | |
VPropHandleT< T >::reference | property (VPropHandleT< T > _ph, VertexHandle _vh) |
template<class T > | |
VPropHandleT< T >::const_reference | property (VPropHandleT< T > _ph, VertexHandle _vh) const |
template<class T > | |
HPropHandleT< T >::reference | property (HPropHandleT< T > _ph, HalfedgeHandle _hh) |
template<class T > | |
HPropHandleT< T >::const_reference | property (HPropHandleT< T > _ph, HalfedgeHandle _hh) const |
template<class T > | |
EPropHandleT< T >::reference | property (EPropHandleT< T > _ph, EdgeHandle _eh) |
template<class T > | |
EPropHandleT< T >::const_reference | property (EPropHandleT< T > _ph, EdgeHandle _eh) const |
template<class T > | |
FPropHandleT< T >::reference | property (FPropHandleT< T > _ph, FaceHandle _fh) |
template<class T > | |
FPropHandleT< T >::const_reference | property (FPropHandleT< T > _ph, FaceHandle _fh) const |
template<class T > | |
MPropHandleT< T >::reference | property (MPropHandleT< T > _ph) |
template<class T > | |
MPropHandleT< T >::const_reference | property (MPropHandleT< T > _ph) const |
Static Public Member Functions | |
static bool | is_triangles () |
Static Public Member Functions inherited from OpenMesh::PolyConnectivity | |
static bool | is_triangles () |
Static Public Member Functions inherited from OpenMesh::ArrayKernel | |
static HalfedgeHandle | s_halfedge_handle (EdgeHandle _eh, unsigned int _i) |
static EdgeHandle | s_edge_handle (HalfedgeHandle _heh) |
Private Member Functions | |
HalfedgeHandle | insert_loop (HalfedgeHandle _hh) |
Helper for vertex split. | |
HalfedgeHandle | insert_edge (VertexHandle _vh, HalfedgeHandle _h0, HalfedgeHandle _h1) |
Helper for vertex split. | |
Connectivity Class for Triangle Meshes.
Definition at line 53 of file TriConnectivity.hh.
TriConnectivity::FaceHandle OpenMesh::TriConnectivity::add_face | ( | const VertexHandle * | _vhandles, |
size_t | _vhs_size | ||
) |
Add a face with arbitrary valence to the triangle mesh.
Override OpenMesh::Mesh::PolyMeshT::add_face(). Faces that aren't triangles will be triangulated and added. In this case an invalid face handle will be returned.
face is triangle -> ok
face is not a triangle -> triangulate
Definition at line 53 of file TriConnectivity.cc.
FaceHandle OpenMesh::TriConnectivity::add_face | ( | const std::vector< VertexHandle > & | _vhandles | ) |
Add a face with arbitrary valence to the triangle mesh.
Override OpenMesh::Mesh::PolyMeshT::add_face(). Faces that aren't triangles will be triangulated and added. In this case an invalid face handle will be returned.
Definition at line 87 of file TriConnectivity.cc.
FaceHandle OpenMesh::TriConnectivity::add_face | ( | VertexHandle | _vh0, |
VertexHandle | _vh1, | ||
VertexHandle | _vh2 | ||
) |
Add a face to the mesh (triangle)
This function adds a triangle to the mesh. The triangle is passed directly to the underlying PolyConnectivity as we don't explicitly need to triangulate something.
_vh0 | VertexHandle 1 |
_vh1 | VertexHandle 2 |
_vh2 | VertexHandle 3 |
Definition at line 95 of file TriConnectivity.cc.
|
inline |
assign_connectivity() methods. See ArrayKernel::assign_connectivity() for more details. When the source connectivity is not triangles, in addition "fan" connectivity triangulation is performed
Definition at line 66 of file TriConnectivity.hh.
void OpenMesh::TriConnectivity::flip | ( | EdgeHandle | _eh | ) |
Flip edge _eh. Check for topological correctness first using is_flip_ok().
Definition at line 335 of file TriConnectivity.cc.
bool OpenMesh::TriConnectivity::is_collapse_ok | ( | HalfedgeHandle | _heh | ) |
Returns whether collapsing halfedge _heh is ok or would lead to topological inconsistencies.
Definition at line 103 of file TriConnectivity.cc.
|
inline |
Returns the opposite vertex to the opposite halfedge of _heh in the face referenced by it returns InvalidVertexHandle if the opposite halfedge is boundary
Definition at line 126 of file TriConnectivity.hh.
|
inline |
Returns the opposite vertex to the halfedge _heh in the face referenced by _heh returns InvalidVertexHandle if the _heh is boundary
Definition at line 117 of file TriConnectivity.hh.
void OpenMesh::TriConnectivity::split | ( | EdgeHandle | _eh, |
VertexHandle | _vh | ||
) |
Edge split (= 2-to-4 split)
The function will introduce two new faces ( non-boundary case) or one additional face (if edge is boundary)
_eh | Edge handle that should be split |
_vh | Vertex handle that will be inserted at the edge |
Definition at line 387 of file TriConnectivity.cc.
|
inline |
Face split (= 1-to-3) split, calls corresponding PolyMeshT function).
_fh | Face handle that should be split |
_vh | Vertex handle that will be inserted at the face |
Definition at line 219 of file TriConnectivity.hh.
void OpenMesh::TriConnectivity::split_copy | ( | EdgeHandle | _eh, |
VertexHandle | _vh | ||
) |
Edge split (= 2-to-4 split)
The function will introduce two new faces ( non-boundary case) or one additional face (if edge is boundary)
_eh | Edge handle that should be split |
_vh | Vertex handle that will be inserted at the edge |
Definition at line 484 of file TriConnectivity.cc.
|
inline |
Face split (= 1-to-3) split, calls corresponding PolyMeshT function).
_fh | Face handle that should be split |
_vh | Vertex handle that will be inserted at the face |
Definition at line 227 of file TriConnectivity.hh.
|
inline |
Edge split (= 2-to-4 split)
The function will introduce two new faces ( non-boundary case) or one additional face (if edge is boundary)
_eh | Edge handle that should be split |
_vh | Vertex handle that will be inserted at the edge |
Definition at line 180 of file TriConnectivity.hh.
|
inline |
Edge split (= 2-to-4 split)
The function will introduce two new faces ( non-boundary case) or one additional face (if edge is boundary)
_eh | Edge handle that should be split |
_vh | Vertex handle that will be inserted at the edge |
Definition at line 212 of file TriConnectivity.hh.