This class implements the strategy to iterate with spatial restriction, the iteration occurs inside a polygon. More...
#include <PositionIterator.h>
  
 Public Member Functions | |
| std::vector< te::gm::LineString * > | decompose (te::gm::Geometry *g) | 
| Decomponse one geometry collection in a vector of basic components (line, point).  More... | |
| unsigned int | getColumn () const | 
| Returns the current column in iterator.  More... | |
| unsigned int | getRow () const | 
| Returns the current row in iterator.  More... | |
| virtual bool | operator!= (const AbstractPositionIterator &rhs) const | 
| Difference operator.  More... | |
| bool | operator!= (const PolygonIterator< T > &rhs) const | 
| const std::vector< T > | operator* () const | 
| Returns a vector of the values in current position (column, row) from iterator.  More... | |
| void | operator++ () | 
| Advances to the next position.  More... | |
| void | operator-- () | 
| Returns to the previous position.  More... | |
| PolygonIterator & | operator= (const PolygonIterator &rhs) | 
| T | operator[] (const unsigned int i) const | 
| Returns the value in current position (column, row, band) from iterator.  More... | |
| PolygonIterator () | |
| PolygonIterator (const te::rst::Raster *r, const te::gm::Polygon *p) | |
| Constructor.  More... | |
| PolygonIterator (const PolygonIterator &rhs) | |
| Copy constructor.  More... | |
| void | setEnd () | 
| Sets the iterator position to the end of the current band.  More... | |
| void | setNextLine (bool updatecurrline=true) | 
| ~PolygonIterator () | |
Static Public Member Functions | |
| static PolygonIterator | begin (const te::rst::Raster *r, const te::gm::Polygon *p) | 
| Returns an iterator referring to the first value of the band.  More... | |
| static PolygonIterator | end (const te::rst::Raster *r, const te::gm::Polygon *p) | 
| Returns an iterator referring to after the end of the iterator.  More... | |
Protected Attributes | |
| int | m_actualintersection | 
| The actual line of the iterator.  More... | |
| int | m_column | 
| The current column of the iterator.  More... | |
| te::gm::Line * | m_currline | 
| The current line in the iterator.  More... | |
| int | m_endingcolumn | 
| The column (in current line) to finalize the iteration.  More... | |
| int | m_endingrow | 
| The ending row of the iteration.  More... | |
| std::vector< te::gm::LineString * > | m_intersections | 
| The points or lines of the intersection between the geometry and the current line.  More... | |
| int | m_maxcolumns | 
| The number of columns in band.  More... | |
| int | m_maxrows | 
| The number of rows in band.  More... | |
| int | m_nintersections | 
| The number number of intersected lines in current line of the iterator.  More... | |
| const te::gm::Polygon * | m_polygon | 
| The spatial restriction to be applied in the iterator.  More... | |
| const te::rst::Raster * | m_raster | 
| The band from where to get the values.  More... | |
| int | m_row | 
| The current row of the iterator.  More... | |
| int | m_startingcolumn | 
| The starting column (in current line) to initialize the iteration.  More... | |
| int | m_startingrow | 
| The starting row of the iteration.  More... | |
This class implements the strategy to iterate with spatial restriction, the iteration occurs inside a polygon.
Definition at line 143 of file PositionIterator.h.
| te::rst::PolygonIterator< T >::PolygonIterator | ( | ) | 
Definition at line 377 of file PositionIterator.h.
| te::rst::PolygonIterator< T >::PolygonIterator | ( | const te::rst::Raster * | r, | 
| const te::gm::Polygon * | p | ||
| ) | 
Constructor.
| b | The band to iterate. | 
| p | The polygon from where the iteration will navigate. | 
Definition at line 395 of file PositionIterator.h.
References te::rst::Grid::geoToGrid(), te::rst::Raster::getGrid(), te::gm::Envelope::getLowerLeft(), te::gm::Geometry::getMBR(), te::gm::Geometry::getSRID(), te::gm::Envelope::getUpperRight(), te::gm::LineStringType, te::rst::PolygonIterator< T >::m_column, te::rst::PolygonIterator< T >::m_currline, te::rst::PolygonIterator< T >::m_endingcolumn, te::rst::PolygonIterator< T >::m_endingrow, te::rst::PolygonIterator< T >::m_maxcolumns, te::rst::PolygonIterator< T >::m_maxrows, te::rst::PolygonIterator< T >::m_polygon, te::rst::PolygonIterator< T >::m_row, te::rst::PolygonIterator< T >::m_startingcolumn, te::rst::PolygonIterator< T >::m_startingrow, te::rst::PolygonIterator< T >::setNextLine(), te::gm::Coord2D::x, and te::gm::Coord2D::y.
| te::rst::PolygonIterator< T >::PolygonIterator | ( | const PolygonIterator< T > & | rhs | ) | 
Copy constructor.
| rhs | The right-hand-side copy used to copy from. | 
Definition at line 443 of file PositionIterator.h.
| te::rst::PolygonIterator< T >::~PolygonIterator | ( | ) | 
Definition at line 461 of file PositionIterator.h.
      
  | 
  static | 
