10 #ifndef __TERRALIB_MNT_INTERNAL_CALCULATEGRID_H
11 #define __TERRALIB_MNT_INTERNAL_CALCULATEGRID_H
17 #include "../../dataaccess/dataset/DataSet.h"
18 #include "../../dataaccess/dataset/DataSetType.h"
19 #include "../../dataaccess/datasource/DataSource.h"
21 #include "../../raster/Raster.h"
22 #include "../../sam.h"
29 #define mitasovaMINPOINTS 50
30 #define mitasovaTENSION 40.
31 #define mitasovaSMOOTH 0.100000
60 std::string inDsetName,
61 std::auto_ptr<te::da::DataSetType> inDsetType);
66 void setOutput(std::map<std::string, std::string> &dsinfo);
74 void setParams(
const std::string &attr,
double resx,
double resy,
Interpolator gt,
double rad,
int pow);
77 void setSRID(
int srid);
82 std::auto_ptr<te::rst::Raster> Initialize(
bool spline,
unsigned int &nro_neighb,
double &rx1,
double &ry2,
unsigned int &outputWidth,
unsigned int &outputHeight);
92 void Interpolation(
te::gm::PointZ& pg, std::vector<te::gm::PointZ>& points, std::vector<double>& distq);
98 double Interpwq(
te::gm::PointZ& pg, std::vector<te::gm::PointZ>& points, std::vector<double>& distq);
105 double Interpwqz(
te::gm::PointZ& pg, std::vector<te::gm::PointZ>& points, std::vector<double>& distq);
112 bool GenerateGridSplineGrass();
119 bool GenerateGridSplineMitasova();
147 std::vector<std::pair<te::gm::Coord2D, te::gm::PointZ> >
m_dataset;
double m_nodatavalue
no data value
boost::shared_ptr< DataSource > DataSourcePtr
int m_smoothM
smooth factor used
#define TEMNTEXPORT
You can use this macro in order to export/import classes and functions from this module.
A class that represents a two dimensional K-d Tree (2-d Tree) that store data-elements into the leafs...
int m_srid
Attribute with spatial reference information.
te::da::DataSourcePtr m_inDsrc
Interpolator m_inter
selected interpolation method
std::string m_attrZ
Attribute used to calculate grid.
KD_ADAPTATIVE_TREE * m_adaptativeTree
A point with z-coordinate value.
An Envelope defines a 2D rectangular region.
An abstract class for raster data strucutures.
te::sam::kdtree::AdaptativeIndex< KD_ADAPTATIVE_NODE > KD_ADAPTATIVE_TREE
std::auto_ptr< te::da::DataSetType > m_inDsetType
te::gm::Envelope m_env
Attribute used to restrict the area to generate the raster.
std::vector< std::pair< te::gm::Coord2D, te::gm::PointZ > > m_dataset
int m_tension
the tension spline factor considered in the spline fitting process
std::map< std::string, std::string > m_dsinfo
A class that represents an Kd-tree node.
double m_resy
grid resolution in X and Y
te::sam::kdtree::AdaptativeNode< te::gm::Coord2D, std::vector< te::gm::PointZ >, te::gm::PointZ > KD_ADAPTATIVE_NODE
double m_tolerance
tolerance used to simplify lines