QGIS/python/core/qgscoordinatetransformcontext.sip.in

194 lines
6.0 KiB
Plaintext

/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgscoordinatetransformcontext.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsCoordinateTransformContext
{
%Docstring
Contains information about the context in which a coordinate transform is executed.
The context stores various information regarding which coordinate transforms should
be used when transforming points from a source to destination coordinate reference
system.
The highest priority transforms are those set using addSourceDestinationDatumTransform()
and which the transform has a matching source to destination CRS pair.
Failing this, if the source CRS has a matching transform specified by
addSourceDatumTransform() then this datum transform will be used. The same logic
applies for destination CRS transforms set using addDestinationDatumTransform().
.. note::
QgsCoordinateTransformContext objects are thread safe for read and write.
.. note::
QgsCoordinateTransformContext objects are implicitly shared.
.. seealso:: :py:class:`QgsDatumTransform`
.. seealso:: :py:class:`QgsCoordinateTransform`
.. versionadded:: 3.0
%End
%TypeHeaderCode
#include "qgscoordinatetransformcontext.h"
%End
public:
QgsCoordinateTransformContext();
%Docstring
Constructor for QgsCoordinateTransformContext.
%End
~QgsCoordinateTransformContext();
QgsCoordinateTransformContext( const QgsCoordinateTransformContext &rhs );
%Docstring
Copy constructor
%End
void clear();
%Docstring
Clears all stored transform information from the context.
%End
QMap< QPair< QString, QString>, QgsDatumTransform::TransformPair > sourceDestinationDatumTransforms() const;
%Docstring
Returns the stored mapping for source to destination CRS pairs to associated datum transforms to use.
The map keys will be :py:func:`QgsCoordinateReferenceSystems.authid()`s.
If either the source transform ID or destination transform ID is -1, then no datum transform is
required for transformations for that source or destination.
.. warning::
This method should not be used to calculate the corresponding datum transforms
to use for a coordinate transform. Instead, always use calculateDatumTransforms()
to determine this.
.. seealso:: :py:func:`addSourceDestinationDatumTransform`
%End
bool addSourceDestinationDatumTransform( const QgsCoordinateReferenceSystem &sourceCrs,
const QgsCoordinateReferenceSystem &destinationCrs,
int sourceTransformId,
int destinationTransformId );
%Docstring
Adds a new ``sourceTransform`` and ``destinationTransform`` to use when projecting coordinates
from the the specified ``sourceCrs`` to the specified ``destinationCrs``.
If either ``sourceTransformId`` or ``destinationTransformId`` is -1, then no datum transform is
required for transformations for that source or destination.
Returns true if the new transform pair was added successfully.
.. note::
Transforms set using this method will override any specific source or destination
transforms set by addSourceDatumTransform() or addDestinationDatumTransform().
.. seealso:: :py:func:`sourceDestinationDatumTransforms`
.. seealso:: :py:func:`removeSourceDestinationDatumTransform`
%End
void removeSourceDestinationDatumTransform( const QgsCoordinateReferenceSystem &sourceCrs,
const QgsCoordinateReferenceSystem &destinationCrs );
%Docstring
Removes the source to destination datum transform pair for the specified ``sourceCrs`` and
``destinationCrs``.
.. seealso:: :py:func:`addSourceDestinationDatumTransform`
%End
bool hasTransform( const QgsCoordinateReferenceSystem &source,
const QgsCoordinateReferenceSystem &destination ) const;
%Docstring
Returns true if the context has a valid datum transform to use
when transforming from the specified ``source`` CRS to ``destination`` CRS.
.. note::
source and destination are reversible.
%End
QgsDatumTransform::TransformPair calculateDatumTransforms( const QgsCoordinateReferenceSystem &source,
const QgsCoordinateReferenceSystem &destination ) const;
%Docstring
Returns the pair of source and destination datum transforms to use
for a transform from the specified ``source`` CRS to ``destination`` CRS.
Returns an ID of -1 if a datum transform should not be used for the source or
destination.
.. note::
source and destination are reversible.
%End
bool readXml( const QDomElement &element, const QgsReadWriteContext &context, QStringList &missingTransforms /Out/ );
%Docstring
Reads the context's state from a DOM ``element``.
Returns false if transforms stored in the XML are not available. In this case ``missingTransforms`` will be
filled with missing datum transform strings.
.. seealso:: :py:func:`writeXml`
%End
void writeXml( QDomElement &element, const QgsReadWriteContext &context ) const;
%Docstring
Writes the context's state to a DOM ``element``.
.. seealso:: :py:func:`readXml`
%End
void readSettings();
%Docstring
Reads the context's state from application settings.
.. seealso:: :py:func:`readSettings`
%End
void writeSettings();
%Docstring
Write the context's state to application settings.
.. seealso:: :py:func:`writeSettings`
%End
};
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgscoordinatetransformcontext.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/