26 #ifndef __TERRALIB_GEOMETRY_INTERNAL_GEOMETRICTRANSFORMATION_H 
   27 #define __TERRALIB_GEOMETRY_INTERNAL_GEOMETRICTRANSFORMATION_H 
   37 #include <boost/noncopyable.hpp> 
   70         virtual const std::string& getName() 
const = 0;
 
   79         virtual bool isValid(
const GTParameters& params) 
const = 0;
 
   88           return isValid(m_internalParameters);
 
  107           return m_internalParameters;
 
  123                                double& pt2Y) 
const = 0;
 
  138           assert(isValid(m_internalParameters));
 
  140           directMap(m_internalParameters, pt1X, pt1Y, pt2X, pt2Y);
 
  152           directMap(params, pt1.
x, pt1.
y, pt2.
x, pt2.
y);
 
  163           assert(isValid(m_internalParameters));
 
  165           directMap(m_internalParameters, pt1.
x, pt1.
y, pt2.
x, pt2.
y);
 
  181                                 double& pt1Y) 
const = 0;
 
  196           assert(isValid(m_internalParameters));
 
  198           inverseMap(m_internalParameters, pt2X, pt2Y, pt1X, pt1Y);
 
  210           inverseMap(params, pt2.
x, pt2.
y, pt1.
x, pt1.
y);
 
  221           assert(isValid(m_internalParameters));
 
  223           inverseMap(m_internalParameters, pt2.
x, pt2.
y, pt1.
x, pt1.
y);
 
  233         double getMaxDirectMappingError(
const GTParameters& params) 
const;
 
  242           return getMaxDirectMappingError(m_internalParameters);
 
  252         double getMaxInverseMappingError(
const GTParameters& params) 
const;
 
  261           return getMaxInverseMappingError( m_internalParameters );
 
  273         double getDirectMapRMSE( 
const std::vector< GTParameters::TiePoint >& tiePoints, 
 
  285           return getDirectMapRMSE( params.
m_tiePoints, params );
 
  297           return getDirectMapRMSE( tiePoints, m_internalParameters );
 
  307           return getDirectMapRMSE( m_internalParameters );
 
  319         double getInverseMapRMSE( 
const std::vector< GTParameters::TiePoint >& tiePoints,
 
  331           return getInverseMapRMSE( params.
m_tiePoints, params );
 
  343           return getInverseMapRMSE( tiePoints, m_internalParameters );
 
  353           return getInverseMapRMSE( m_internalParameters );
 
  376           return getDirectMappingError( tiePoint, m_internalParameters );
 
  399           return getInverseMappingError( tiePoint, m_internalParameters );
 
  407         virtual unsigned int getMinRequiredTiePoints() 
const = 0;
 
  428         virtual bool computeParameters( 
GTParameters& params ) 
const = 0;
 
  438 #endif  // __TERRALIB_GEOMETRY_INTERNAL_GEOMETRICTRANSFORMATION_H 
std::vector< TiePoint > m_tiePoints
Tie points. 
 
2D Geometric transformation parameters. 
 
An utility struct for representing 2D coordinates. 
 
std::pair< Coord2D, Coord2D > TiePoint
Tie point type definition. 
 
2D Geometric transformation tie-points filter (outliers remotion). 
 
#define TEGEOMEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
2D Geometric transformation parameters. 
 
Configuration flags for the Vector Geometry Model of TerraLib.