17 #ifndef QGSCOORDINATETRANSFORM_H 
   18 #define QGSCOORDINATETRANSFORM_H 
  131     QgsPoint transform( 
const QgsPoint p, TransformDirection direction = ForwardTransform ) 
const;
 
  141     QgsPoint transform( 
const double x, 
const double y, TransformDirection direction = ForwardTransform ) 
const;
 
  153     QgsRectangle transformBoundingBox( 
const QgsRectangle theRect, TransformDirection direction = ForwardTransform ) 
const;
 
  158     void transformInPlace( 
double& x, 
double& y, 
double &z, TransformDirection direction = ForwardTransform ) 
const;
 
  161     void transformInPlace( QVector<double>& x, QVector<double>& y, QVector<double>& z,
 
  162                            TransformDirection direction = ForwardTransform ) 
const;
 
  164     void transformPolygon( QPolygonF& poly, TransformDirection direction = ForwardTransform ) 
const;
 
  167     void transformInPlace( 
float& x, 
float& y, 
float& z, TransformDirection direction = ForwardTransform ) 
const;
 
  169     void transformInPlace( QVector<float>& x, QVector<float>& y, QVector<float>& z,
 
  170                            TransformDirection direction = ForwardTransform ) 
const;
 
  192     void transformCoords( 
const int &numPoint, 
double *x, 
double *y, 
double *z, TransformDirection direction = ForwardTransform ) 
const;
 
  214     void setDestCRSID( 
long theCRSID );
 
  220     static QString datumTransformString( 
int datumTransform );
 
  223     static bool datumTransformCrsInfo( 
int datumTransform, 
int& epsgNr, QString& srcProjection, QString& dstProjection, QString &remarks, QString &scope, 
bool &preferred, 
bool &deprecated );
 
  238     bool readXML( QDomNode & theNode );
 
  245     bool writeXML( QDomNode & theNode, QDomDocument & theDoc );
 
  249     void  invalidTransformInput() 
const;
 
  293     static QString stripDatumTransform( 
const QString& proj4 );
 
  294     static void searchDatumTransform( 
const QString& sql, QList< int >& transforms );
 
  296     void addNullGridShifts( QString& srcProjString, QString& destProjString );
 
  302   QString mySummary( 
"\n%%%%%%%%%%%%%%%%%%%%%%%%\nCoordinate Transform def begins:" );
 
  303   mySummary += 
"\n\tInitialised? : ";
 
  319   mySummary += 
"\n\tShort Circuit?  : " ;
 
  329   mySummary += 
"\n\tSource Spatial Ref Sys  : ";
 
  336     mySummary += 
"Undefined" ;
 
  339   mySummary += 
"\n\tDest Spatial Ref Sys  : " ;
 
  346     mySummary += 
"Undefined" ;
 
  350   mySummary += ( 
"\nCoordinate Transform def ends \n%%%%%%%%%%%%%%%%%%%%%%%%\n" );
 
  351   return os << mySummary.toLocal8Bit().data() << std::endl;
 
  355 #endif // QGSCOORDINATETRANSFORM_H