QGIS API Documentation  3.21.0-Master (2d5a580dfc)
qgsreferencedgeometry.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsreferencedgeometry.h
3  ----------------------
4  begin : June 2017
5  copyright : (C) 2017 by 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 
18 #ifndef QGSREFERENCEDGEOMETRY_H
19 #define QGSREFERENCEDGEOMETRY_H
20 
21 #include "qgis_sip.h"
22 #include "qgis_core.h"
24 #include "qgsrectangle.h"
25 #include "qgsgeometry.h"
26 
39 class CORE_EXPORT QgsReferencedGeometryBase
40 {
41  public:
42 
47 
53  QgsCoordinateReferenceSystem crs() const { return mCrs; }
54 
60  void setCrs( const QgsCoordinateReferenceSystem &crs ) { mCrs = crs; }
61 
62  private:
63 
65 
66 };
67 
74 {
75  public:
76 
82 
87 
89  operator QVariant() const
90  {
91  return QVariant::fromValue( *this );
92  }
93 
94  bool operator==( const QgsReferencedRectangle &other ) const;
95  bool operator!=( const QgsReferencedRectangle &other ) const;
96 
97 #ifdef SIP_RUN
98  SIP_PYOBJECT __repr__();
99  % MethodCode
100  QString str = QStringLiteral( "<QgsReferencedRectangle: %1 (%2)>" ).arg( sipCpp->asWktCoordinates(), sipCpp->crs().authid() );
101  sipRes = PyUnicode_FromString( str.toUtf8().constData() );
102  % End
103 #endif
104 
105 };
106 
108 
109 
115 {
116  public:
117 
123 
127  QgsReferencedPointXY() = default;
128 
130  operator QVariant() const
131  {
132  return QVariant::fromValue( *this );
133  }
134 
135  bool operator==( const QgsReferencedPointXY &other );
136  bool operator!=( const QgsReferencedPointXY &other );
137 
138 #ifdef SIP_RUN
139  SIP_PYOBJECT __repr__();
140  % MethodCode
141  QString str = QStringLiteral( "<QgsReferencedPointXY: %1 (%2)>" ).arg( sipCpp->asWkt(), sipCpp->crs().authid() );
142  sipRes = PyUnicode_FromString( str.toUtf8().constData() );
143  % End
144 #endif
145 
146 };
147 
149 
150 
156 {
157  public:
158 
164 
169 
171  operator QVariant() const
172  {
173  return QVariant::fromValue( *this );
174  }
175 
179  static QgsReferencedGeometry fromReferencedPointXY( const QgsReferencedPointXY &point );
180 
184  static QgsReferencedGeometry fromReferencedRect( const QgsReferencedRectangle &rectangle );
185 
186 
187 #ifdef SIP_RUN
188  SIP_PYOBJECT __repr__();
189  % MethodCode
190  QString str = QStringLiteral( "<QgsReferencedGeometry: %1 (%2)>" ).arg( sipCpp->asWkt(), sipCpp->crs().authid() );
191  sipRes = PyUnicode_FromString( str.toUtf8().constData() );
192  % End
193 #endif
194 
195 };
196 
198 
199 #endif // QGSREFERENCEDGEOMETRY_H
This class represents a coordinate reference system (CRS).
A geometry is the spatial representation of a feature.
Definition: qgsgeometry.h:124
A class to represent a 2D point.
Definition: qgspointxy.h:59
A rectangle specified with double values.
Definition: qgsrectangle.h:42
A base class for geometry primitives which are stored with an associated reference system.
QgsCoordinateReferenceSystem crs() const
Returns the associated coordinate reference system, or an invalid CRS if no reference system is set.
void setCrs(const QgsCoordinateReferenceSystem &crs)
Sets the associated crs.
A QgsGeometry with associated coordinate reference system.
QgsReferencedGeometry()=default
Constructor for QgsReferencedGeometry.
A QgsPointXY with associated coordinate reference system.
QgsReferencedPointXY()=default
Constructor for QgsReferencedPointXY.
A QgsRectangle with associated coordinate reference system.
QgsReferencedRectangle()=default
Constructor for QgsReferencedRectangle.
#define str(x)
Definition: qgis.cpp:37
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
Q_DECLARE_METATYPE(QgsMeshTimeSettings)
const QgsCoordinateReferenceSystem & crs