17#ifndef QGSCOORDINATETRANSFORM_H
18#define QGSCOORDINATETRANSFORM_H
27#include <QExplicitlySharedDataPointer>
30using namespace Qt::StringLiterals;
32class QgsCoordinateTransformPrivate;
622 SIP_PYOBJECT __repr__();
624 QString str = u
"<QgsCoordinateTransform: %1 to %2>"_s.arg( sipCpp->sourceCrs().isValid() ? sipCpp->sourceCrs().authid() : u
"NULL"_s,
625 sipCpp->destinationCrs().isValid() ? sipCpp->destinationCrs().authid() : u
"NULL"_s );
626 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
666 const std::function<
void(
729 static void removeFromCacheObjectsBelongingToCurrentThread(
void *pj_context );
732 mutable QExplicitlySharedDataPointer<QgsCoordinateTransformPrivate> d;
738 bool mHasContext =
false;
741 mutable QString mLastError;
742 bool mIgnoreImpossible =
false;
743 bool mBallparkTransformsAreAppropriate =
false;
744 bool mDisableFallbackHandler =
false;
745 mutable bool mFallbackOperationOccurred =
false;
752 static QReadWriteLock sCacheLock;
762 static bool sDisableCache;
774 QString mySummary( u
"\n%%%%%%%%%%%%%%%%%%%%%%%%\nCoordinate Transform def begins:"_s );
775 mySummary +=
"\n\tInitialized? : "_L1;
791 mySummary +=
"\n\tShort Circuit? : ";
801 mySummary +=
"\n\tSource Spatial Ref Sys : ";
808 mySummary +=
"Undefined";
811 mySummary +=
"\n\tDest Spatial Ref Sys : ";
814 mySummary << r.destCRS();
818 mySummary +=
"Undefined";
822 mySummary +=
"\nCoordinate Transform def ends \n%%%%%%%%%%%%%%%%%%%%%%%%\n"_L1;
823 return os << mySummary.toLocal8Bit().data() << std::endl;
QFlags< CoordinateTransformationFlag > CoordinateTransformationFlags
Coordinate transformation flags.
TransformDirection
Indicates the direction (forward or inverse) of a transform.
@ Forward
Forward transform (from source to destination).
Represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
Custom exception class for Coordinate Reference System related exceptions.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
A rectangle specified with double values.
A 3D vector (similar to QVector3D) with the difference that it uses double precision instead of singl...
#define SIP_THROW(name,...)
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)