282 operator QVariant()
const
284 return QVariant::fromValue( *
this );
293 static QList< long > validSrsIds();
409 Q_DECL_DEPRECATED
bool createFromId(
long id, CrsType type = PostgisCrsId )
SIP_DEPRECATED;
426 bool createFromOgcWmsCrs(
const QString &crs );
437 Q_DECL_DEPRECATED
bool createFromSrid(
long srid )
SIP_DEPRECATED;
454 bool createFromWkt(
const QString &wkt );
471 bool createFromSrsId(
long srsId );
499 Q_DECL_DEPRECATED
bool createFromProj4(
const QString &projString )
SIP_DEPRECATED;
531 bool createFromProj(
const QString &projString,
bool identify =
true );
533 bool createFromProj(
const QString &projString );
555 bool createFromString(
const QString &definition );
577 bool createFromUserInput(
const QString &definition );
592 bool isValid() const;
629 bool readXml( const QDomNode &node );
637 bool writeXml( QDomNode &node, QDomDocument &doc ) const;
666 long postgisSrid() const;
680 QString authid() const;
689 QString description() const;
704 QString userFriendlyIdentifier(
Qgis::CrsIdentifierType type =
Qgis::CrsIdentifierType::MediumString ) const;
712 QString projectionAcronym() const;
720 QString ellipsoidAcronym() const;
733 QString toWkt(
Qgis::CrsWktVariant variant =
Qgis::CrsWktVariant::Wkt1Gdal,
bool multiline = false,
int indentationWidth = 4 ) const;
761 QString toProj() const;
774 std::
string toJsonString(
bool multiline = false,
int indentationWidth = 4, const QString &schema = QString() ) const;
781 Qgis::CrsType type() const;
788 bool isDeprecated() const;
794 bool isGeographic() const;
804 bool isDynamic() const;
823 QString celestialBodyName() const;
848 void setCoordinateEpoch(
double epoch );
873 double coordinateEpoch() const;
903 bool hasAxisInverted() const;
911 QList< Qgis::CrsAxisDirection > axisOrdering()
const;
913 SIP_PYOBJECT axisOrdering() const
SIP_TYPEHINT( List[
Qgis.CrsAxisDirection] );
917 const QList<
Qgis::CrsAxisDirection > cppRes = sipCpp->axisOrdering();
919 PyObject *l = PyList_New( cppRes.size() );
925 for (
int i = 0; i < cppRes.size(); ++i )
927 PyObject *eobj = sipConvertFromEnum(
static_cast<int>( cppRes.at( i ) ),
928 sipType_Qgis_CrsAxisDirection );
935 PyList_SetItem( l, i, eobj );
964 QgsRectangle bounds()
const;
972 QString toOgcUri()
const;
980 QString toOgcUrn()
const;
1000 void updateDefinition();
1005 void setValidationHint(
const QString &html );
1010 QString validationHint()
const;
1018 static int syncDatabase();
1066 QgsCoordinateReferenceSystem toGeographicCrs()
const;
1079 QgsCoordinateReferenceSystem toGeocentricCrs()
const;
1091 QgsCoordinateReferenceSystem horizontalCrs()
const;
1105 QgsCoordinateReferenceSystem verticalCrs()
const;
1113 bool hasVerticalAxis()
const;
1116 QString geographicCrsAuthId()
const;
1119 SIP_PYOBJECT __repr__();
1121 const QString str = sipCpp->isValid() ? u
"<QgsCoordinateReferenceSystem: %1%2>"_s.arg( !sipCpp->authid().isEmpty() ? sipCpp->authid() : sipCpp->toWkt(
Qgis::CrsWktVariant::Preferred ),
1122 std::isfinite( sipCpp->coordinateEpoch() ) ? u
" @ %1"_s.arg( sipCpp->coordinateEpoch() ) : QString() )
1123 : u
"<QgsCoordinateReferenceSystem: invalid>"_s;
1124 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
1139 PJ *projObject()
const;
1151 static QgsCoordinateReferenceSystem fromProjObject(
PJ *
object );
1161 bool createFromProjObject(
PJ *
object );
1170 Q_DECL_DEPRECATED
static QStringList recentProjections()
SIP_DEPRECATED;
1177 Q_DECL_DEPRECATED static QList< QgsCoordinateReferenceSystem > recentCoordinateReferenceSystems()
SIP_DEPRECATED;
1184 Q_DECL_DEPRECATED static
void pushRecentCoordinateReferenceSystem( const QgsCoordinateReferenceSystem &crs )
SIP_DEPRECATED;
1191 Q_DECL_DEPRECATED static
void removeRecentCoordinateReferenceSystem( const QgsCoordinateReferenceSystem &crs )
SIP_DEPRECATED;
1198 Q_DECL_DEPRECATED static
void clearRecentCoordinateReferenceSystems()
SIP_DEPRECATED;
1211 static void invalidateCache(
bool disableCache =
false );
1220 static void invalidateCache(
bool disableCache
SIP_PYARGREMOVE =
false );
1233 static QString projFromSrsId(
int srsId );
1240 void setProjString(
const QString &projString );
1245 bool setWktString(
const QString &wkt );
1253 typedef QMap<QString, QString> RecordMap;
1262 RecordMap getRecord(
const QString &sql );
1268 static int openDatabase(
const QString &path, sqlite3_database_unique_ptr &database,
bool readonly =
true );
1274 static long getRecordCount();
1281 bool loadFromAuthCode(
const QString &auth,
const QString &code );
1286 static QList< long > userSrsIds();
1295 long matchToUserCrs()
const;
1301 bool loadFromDatabase(
const QString &db,
const QString &expression,
const QString &value );
1303 bool createFromWktInternal(
const QString &wkt,
const QString &description );
1305 QExplicitlySharedDataPointer<QgsCoordinateReferenceSystemPrivate> d;
1307 QString mValidationHint;
1314 static void removeFromCacheObjectsBelongingToCurrentThread(
PJ_CONTEXT *pj_context );
1321 static bool sDisableSrIdCache;
1322 static bool sDisableOgcCache;
1323 static bool sDisableProjCache;
1324 static bool sDisableWktCache;
1325 static bool sDisableSrsIdCache;
1326 static bool sDisableStringCache;
1329 static const QHash< QString, QgsCoordinateReferenceSystem > &stringCache();
1330 static const QHash< QString, QgsCoordinateReferenceSystem > &projCache();
1331 static const QHash< QString, QgsCoordinateReferenceSystem > &ogcCache();
1332 static const QHash< QString, QgsCoordinateReferenceSystem > &wktCache();
1333 static const QHash< long, QgsCoordinateReferenceSystem > &srsIdCache();
1334 static const QHash< long, QgsCoordinateReferenceSystem > &srIdCache();
1343 bool createFromPostgisSrid(
const long id );