Returns an iterator referring to the first value of the band.
Definition at line 739 of file PositionIterator.h.
Referenced by te::rp::GeoMosaic::execute(), te::rp::ClassifierISOSegStrategy::execute(), te::rp::TiePointsMosaic::execute(), te::st::RasterCoverage::getDouble(), te::st::RasterCoverage::getInt(), te::rp::RasterAttributes::getMeans(), te::st::RasterCoverage::getValue(), te::rp::RasterAttributes::getValuesFromBand(), te::rp::RasterAttributes::getValuesFromRaster(), and te::rst::Raster::rasterize().
| std::vector< te::gm::LineString * > te::rst::PolygonIterator< T >::decompose | ( | te::gm::Geometry * | g | ) | 
Decomponse one geometry collection in a vector of basic components (line, point).
| g | The input geometry collection. | 
Definition at line 466 of file PositionIterator.h.
References te::gm::GeometryCollectionType, te::gm::GeometryCollection::getGeometryN(), te::gm::Geometry::getGeomTypeId(), te::gm::GeometryCollection::getNumGeometries(), te::gm::Geometry::getSRID(), te::gm::Point::getX(), te::gm::Point::getY(), te::gm::LineStringType, te::gm::MultiLineStringType, te::gm::MultiPointType, te::gm::PointType, te::gm::LineString::setX(), te::gm::LineString::setY(), and te::gm::Geometry::toString().
      
  | 
  static | 
Returns an iterator referring to after the end of the iterator.
Definition at line 744 of file PositionIterator.h.
References te::rst::PolygonIterator< T >::setEnd().
Referenced by te::rp::GeoMosaic::execute(), te::rp::ClassifierISOSegStrategy::execute(), te::rp::TiePointsMosaic::execute(), te::st::RasterCoverage::getDouble(), te::st::RasterCoverage::getInt(), te::rp::RasterAttributes::getMeans(), te::st::RasterCoverage::getValue(), te::rp::RasterAttributes::getValuesFromBand(), te::rp::RasterAttributes::getValuesFromRaster(), and te::rst::Raster::rasterize().
      
  | 
  virtual | 
Returns the current column in iterator.
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 667 of file PositionIterator.h.
Referenced by te::rp::GeoMosaic::execute(), te::rp::TiePointsMosaic::execute(), te::rp::ClassifierISOSegStrategy::execute(), te::rp::RasterAttributes::getMeans(), te::rp::RasterAttributes::getValuesFromRaster(), and te::rst::Raster::rasterize().
      
  | 
  virtual | 
Returns the current row in iterator.
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 662 of file PositionIterator.h.
Referenced by te::rp::GeoMosaic::execute(), te::rp::TiePointsMosaic::execute(), te::rp::ClassifierISOSegStrategy::execute(), te::rp::RasterAttributes::getMeans(), te::rp::RasterAttributes::getValuesFromRaster(), and te::rst::Raster::rasterize().
      
  | 
  virtualinherited | 
Difference operator.
| rhs | The right-hand side to compare. | 
Definition at line 371 of file PositionIterator.h.
References te::rst::AbstractPositionIterator< T >::m_raster.
| bool te::rst::PolygonIterator< T >::operator!= | ( | const PolygonIterator< T > & | rhs | ) | const | 
Definition at line 753 of file PositionIterator.h.
References te::rst::PolygonIterator< T >::m_column, and te::rst::PolygonIterator< T >::m_row.
      
  | 
  virtual | 
Returns a vector of the values in current position (column, row) from iterator.
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 639 of file PositionIterator.h.
      
  | 
  virtual | 
Advances to the next position.
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 672 of file PositionIterator.h.
      
  | 
  virtual | 
Returns to the previous position.
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 696 of file PositionIterator.h.
| te::rst::PolygonIterator< T > & te::rst::PolygonIterator< T >::operator= | ( | const PolygonIterator< T > & | rhs | ) | 
Definition at line 720 of file PositionIterator.h.
References te::rst::PolygonIterator< T >::m_polygon, and te::rst::AbstractPositionIterator< T >::operator=().
      
  | 
  virtual | 
Returns the value in current position (column, row, band) from iterator.
| i | The band index. | 
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 653 of file PositionIterator.h.
      
  | 
  virtual | 
Sets the iterator position to the end of the current band.
| b | The band to retrieve the end information. | 
Implements te::rst::AbstractPositionIterator< T >.
Definition at line 732 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::end().
| void te::rst::PolygonIterator< T >::setNextLine | ( | bool | updatecurrline = true | ) | 
Definition at line 551 of file PositionIterator.h.
References te::gm::GeometryCollection::add(), te::gm::LineString::getEndPoint(), te::gm::Geometry::getGeomTypeId(), te::gm::Geometry::getSRID(), te::gm::LineString::getStartPoint(), te::gm::Point::getX(), te::gm::Point::getY(), te::gm::Geometry::intersection(), and te::gm::Geometry::isEmpty().
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The actual line of the iterator.
Definition at line 214 of file PositionIterator.h.
      
  | 
  protected | 
The current column of the iterator.
Definition at line 206 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::operator!=(), and te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The current line in the iterator.
Definition at line 205 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The column (in current line) to finalize the iteration.
Definition at line 209 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The ending row of the iteration.
Definition at line 211 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The points or lines of the intersection between the geometry and the current line.
Definition at line 204 of file PositionIterator.h.
      
  | 
  protected | 
The number of columns in band.
Definition at line 212 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The number of rows in band.
Definition at line 213 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The number number of intersected lines in current line of the iterator.
Definition at line 215 of file PositionIterator.h.
      
  | 
  protected | 
The spatial restriction to be applied in the iterator.
Definition at line 203 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::operator=(), and te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protectedinherited | 
The band from where to get the values.
Definition at line 131 of file PositionIterator.h.
Referenced by te::rst::LineIterator< T >::LineIterator(), te::rst::AbstractPositionIterator< T >::operator!=(), te::rst::AbstractPositionIterator< T >::operator=(), and te::rst::PointSetIterator< T >::PointSetIterator().
      
  | 
  protected | 
The current row of the iterator.
Definition at line 207 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::operator!=(), and te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The starting column (in current line) to initialize the iteration.
Definition at line 208 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().
      
  | 
  protected | 
The starting row of the iteration.
Definition at line 210 of file PositionIterator.h.
Referenced by te::rst::PolygonIterator< T >::PolygonIterator().