OpenMesh

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
OpenMesh::Iterators::VertexEdgeIterT< Mesh > Class Template Reference

Circulator. More...

`#include <OpenMesh/Mesh/Iterators/CirculatorsT.hh>`

Collaboration diagram for OpenMesh::Iterators::VertexEdgeIterT< Mesh >:
[legend]

## Public Types
typedef Mesh::HalfedgeHandle | HalfedgeHandle
typedef Mesh::Edge | value_type
typedef Mesh::EdgeHandle | value_handle
typedef std::bidirectional_iterator_tag | iterator_category
typedef std::ptrdiff_t | difference_type
typedef Mesh & | mesh_ref
typedef Mesh * | mesh_ptr
typedef Mesh::Edge & | reference
typedef Mesh::Edge * | pointer

## Public Member Functions
| VertexEdgeIterT ()
| Default constructor.
| VertexEdgeIterT (mesh_ref _mesh, typename Mesh::VertexHandle _start, bool _end=false)
| Construct with mesh and a typename Mesh::VertexHandle.
| VertexEdgeIterT (mesh_ref _mesh, HalfedgeHandle _heh, bool _end=false)
| Construct with mesh and start halfedge.
| VertexEdgeIterT (const VertexEdgeIterT &_rhs)
| Copy constructor.
VertexEdgeIterT & | operator= (const VertexEdgeIterT< Mesh > &_rhs)
| Assignment operator.
bool | operator== (const VertexEdgeIterT &_rhs) const
| Equal ?
bool | operator!= (const VertexEdgeIterT &_rhs) const
| Not equal ?
VertexEdgeIterT & | operator++ ()
| Pre-Increment (next cw target)
VertexEdgeIterT & | operator-- ()
| Pre-Decrement (next ccw target)
HalfedgeHandle | current_halfedge_handle () const
| Get the current halfedge.
Mesh::EdgeHandle | handle () const
| Return the handle of the current target.
| operator typename Mesh::EdgeHandle () const
| Cast to the handle of the current target.
reference | operator* () const
| Return a reference to the current target.
pointer | operator-> () const
| Return a pointer to the current target.
| operator bool () const
| Returns whether the circulator is still valid.

## Protected Attributes
mesh_ptr | mesh_
HalfedgeHandle | start_
HalfedgeHandle | heh_
int | lap_counter_

## Friends
class | ConstVertexEdgeIterT< Mesh >

## Detailed Description

### template<class Mesh>
class OpenMesh::Iterators::VertexEdgeIterT< Mesh >

Circulator.

## Member Function Documentation

template<class Mesh>

HalfedgeHandle OpenMesh::Iterators::VertexEdgeIterT< Mesh >::current_halfedge_handle | ( |  | ) | const
| inline

Get the current halfedge.

There are `Vertex*Iters` and `Face*Iters`. For both the current state is defined by the current halfedge. This is what this method returns.

template<class Mesh>

OpenMesh::Iterators::VertexEdgeIterT< Mesh >::operator bool | ( |  | ) | const
| inline

Returns whether the circulator is still valid.

After one complete round around a vertex/face the circulator becomes invalid, i.e. this function will return `false`. Nevertheless you can continue circulating. This method just tells you whether you have completed the first round.

The documentation for this class was generated from the following file:

- OpenMesh/Core/Mesh/CirculatorsT.hh