OpenMesh

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

- Class List
- Class Hierarchy
- Class Members

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

Circulator. More...

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

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

## Public Types

typedef Mesh::HalfedgeHandle | HalfedgeHandle
typedef Mesh::Vertex | value_type
typedef Mesh::VertexHandle | value_handle
typedef std::bidirectional_iterator_tag | iterator_category
typedef std::ptrdiff_t | difference_type
typedef const Mesh & | mesh_ref
typedef const Mesh * | mesh_ptr
typedef const Mesh::Vertex & | reference
typedef const Mesh::Vertex * | pointer

## Public Member Functions

| ConstVertexVertexIterT ()
| Default constructor.
| ConstVertexVertexIterT (mesh_ref _mesh, typename Mesh::VertexHandle _start, bool _end=false)
| Construct with mesh and a typename Mesh::VertexHandle.
| ConstVertexVertexIterT (mesh_ref _mesh, HalfedgeHandle _heh, bool _end=false)
| Construct with mesh and start halfedge.
| ConstVertexVertexIterT (const ConstVertexVertexIterT &_rhs)
| Copy constructor.
ConstVertexVertexIterT & | operator= (const ConstVertexVertexIterT< Mesh > &_rhs)
| Assignment operator.
| ConstVertexVertexIterT (const VertexVertexIterT< Mesh > &_rhs)
| construct from non-const circulator type
ConstVertexVertexIterT & | operator= (const VertexVertexIterT< Mesh > &_rhs)
| assign from non-const circulator
bool | operator== (const ConstVertexVertexIterT &_rhs) const
| Equal ?
bool | operator!= (const ConstVertexVertexIterT &_rhs) const
| Not equal ?
ConstVertexVertexIterT & | operator++ ()
| Pre-Increment (next cw target)
ConstVertexVertexIterT & | operator-- ()
| Pre-Decrement (next ccw target)
HalfedgeHandle | current_halfedge_handle () const
| Get the current halfedge.
Mesh::VertexHandle | handle () const
| Return the handle of the current target.
| operator typename Mesh::VertexHandle () 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_

## Detailed Description

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

Circulator.

## Member Function Documentation

template<class Mesh>

HalfedgeHandle OpenMesh::Iterators::ConstVertexVertexIterT< 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::ConstVertexVertexIterT< 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