QGIS API Documentation
2.2.0-Valmiera
|
Cache coordinate transform by authid of source/dest transformation to avoid the overhead of initialisation for each redraw. More...
#include <qgscrscache.h>
Public Member Functions | |
~QgsCoordinateTransformCache () | |
const QgsCoordinateTransform * | transform (const QString &srcAuthId, const QString &destAuthId, int srcDatumTransform=-1, int destDatumTransform=-1) |
Returns coordinate transformation. | |
void | invalidateCrs (const QString &crsAuthId) |
Removes transformations where a changed crs is involved from the cache. |
Static Public Member Functions | |
static QgsCoordinateTransformCache * | instance () |
Private Attributes | |
QMultiHash< QPair< QString, QString > , QgsCoordinateTransform * > | mTransforms |
Static Private Attributes | |
static QgsCoordinateTransformCache * | mInstance |
Cache coordinate transform by authid of source/dest transformation to avoid the overhead of initialisation for each redraw.
Definition at line 28 of file qgscrscache.h.
QgsCoordinateTransformCache::~QgsCoordinateTransformCache | ( | ) |
Definition at line 28 of file qgscrscache.cpp.
References mTransforms.
|
static |
Definition at line 22 of file qgscrscache.cpp.
References mInstance.
Referenced by QgsRasterProjector::block(), QgsRasterProjector::calc(), transform(), and QgsMapRenderer::transformation().
void QgsCoordinateTransformCache::invalidateCrs | ( | const QString & | crsAuthId | ) |
Removes transformations where a changed crs is involved from the cache.
Definition at line 62 of file qgscrscache.cpp.
References mTransforms.
const QgsCoordinateTransform * QgsCoordinateTransformCache::transform | ( | const QString & | srcAuthId, |
const QString & | destAuthId, | ||
int | srcDatumTransform = -1 , |
||
int | destDatumTransform = -1 |
||
) |
Returns coordinate transformation.
Cache keeps ownership
srcAuthId | auth id string of source crs |
destAuthId | auth id string of dest crs |
srcDatumTransform | id of source's datum transform |
destDatumTransform | id of destinations's datum transform |
Definition at line 37 of file qgscrscache.cpp.
References QgsCoordinateTransform::initialise(), instance(), mTransforms, QgsCoordinateTransform::setDestinationDatumTransform(), and QgsCoordinateTransform::setSourceDatumTransform().
Referenced by QgsRasterProjector::block(), QgsRasterProjector::calc(), and QgsMapRenderer::transformation().
|
staticprivate |
Definition at line 44 of file qgscrscache.h.
Referenced by instance().
|
private |
Definition at line 45 of file qgscrscache.h.
Referenced by invalidateCrs(), transform(), and ~QgsCoordinateTransformCache().