-
-
Notifications
You must be signed in to change notification settings - Fork 3k
/
qgsgeometrycoordinatetransform.h
executable file
·72 lines (63 loc) · 2.67 KB
/
qgsgeometrycoordinatetransform.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/***************************************************************************
qgsgeometrycoordinatetransform.h
-------------------
begin : Dec 29, 2009
copyright : (C) 2009 by Diego Moreira And Luiz Motta
email : moreira.geo at gmail.com And motta.luiz at gmail.com
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
/* $Id: qgsgeometrycoordinatetransform.h 13377 2010-04-25 01:07:36Z jef $ */
#ifndef GEOMETRYCOORDINATETRANSFORM_H
#define GEOMETRYCOORDINATETRANSFORM_H
#include "qgsgeometry.h"
#include "qgsvectorlayer.h"
#include "qgscoordinatetransform.h"
/**
* \class QgsGeometryCoordinateTransform
* \brief Transform the coordinate reference system of the geometry
*/
class QgsGeometryCoordinateTransform
{
public:
/**
* \brief Constructor for a Geometry Coordinate Transform.
*
*/
QgsGeometryCoordinateTransform() {};
/**
* \brief Destructor
*/
~QgsGeometryCoordinateTransform();
/**
* \brief Sets the coordinate reference system the target and reference layer
* \param lyrTarget target layer.
* \param lyrReference reference layer.
*/
void setCoordinateTransform( QgsVectorLayer* lyrTarget, QgsVectorLayer* lyrReference );
/**
* \brief Transform the coordinates reference system of the geometry, if target have the different system of reference
* \param geom Geometry
*/
void transform( QgsGeometry *geom );
private:
/**
* \brief Transform the coordinates reference system of the geometry (use by transform)
* \param geom Geometry
*/
void setGeomTransform( QgsGeometry *geom );
/**
* \brief None transform the coordinates reference system of the geometry (use by transform)
* \param geom Geometry
*/
void setNoneGeomTransform( QgsGeometry *geom ) {};
QgsCoordinateTransform * mCoordTransform;
void ( QgsGeometryCoordinateTransform::* mFuncTransform )( QgsGeometry * );
};
#endif // GEOMETRYCOORDINATETRANSFORM_H