37 #ifndef VIGRA_CONTOURCIRCULATOR_HXX
38 #define VIGRA_CONTOURCIRCULATOR_HXX
40 #include "pixelneighborhood.hxx"
92 template <
class IMAGEITERATOR>
97 typedef typename IMAGEITERATOR::value_type label_type;
105 : neighborCirc_(circ),
141 label_(*in_the_region),
151 pos_ += neighborCirc_.
diff();
155 if(*neighborCirc_ == label_)
164 if(*neighborCirc_ == label_)
194 return neighborCirc_ == o.neighborCirc_;
201 return neighborCirc_ != o.neighborCirc_;
232 {
return neighborCirc_.
diff(); }
base_type center() const
Definition: pixelneighborhood.hxx:1263
IMAGEITERATOR outerPixel() const
Definition: contourcirculator.hxx:225
pointer operator->() const
Definition: contourcirculator.hxx:217
bool operator!=(CrackContourCirculator const &o) const
Definition: contourcirculator.hxx:199
Two dimensional difference vector.
Definition: diff2d.hxx:185
NeighborhoodCirculator & moveCenterToNeighbor()
Definition: pixelneighborhood.hxx:1201
Direction
Definition: pixelneighborhood.hxx:179
Two dimensional point or position.
Definition: diff2d.hxx:592
NeighborhoodCirculator & turnLeft()
Definition: pixelneighborhood.hxx:1165
CrackContourCirculator(IMAGEITERATOR const &in_the_region, vigra::FourNeighborCode::Direction dir=vigra::FourNeighborCode::West)
Definition: contourcirculator.hxx:138
bool operator==(CrackContourCirculator const &o) const
Definition: contourcirculator.hxx:192
Point2D const * pointer
Definition: contourcirculator.hxx:121
CrackContourCirculator operator++(int)
Definition: contourcirculator.hxx:183
base_type const & base() const
Definition: pixelneighborhood.hxx:1257
Point2D const & reference
Definition: contourcirculator.hxx:117
Circulator that walks around a given region.
Definition: contourcirculator.hxx:93
reference operator*() const
Definition: contourcirculator.hxx:212
CrackContourCirculator & operator++()
Definition: contourcirculator.hxx:149
Definition: pixelneighborhood.hxx:183
reference pos() const
Definition: contourcirculator.hxx:207
NeighborhoodCirculator & turnRight()
Definition: pixelneighborhood.hxx:1152
NEIGHBOROFFSETCIRCULATOR::value_type const & diff() const
Definition: pixelneighborhood.hxx:1281
forward_circulator_tag iterator_category
Definition: contourcirculator.hxx:125
Diff2D const & diff() const
Definition: contourcirculator.hxx:231
Encapsulation of direction management for the 8-neighborhood.
Definition: pixelneighborhood.hxx:420
Point2D value_type
Definition: contourcirculator.hxx:113