26#ifndef __TERRALIB_RASTER_INTERNAL_VECTORIZER_H
27#define __TERRALIB_RASTER_INTERNAL_VECTORIZER_H
75 Vectorizer(
Raster* r, std::size_t b,
unsigned int mp = 0,
const bool noDataExclusion =
true );
105 bool run(std::vector<te::gm::Geometry*>& polygons, std::vector< double > *
const polygonsValues = 0 );
An utility struct for representing 2D coordinates.
LineString is a curve with linear interpolation between points.
A polygon container node class.
A LinearRing is a LineString that is both closed and simple.
An abstract class for raster data strucutures.
bool detectEdge(long segmentInitialCol, long segmentInitialRow, te::gm::LinearRing &outputLine)
Detects an edge of a cell in Raster.
unsigned long m_nLines
The number of lines.
unsigned int m_rasterBand
The raster band to be used.
void clear()
Clear all internally allocated resources.
Raster * m_rasterPtr
A pointer to the input image.
bool startingEdgeTest(const int &x, const int &y)
Tests if the current point is a edge start.
Vectorizer & operator=(const Vectorizer &rhs)
Assignment operator.
unsigned long m_nColumns
The number of columns.
Vectorizer(const Vectorizer &rhs)
Copy constructor.
double m_resY
Resolution Y.
unsigned int m_maxPolygons
The maximum allowed number of polygons to be created.
bool run(std::vector< te::gm::Geometry * > &polygons, std::vector< double > *const polygonsValues=0)
Returns true if current algorithm implementation runs ok, false otherwise.
Vectorizer(Raster *r, std::size_t b, unsigned int mp=0, const bool noDataExclusion=true)
Constructor.
double m_resX
Resolution X.
te::gm::Coord2D m_directions[8]
Directions vector.
double m_noDataValue
The used dummy value.
Namespace for the Raster module of TerraLib.
Enumerations for the Raster module.
An abstract class for raster data strucutures.
An utility struct for representing 2D coordinates.
#define TERASTEREXPORT
You can use this macro in order to export/import classes and functions from this module.