49 #include <OpenMesh/Core/Mesh/PolyConnectivity.hh>
50 #include <OpenMesh/Core/System/OpenMeshDLLMacros.hh>
59 struct SmartVertexHandle;
60 struct SmartHalfedgeHandle;
61 struct SmartEdgeHandle;
62 struct SmartFaceHandle;
107 uint valence()
const;
109 bool is_boundary()
const;
111 bool is_manifold()
const;
134 bool is_boundary()
const;
159 bool is_boundary()
const;
179 uint valence()
const;
181 bool is_boundary()
const;
205 template <
typename HandleT>
216 assert(
mesh() !=
nullptr);
232 assert(
mesh() !=
nullptr);
238 assert(
mesh() !=
nullptr);
244 assert(
mesh() !=
nullptr);
250 assert(
mesh() !=
nullptr);
256 assert(
mesh() !=
nullptr);
262 assert(
mesh() !=
nullptr);
268 assert(
mesh() !=
nullptr);
274 assert(
mesh() !=
nullptr);
280 assert(
mesh() !=
nullptr);
286 assert(
mesh() !=
nullptr);
292 assert(
mesh() !=
nullptr);
298 assert(
mesh() !=
nullptr);
339 assert(
mesh() !=
nullptr);
345 assert(
mesh() !=
nullptr);
351 assert(
mesh() !=
nullptr);
357 assert(
mesh() !=
nullptr);
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:59
SmartVertexHandle make_smart(VertexHandle _vh, const PolyConnectivity *_mesh)
Creats a SmartVertexHandle from a VertexHandle and a Mesh.
Definition: SmartHandles.hh:186
int idx() const
Get the underlying index of this handle.
Definition: Handles.hh:69
Handle for a vertex entity.
Definition: Handles.hh:121
Handle for a halfedge entity.
Definition: Handles.hh:128
Handle for a edge entity.
Definition: Handles.hh:135
Handle for a face entity.
Definition: Handles.hh:142
Generic class for iterator ranges.
Definition: PolyConnectivity_inline_impl.hh:92
Connectivity Class for polygonal meshes.
Definition: PolyConnectivity.hh:113
uint valence(VertexHandle _vh) const
Vertex valence.
Definition: PolyConnectivity.cc:1062
bool is_manifold(VertexHandle _vh) const
Is (the mesh at) vertex _vh two-manifold ?
Definition: PolyConnectivity.cc:84
bool is_boundary(HalfedgeHandle _heh) const
Check if the halfedge is at the boundary.
Definition: PolyConnectivity.hh:1302
Base class for all smart handle types.
Definition: SmartHandles.hh:69
const PolyConnectivity * mesh() const
Get the underlying mesh of this handle.
Definition: SmartHandles.hh:74
Smart version of VertexHandle contains a pointer to the corresponding mesh and allows easier access t...
Definition: SmartHandles.hh:85
SmartHalfedgeHandle halfedge() const
Returns an outgoing halfedge.
Definition: SmartHandles.hh:220
SmartHalfedgeHandle out() const
Returns an outgoing halfedge.
Definition: SmartHandles.hh:214
bool is_manifold() const
Returns true iff (the mesh at) the vertex is two-manifold ?
Definition: SmartHandles.hh:242
SmartHalfedgeHandle in() const
Returns an incoming halfedge.
Definition: SmartHandles.hh:225
uint valence() const
Returns valence of the vertex.
Definition: SmartHandles.hh:230
bool is_boundary() const
Returns true iff the vertex is incident to a boundary halfedge.
Definition: SmartHandles.hh:236
Definition: SmartHandles.hh:115
SmartFaceHandle face() const
Returns incident face of halfedge.
Definition: SmartHandles.hh:284
SmartVertexHandle from() const
Returns vertex at start of halfedge.
Definition: SmartHandles.hh:272
bool is_boundary() const
Returns true iff the halfedge is on the boundary (i.e. it has no corresponding face)
Definition: SmartHandles.hh:290
SmartHalfedgeHandle next() const
Returns next halfedge handle.
Definition: SmartHandles.hh:248
SmartHalfedgeHandle prev() const
Returns previous halfedge handle.
Definition: SmartHandles.hh:254
SmartEdgeHandle edge() const
Returns incident edge of halfedge.
Definition: SmartHandles.hh:278
SmartHalfedgeHandle opp() const
Returns opposite halfedge handle.
Definition: SmartHandles.hh:260
SmartVertexHandle to() const
Returns vertex pointed to by halfedge.
Definition: SmartHandles.hh:266
Definition: SmartHandles.hh:138
SmartVertexHandle v(unsigned int _i) const
Shorthand for vertex()
Definition: SmartHandles.hh:322
SmartVertexHandle v1() const
Shorthand for vertex(1)
Definition: SmartHandles.hh:332
SmartHalfedgeHandle h(unsigned int _i) const
Shorthand for halfedge()
Definition: SmartHandles.hh:302
SmartHalfedgeHandle h1() const
Shorthand for halfedge(1)
Definition: SmartHandles.hh:312
SmartVertexHandle vertex(unsigned int _i) const
Returns one of the two incident vertices of the edge.
Definition: SmartHandles.hh:317
SmartVertexHandle v0() const
Shorthand for vertex(0)
Definition: SmartHandles.hh:327
SmartHalfedgeHandle halfedge(unsigned int _i) const
Returns one of the two halfedges of the edge.
Definition: SmartHandles.hh:296
SmartHalfedgeHandle h0() const
Shorthand for halfedge(0)
Definition: SmartHandles.hh:307
bool is_boundary() const
Returns true iff the edge lies on the boundary (i.e. one of the halfedges is boundary)
Definition: SmartHandles.hh:337
Definition: SmartHandles.hh:163
uint valence() const
Returns the valence of the face.
Definition: SmartHandles.hh:349
bool is_boundary() const
Returns true iff the face lies at the boundary (i.e. one of the edges is boundary)
Definition: SmartHandles.hh:355
SmartHalfedgeHandle halfedge() const
Returns one of the halfedges of the face.
Definition: SmartHandles.hh:343
Definition: SmartHandles.hh:206