QGIS API Documentation  3.16.0-Hannover (43b64b13f3)
Functions
qgsinternalgeometryengine.cpp File Reference
#include "qgsinternalgeometryengine.h"
#include "qgslinestring.h"
#include "qgsmultipolygon.h"
#include "qgspolygon.h"
#include "qgsmulticurve.h"
#include "qgscircularstring.h"
#include "qgsgeometry.h"
#include "qgsgeometryutils.h"
#include "qgslinesegment.h"
#include "qgscircle.h"
#include "qgslogger.h"
#include "qgstessellator.h"
#include "qgsfeedback.h"
#include "qgsgeometryengine.h"
#include <QTransform>
#include <functional>
#include <memory>
#include <queue>
#include <random>
Include dependency graph for qgsinternalgeometryengine.cpp:

Go to the source code of this file.

Functions

QgsVector calcMotion (const QgsPoint &a, const QgsPoint &b, const QgsPoint &c, double lowerThreshold, double upperThreshold)
 
std::unique_ptr< QgsAbstractGeometryconvertGeometryToCurves (const QgsAbstractGeometry *geom, double distanceTolerance, double angleTolerance)
 
QgsAbstractGeometrydensifyGeometry (const QgsAbstractGeometry *geom, int extraNodesPerSegment=1, double distance=1)
 
QgsLineStringdoDensify (const QgsLineString *ring, int extraNodesPerSegment=-1, double distance=1)
 
QgsLineStringdoOrthogonalize (QgsLineString *ring, int iterations, double tolerance, double lowerThreshold, double upperThreshold)
 
bool dotProductWithinAngleTolerance (double dotProduct, double lowerThreshold, double upperThreshold)
 
QVector< QgsPointXYgenerateSegmentCurve (const QgsPoint &center1, const double radius1, const QgsPoint &center2, const double radius2)
 
std::unique_ptr< QgsCompoundCurvelineToCurve (const QgsLineString *lineString, double distanceTolerance, double pointSpacingAngleTolerance)
 
double normalizedDotProduct (const QgsPoint &a, const QgsPoint &b, const QgsPoint &c)
 
QgsAbstractGeometryorthogonalizeGeom (const QgsAbstractGeometry *geom, int maxIterations, double tolerance, double lowerThreshold, double upperThreshold)
 
double squareness (QgsLineString *ring, double lowerThreshold, double upperThreshold)
 

Function Documentation

◆ calcMotion()

QgsVector calcMotion ( const QgsPoint a,
const QgsPoint b,
const QgsPoint c,
double  lowerThreshold,
double  upperThreshold 
)

Definition at line 367 of file qgsinternalgeometryengine.cpp.

◆ convertGeometryToCurves()

std::unique_ptr< QgsAbstractGeometry > convertGeometryToCurves ( const QgsAbstractGeometry geom,
double  distanceTolerance,
double  angleTolerance 
)

Definition at line 1385 of file qgsinternalgeometryengine.cpp.

◆ densifyGeometry()

QgsAbstractGeometry* densifyGeometry ( const QgsAbstractGeometry geom,
int  extraNodesPerSegment = 1,
double  distance = 1 
)

Definition at line 629 of file qgsinternalgeometryengine.cpp.

◆ doDensify()

QgsLineString* doDensify ( const QgsLineString ring,
int  extraNodesPerSegment = -1,
double  distance = 1 
)

Definition at line 538 of file qgsinternalgeometryengine.cpp.

◆ doOrthogonalize()

QgsLineString* doOrthogonalize ( QgsLineString ring,
int  iterations,
double  tolerance,
double  lowerThreshold,
double  upperThreshold 
)

Definition at line 398 of file qgsinternalgeometryengine.cpp.

◆ dotProductWithinAngleTolerance()

bool dotProductWithinAngleTolerance ( double  dotProduct,
double  lowerThreshold,
double  upperThreshold 
)

Definition at line 305 of file qgsinternalgeometryengine.cpp.

◆ generateSegmentCurve()

QVector<QgsPointXY> generateSegmentCurve ( const QgsPoint center1,
const double  radius1,
const QgsPoint center2,
const double  radius2 
)

Definition at line 879 of file qgsinternalgeometryengine.cpp.

◆ lineToCurve()

std::unique_ptr< QgsCompoundCurve > lineToCurve ( const QgsLineString lineString,
double  distanceTolerance,
double  pointSpacingAngleTolerance 
)

Definition at line 1200 of file qgsinternalgeometryengine.cpp.

◆ normalizedDotProduct()

double normalizedDotProduct ( const QgsPoint a,
const QgsPoint b,
const QgsPoint c 
)

Definition at line 310 of file qgsinternalgeometryengine.cpp.

◆ orthogonalizeGeom()

QgsAbstractGeometry* orthogonalizeGeom ( const QgsAbstractGeometry geom,
int  maxIterations,
double  tolerance,
double  lowerThreshold,
double  upperThreshold 
)

Definition at line 470 of file qgsinternalgeometryengine.cpp.

◆ squareness()

double squareness ( QgsLineString ring,
double  lowerThreshold,
double  upperThreshold 
)

Definition at line 323 of file qgsinternalgeometryengine.cpp.