All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
te::cellspace::CellularSpacesOperations Class Reference

This class provide cellular spaces operations. More...

#include <CellSpaceOperations.h>

Public Types

enum  CellSpaceType { CELLSPACE_POLYGONS, CELLSPACE_POINTS }
 

Public Member Functions

 CellularSpacesOperations ()
 
void createCellSpace (te::da::DataSourceInfoPtr outputSource, const std::string &name, te::map::AbstractLayerPtr layerBase, double resX, double resY, bool useMask, CellSpaceType type=CELLSPACE_POLYGONS)
 It create a Cellular Space. More...
 
void createCellSpace (te::da::DataSourceInfoPtr outputSource, const std::string &name, const double resX, const double resY, const te::gm::Envelope &env, const int srid, const CellSpaceType type=CELLSPACE_POLYGONS)
 It create a Cellular Space. More...
 
 ~CellularSpacesOperations ()
 

Private Member Functions

void addCell (te::mem::DataSet *ds, int col, int row, te::gm::Geometry *geom)
 Add a cell in the memory dataset. More...
 
te::da::DataSetTypecreateCellularDataSetType (const std::string &name, int srid, CellSpaceType type)
 Create the DataSetType of the cellular space. More...
 
te::sam::rtree::Index< size_t, 8 > * getRtree (te::map::AbstractLayerPtr layerBase)
 Get a RTree with the geometries envelopes of layer. More...
 

Detailed Description

This class provide cellular spaces operations.

Definition at line 66 of file CellSpaceOperations.h.

Member Enumeration Documentation

Enumerator
CELLSPACE_POLYGONS 

Polygons Type.

CELLSPACE_POINTS 

Points Type.

Definition at line 71 of file CellSpaceOperations.h.

Constructor & Destructor Documentation

te::cellspace::CellularSpacesOperations::CellularSpacesOperations ( )

Definition at line 44 of file CellSpaceOperations.cpp.

te::cellspace::CellularSpacesOperations::~CellularSpacesOperations ( )

Definition at line 48 of file CellSpaceOperations.cpp.

Member Function Documentation

void te::cellspace::CellularSpacesOperations::addCell ( te::mem::DataSet ds,
int  col,
int  row,
te::gm::Geometry geom 
)
private

Add a cell in the memory dataset.

Parameters
dsDataSet where the cell will be added.
colColumn number.
rowRow number.
geomGeometry that will be added.

Definition at line 180 of file CellSpaceOperations.cpp.

References te::mem::DataSet::add(), te::mem::DataSetItem::setGeometry(), te::mem::DataSetItem::setInt32(), and te::mem::DataSetItem::setString().

void te::cellspace::CellularSpacesOperations::createCellSpace ( te::da::DataSourceInfoPtr  outputSource,
const std::string &  name,
te::map::AbstractLayerPtr  layerBase,
double  resX,
double  resY,
bool  useMask,
CellSpaceType  type = CELLSPACE_POLYGONS 
)

It create a Cellular Space.

Parameters
nameName of the DataSet.
layerbaseLayer base for cellular space creation.
resXResolution X.
resYResolution Y.
useMaskIf will use poligons as mask.
typeCelluar space type (polygon, points or raster).

Definition at line 52 of file CellSpaceOperations.cpp.

References te::da::GetFirstSpatialPropertyPos(), te::gm::GetGeomFromEnvelope(), te::gm::Envelope::m_llx, te::gm::Envelope::m_lly, te::gm::Envelope::m_urx, te::gm::Envelope::m_ury, te::da::DataSourceFactory::make(), te::common::TaskProgress::pulse(), te::common::TaskProgress::setTotalSteps(), and te::common::TaskProgress::useTimer().

void te::cellspace::CellularSpacesOperations::createCellSpace ( te::da::DataSourceInfoPtr  outputSource,
const std::string &  name,
const double  resX,
const double  resY,
const te::gm::Envelope env,
const int  srid,
const CellSpaceType  type = CELLSPACE_POLYGONS 
)

It create a Cellular Space.

Parameters
nameName of the DataSet.
resXResolution X.
resYResolution Y.
envEnvelope base to creation.
sridSRID of the envelope.
typeCelluar space type (polygon, points or raster).

Definition at line 164 of file CellSpaceOperations.cpp.

te::da::DataSetType * te::cellspace::CellularSpacesOperations::createCellularDataSetType ( const std::string &  name,
int  srid,
CellSpaceType  type 
)
private

Create the DataSetType of the cellular space.

Parameters
nameDataSetType name.
sridDataSetType SRID.
typeCelluar space type (polygon, points or raster).
Returns
The DataSetType created.

Definition at line 217 of file CellSpaceOperations.cpp.

References te::da::DataSetType::add(), te::dt::INT32_TYPE, te::gm::PointType, te::gm::PolygonType, and te::da::PrimaryKey::setProperties().

te::sam::rtree::Index< size_t, 8 > * te::cellspace::CellularSpacesOperations::getRtree ( te::map::AbstractLayerPtr  layerBase)
private

Get a RTree with the geometries envelopes of layer.

Parameters
layerBaseLayer base.
Returns
The RTree created.

Definition at line 193 of file CellSpaceOperations.cpp.

References te::da::GetFirstSpatialPropertyPos(), and te::sam::rtree::Index< DATATYPE, MAXNODES, MINNODES >::insert().


The documentation for this class was generated from the following files: