QGIS API Documentation 3.99.0-Master (d270888f95f)
Loading...
Searching...
No Matches
qgsdatums.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsdatums.h
3 ------------------------
4 begin : May 2021
5 copyright : (C) 2021 Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17#ifndef QGSDATUMS_H
18#define QGSDATUMS_H
19
20#include "qgis_core.h"
21#include "qgis_sip.h"
22#include "qgsrectangle.h"
23
24#include <QList>
25#include <QString>
26
27using namespace Qt::StringLiterals;
28
36class CORE_EXPORT QgsDatumEnsembleMember
37{
38 public:
39
43 QString name() const { return mName; }
44
48 QString scope() const { return mScope; }
49
53 QString remarks() const { return mRemarks; }
54
58 QString authority() const { return mAuthority; }
59
63 QString code() const { return mCode; }
64
65#ifdef SIP_RUN
66 SIP_PYOBJECT __repr__();
67 % MethodCode
68 QString id;
69 if ( !sipCpp->code().isEmpty() )
70 id = u"%1 (%2:%3)"_s.arg( sipCpp->name(), sipCpp->authority(), sipCpp->code() );
71 else
72 id = sipCpp->name();
73 QString str = u"<QgsDatumEnsembleMember: %1>"_s.arg( id );
74 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
75 % End
76#endif
77
78 private:
79
80 QString mName;
81 QString mScope;
82 QString mRemarks;
83 QString mAuthority;
84 QString mCode;
85
87};
88
96class CORE_EXPORT QgsDatumEnsemble
97{
98 public:
99
104 bool isValid() const { return mValid; }
105
109 QString name() const { return mName; }
110
114 double accuracy() const { return mAccuracy; }
115
119 QString authority() const { return mAuthority; }
120
124 QString code() const { return mCode; }
125
129 QString scope() const { return mScope; }
130
134 QString remarks() const { return mRemarks; }
135
139 QList< QgsDatumEnsembleMember > members() const { return mMembers; }
140
141#ifdef SIP_RUN
142 SIP_PYOBJECT __repr__();
143 % MethodCode
144 QString str;
145 if ( !sipCpp->isValid() )
146 {
147 str = u"<QgsDatumEnsemble: invalid>"_s;
148 }
149 else
150 {
151 QString id;
152 if ( !sipCpp->code().isEmpty() )
153 id = u"%1 (%2:%3)"_s.arg( sipCpp->name(), sipCpp->authority(), sipCpp->code() );
154 else
155 id = sipCpp->name();
156 str = u"<QgsDatumEnsemble: %1>"_s.arg( id );
157 }
158 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
159 % End
160#endif
161
162 private:
163
164 bool mValid = false;
165 QString mName;
166 double mAccuracy = 0;
167 QString mAuthority;
168 QString mCode;
169 QString mScope;
170 QString mRemarks;
171 QList< QgsDatumEnsembleMember > mMembers;
172
174};
175
176#endif // QGSDATUMS_H
Contains information about a member of a datum ensemble.
Definition qgsdatums.h:37
QString authority() const
Authority name, e.g.
Definition qgsdatums.h:58
friend class QgsCoordinateReferenceSystem
Definition qgsdatums.h:86
QString scope() const
Returns the scope of operation, from EPSG registry database.
Definition qgsdatums.h:48
QString remarks() const
Remarks for operation, from EPSG registry database.
Definition qgsdatums.h:53
QString name() const
Returns the name of the member.
Definition qgsdatums.h:43
QString code() const
Authority code, e.g.
Definition qgsdatums.h:63
Contains information about a datum ensemble.
Definition qgsdatums.h:97
QString code() const
Identification code, e.g.
Definition qgsdatums.h:124
QString authority() const
Authority name, e.g.
Definition qgsdatums.h:119
QString scope() const
Scope of ensemble, from EPSG registry database.
Definition qgsdatums.h:129
friend class QgsCoordinateReferenceSystem
Definition qgsdatums.h:173
bool isValid() const
Returns true if the datum ensemble is a valid object, or false if it is a null/invalid object.
Definition qgsdatums.h:104
QList< QgsDatumEnsembleMember > members() const
Contains a list of members of the ensemble.
Definition qgsdatums.h:139
QString name() const
Display name of datum ensemble.
Definition qgsdatums.h:109
QString remarks() const
Remarks for ensemble, from EPSG registry database.
Definition qgsdatums.h:134
double accuracy() const
Positional accuracy (in meters).
Definition qgsdatums.h:114