This commit is contained in:
Matthias Kuhn 2018-09-30 10:35:45 +02:00
parent 7ba19dd05f
commit f0ddef4bed
No known key found for this signature in database
GPG Key ID: 7A7F1A1C90C3E6A7
2 changed files with 30 additions and 0 deletions

View File

@ -13,9 +13,13 @@ struct QgsGeometryCheckContext
QgsGeometryCheckContext( int precision,
const QgsCoordinateReferenceSystem &mapCrs,
const QgsCoordinateTransformContext &transformContext );
const double tolerance;
const double reducedTolerance;
const QgsCoordinateReferenceSystem mapCrs;
const QgsCoordinateTransformContext transformContext;
private:

View File

@ -21,14 +21,40 @@
#include "qgscoordinatetransformcontext.h"
#include "qgsfeaturepool.h"
/**
* Base configuration for geometry checks.
*
* \since QGIS 3.4
*/
struct ANALYSIS_EXPORT QgsGeometryCheckContext
{
QgsGeometryCheckContext( int precision,
const QgsCoordinateReferenceSystem &mapCrs,
const QgsCoordinateTransformContext &transformContext );
/**
* The tolerance to allow for in geometry checks.
* Will be calculated as pow(10, -precision) in the constructor.
* I.e. if the precision is 4 (decimal digits), this will be 0.0001.
*/
const double tolerance;
/**
* The tolerance to allow for in geometry checks.
* Will be calculated as pow(10, -precision/2) in the constructor.
* I.e. if the precision is 4 (decimal digits), this will be 0.01.
* Should be used for areas, where the precision is squared.
*/
const double reducedTolerance;
/**
* The coordinate system in which calculations should be done.
*/
const QgsCoordinateReferenceSystem mapCrs;
/**
* The coordinate transform context with which transformations will be done.
*/
const QgsCoordinateTransformContext transformContext;
private: