24 #include "qgis_core.h" 69 static QgsGeometry geometryFromGML(
const QString &xmlString );
74 static QgsGeometry geometryFromGML(
const QDomNode &geometryNode );
77 static QgsRectangle rectangleFromGMLBox(
const QDomNode &boxNode );
80 static QgsRectangle rectangleFromGMLEnvelope(
const QDomNode &envelopeNode );
87 static QDomElement geometryToGML(
const QgsGeometry &geometry, QDomDocument &doc,
89 const QString &srsName,
90 bool invertAxisOrientation,
91 const QString &gmlIdBase,
98 static QDomElement geometryToGML(
const QgsGeometry &geometry, QDomDocument &doc,
const QString &format,
int precision = 17 );
104 static QDomElement geometryToGML(
const QgsGeometry &geometry, QDomDocument &doc,
int precision = 17 );
117 static QDomElement rectangleToGMLBox(
QgsRectangle *box, QDomDocument &doc,
118 const QString &srsName,
119 bool invertAxisOrientation,
126 static QDomElement rectangleToGMLEnvelope(
QgsRectangle *env, QDomDocument &doc,
int precision = 17 );
133 static QDomElement rectangleToGMLEnvelope(
QgsRectangle *env, QDomDocument &doc,
134 const QString &srsName,
135 bool invertAxisOrientation,
140 static QColor colorFromOgcFill(
const QDomElement &fillElement );
151 static QDomElement expressionToOgcFilter( const
QgsExpression &exp, QDomDocument &doc, QString *errorMessage =
nullptr );
180 static QDomElement expressionToOgcFilter( const
QgsExpression &exp,
185 const QString &srsName,
186 bool honourAxisOrientation,
187 bool invertAxisOrientation,
188 QString *errorMessage =
nullptr )
SIP_SKIP;
195 static QDomElement expressionToOgcExpression( const
QgsExpression &exp, QDomDocument &doc, QString *errorMessage =
nullptr );
202 static QDomElement expressionToOgcExpression( const
QgsExpression &exp,
206 const QString &geometryName,
207 const QString &srsName,
208 bool honourAxisOrientation,
209 bool invertAxisOrientation,
210 QString *errorMessage =
nullptr );
253 static QDomElement SQLStatementToOgcFilter(
const QgsSQLStatement &statement,
257 const QList<LayerProperties> &layerProperties,
258 bool honourAxisOrientation,
259 bool invertAxisOrientation,
260 const QMap< QString, QString> &mapUnprefixedTypenameToPrefixedTypename,
261 QString *errorMessage =
nullptr ) SIP_SKIP;
266 static
QgsGeometry geometryFromGMLPoint( const QDomElement &geometryElement );
268 static
QgsGeometry geometryFromGMLLineString( const QDomElement &geometryElement );
270 static
QgsGeometry geometryFromGMLPolygon( const QDomElement &geometryElement );
272 static
QgsGeometry geometryFromGMLMultiPoint( const QDomElement &geometryElement );
274 static
QgsGeometry geometryFromGMLMultiLineString( const QDomElement &geometryElement );
276 static
QgsGeometry geometryFromGMLMultiPolygon( const QDomElement &geometryElement );
283 static
bool readGMLCoordinates(
QgsPolylineXY &coords, const QDomElement &elem );
292 static
bool readGMLPositions(
QgsPolylineXY &coords, const QDomElement &elem );
300 static QDomElement createGMLCoordinates( const
QgsPolylineXY &points, QDomDocument &doc );
307 static QDomElement createGMLPositions( const
QgsPolylineXY &points, QDomDocument &doc );
324 static
QgsExpressionNode *nodeIsBetweenFromOgcFilter( QDomElement &element, QString &errorMessage );
343 const QString &geometryName,
344 const QString &srsName,
345 bool honourAxisOrientation,
346 bool invertAxisOrientation );
362 const QString &mGeometryName;
363 const QString &mSrsName;
364 bool mInvertAxisOrientation;
365 QString mErrorMessage;
366 QString mFilterPrefix;
367 QString mPropertyName;
407 QString errorMessage()
const;
460 QString mErrorMessage;
461 QString mPropertyName;
477 const QList<QgsOgcUtils::LayerProperties> &layerProperties,
478 bool honourAxisOrientation,
479 bool invertAxisOrientation,
480 const QMap< QString, QString> &mapUnprefixedTypenameToPrefixedTypename );
496 const QList<QgsOgcUtils::LayerProperties> &mLayerProperties;
497 bool mHonourAxisOrientation;
498 bool mInvertAxisOrientation;
499 QString mErrorMessage;
500 QString mFilterPrefix;
501 QString mPropertyName;
503 QString mCurrentSRSName;
504 QMap<QString, QString> mMapTableAliasToNames;
505 const QMap< QString, QString> &mMapUnprefixedTypenameToPrefixedTypename;
520 QList<QgsSQLStatement::Node *> args,
521 bool lastArgIsSRSName,
523 bool &axisInversion );
525 #endif // #ifndef SIP_RUN 527 #endif // QGSOGCUTILS_H Class for parsing and evaluation of expressions (formerly called "search strings").
A rectangle specified with double values.
Internal use by QgsOgcUtils.
Function with a name and arguments node.
A class to represent a 2D point.
QString errorMessage() const
Returns the error message.
bool GMLNamespaceUsed() const
Returns whether the gml: namespace is used.
A geometry is the spatial representation of a feature.
Binary logical/arithmetical operator (AND, OR, =, +, ...)
bool GMLNamespaceUsed() const
Returns whether the gml: namespace is used.
Internal use by QgsOgcUtils.
Class for parsing SQL statements.
const QString & geometryName
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
An expression node for value IN or NOT IN clauses.
Literal value (integer, integer64, double, string)
QString errorMessage() const
Returns the error message.
Internal use by QgsOgcUtils.
An expression node which takes it value from a feature's field.
Unary logicial/arithmetical operator ( NOT, - )
QString mSRSName
SRS name.
Abstract base class for all nodes that can appear in an expression.
An expression node for expression functions.
FilterVersion
OGC filter version.
'X BETWEEN y and z' operator
QVector< QgsPointXY > QgsPolylineXY
Polyline as represented as a vector of two-dimensional points.
An expression node for literal values.
A unary node is either negative as in boolean (not) or as in numbers (minus).
A binary expression operator, which operates on two values.
QString mGeometryAttribute
Geometry attribute name.
Represents a vector layer which manages a vector based data sets.
'x IN (y, z)' operator
The QgsOgcUtils class provides various utility functions for conversion between OGC (Open Geospatial ...