[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
Circulator that walks around a given location. More...
#include <vigra/pixelneighborhood.hxx>
Inherits NEIGHBORCODE.
Public Types | |
typedef int | difference_type |
typedef NEIGHBORCODE::Direction | Direction |
typedef value_type const & | index_reference |
typedef random_access_circulator_tag | iterator_category |
typedef value_type const * | pointer |
typedef value_type const & | reference |
typedef NEIGHBORCODE::difference_type | value_type |
Static Public Member Functions | |
static reference | diff (Direction dir) |
Circulator that walks around a given location.
The template parameter defines the kind of neighborhood used, e.g.
Since this circulator doesn't know about the pixels in any particular image, you usually don't use it directly but rather as a base class or helper for neighborhood circulators referring to a particular image (e.g. NeighborhoodCirculator)
#include <vigra/pixelneighborhood.hxx>
Namespace: vigra
return type of direction()
typedef NEIGHBORCODE::difference_type value_type |
the circulator's value type
typedef value_type const& reference |
the circulator's reference type (return type of *circ
)
typedef value_type const& index_reference |
the circulator's index reference type (return type of circ[n]
)
typedef value_type const* pointer |
the circulator's pointer type (return type of operator->
)
typedef int difference_type |
the circulator's difference type (argument type of circ[diff]
)
typedef random_access_circulator_tag iterator_category |
the circulator tag (random access iterator)
NeighborOffsetCirculator | ( | Direction | dir = NEIGHBORCODE::InitialDirection | ) |
Create circulator referring to the given direction.
NeighborOffsetCirculator & operator++ | ( | ) |
pre-increment
NeighborOffsetCirculator & operator-- | ( | ) |
pre-decrement
NeighborOffsetCirculator operator++ | ( | int | ) |
post-increment
NeighborOffsetCirculator operator-- | ( | int | ) |
post-decrement
NeighborOffsetCirculator & operator+= | ( | difference_type | d | ) |
add-assignment
NeighborOffsetCirculator & operator-= | ( | difference_type | d | ) |
subtract-assignment
NeighborOffsetCirculator operator+ | ( | difference_type | d | ) | const |
addition
NeighborOffsetCirculator operator- | ( | difference_type | d | ) | const |
subtraction
NeighborOffsetCirculator & turnRight | ( | ) |
Move to the direction that is 'right' relative to the current direction. This is equivalent to four_circulator–
and eight_circulator -= 2
respectively.
NeighborOffsetCirculator & turnLeft | ( | ) |
Move to the direction that is 'left' relative to the current direction. This is equivalent to four_circulator++
and eight_circulator += 2
respectively.
NeighborOffsetCirculator & turnRound | ( | ) |
Move to the opposite direction of the current direction. This is equivalent to four_circulator += 2
and eight_circulator += 4
respectively.
NeighborOffsetCirculator & turnTo | ( | Direction | d | ) |
Move to the given direction.
bool operator== | ( | NeighborOffsetCirculator< NEIGHBORCODE > const & | o | ) | const |
equality
bool operator!= | ( | NeighborOffsetCirculator< NEIGHBORCODE > const & | o | ) | const |
inequality
difference_type operator- | ( | NeighborOffsetCirculator< NEIGHBORCODE > const & | o | ) | const |
subtraction
index_reference operator[] | ( | difference_type | d | ) | const |
index
Get offset to given direction.
value_type relativeDiff | ( | difference_type | offset | ) | const |
Get relative distance from current neighbor to neighbor at given offset.
Check whether current direction is a diagonal one.
Get opposite bit of current direction.
Direction direction | ( | difference_type | offset | ) | const |
Get direction code at offset of current direction.
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |