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::unique_ptr<te::da::DataSetType> inDsetType,
67 void setOutput(std::map<std::string, std::string> &dsinfo);
74 void setParams(
const std::string &attriso,
const std::string &attrpt,
double resx,
double resy,
Interpolator gt,
double rad,
int pow);
82 std::unique_ptr<te::rst::Raster>
Initialize(
bool spline,
unsigned int &nro_neighb,
double &rx1,
double &ry2,
unsigned int &outputWidth,
unsigned int &outputHeight);
155 std::vector<std::pair<te::gm::Coord2D, te::gm::Point> >
m_dataset;
te::sam::kdtree::AdaptativeIndex< KD_ADAPTATIVE_NODE > KD_ADAPTATIVE_TREE
te::sam::kdtree::AdaptativeNode< te::gm::Coord2D, std::vector< te::gm::Point >, te::gm::Point > KD_ADAPTATIVE_NODE
An Envelope defines a 2D rectangular region.
A point with x and y coordinate values.
te::da::DataSourcePtr m_inDsrc_sample
double Interpwqz(te::gm::Point &pg, std::vector< te::gm::Point > &points, std::vector< double > &distq)
Interpolates the z value of the pg point3d using an weighted average by quadrant and by z values....
int m_smoothM
smooth factor used
Interpolator m_inter
selected interpolation method
double m_nodatavalue
no data value
te::gm::Envelope m_env
Attribute used to restrict the area to generate the raster.
void setInput(te::da::DataSourcePtr inDsrc, std::string inDsetName, std::unique_ptr< te::da::DataSetType > inDsetType, InputType type)
It sets the Datasource that is being used to generate TIN.
std::string m_inDsetName_point
KD_ADAPTATIVE_TREE * m_adaptativeTree
std::unique_ptr< te::da::DataSetType > m_inDsetType_sample
int m_tension
the tension spline factor considered in the spline fitting process
bool GenerateGridSplineGrass()
Method to calculate a grid from a vector of samples using a Spline (GRASS) fitting algorithm.
void setParams(const std::string &attriso, const std::string &attrpt, double resx, double resy, Interpolator gt, double rad, int pow)
It sets the parameters that is being used to save TIN.
std::vector< std::pair< te::gm::Coord2D, te::gm::Point > > m_dataset
std::string m_atrZ_point
Attribute used to calculate grid.
void setEnvelope(te::gm::Envelope &env)
std::map< std::string, std::string > m_dsinfo
std::string m_inDsetName_sample
double m_max
Output DTM limits.
void Interpolation(te::gm::Point &pg, std::vector< te::gm::Point > &points, std::vector< double > &distq)
Interpolates the z value of the pg point3d. \ This method interpolates the z value of the pg point3d ...
CalculateGrid()
Default constructor.
double Interpwq(te::gm::Point &pg, std::vector< te::gm::Point > &points, std::vector< double > &distq)
Interpolates the z value of the pg point3d using an weighted average by quadrant. \ Implements the in...
int m_srid
Attribute with spatial reference information.
std::unique_ptr< te::rst::Raster > Initialize(bool spline, unsigned int &nro_neighb, double &rx1, double &ry2, unsigned int &outputWidth, unsigned int &outputHeight)
bool GenerateGridSplineMitasova()
Method to calculate a grid from a vector of samples using a Spline (Mitasova) fitting algorithm.
te::da::DataSourcePtr m_inDsrc_point
std::unique_ptr< te::da::DataSetType > m_inDsetType_point
std::string m_atrZ_sample
Attribute used to calculate grid.
double m_tolerance
tolerance used to simplify lines
void setOutput(std::map< std::string, std::string > &dsinfo)
It sets the Datasource that is being used to save TIN.
bool run()
Calculate GRID \ return true or false.
An abstract class for raster data strucutures.
A class that represents a two dimensional K-d Tree (2-d Tree) that store data-elements into the leafs...
A class that represents an Kd-tree node.
boost::shared_ptr< DataSource > DataSourcePtr
#define TEMNTEXPORT
You can use this macro in order to export/import classes and functions from this module.
Proxy configuration file for TerraView (see terraview_config.h).
Enumerations of XML module.