QGIS API Documentation 3.99.0-Master (09f76ad7019)
Loading...
Searching...
No Matches
qgstracer.cpp File Reference
#include "qgstracer.h"
#include <memory>
#include <vector>
#include "qgsexpressioncontextutils.h"
#include "qgsfeatureiterator.h"
#include "qgsgeometry.h"
#include "qgsgeometryutils.h"
#include "qgsgeos.h"
#include "qgslogger.h"
#include "qgsrendercontext.h"
#include "qgsrenderer.h"
#include "qgssettingsentryimpl.h"
#include "qgssettingsregistrycore.h"
#include "qgsvectorlayer.h"
#include <QString>
#include <queue>
#include "moc_qgstracer.cpp"
Include dependency graph for qgstracer.cpp:

Go to the source code of this file.

Classes

struct  comp
struct  QgsTracerGraph::E
struct  QgsTracerGraph
 Simple graph structure for shortest path search. More...
struct  QgsTracerGraph::V

Typedefs

typedef std::pair< int, double > DijkstraQueueItem

Functions

double closestSegment (const QgsPolylineXY &pl, const QgsPointXY &pt, int &vertexAfter, double epsilon)
double distance2D (const QgsPolylineXY &coords)
void extractLinework (const QgsGeometry &g, QgsMultiPolylineXY &mpl)
int joinVertexToGraph (QgsTracerGraph &g, const QgsPointXY &pt)
QgsTracerGraphmakeGraph (const QVector< QgsPolylineXY > &edges)
int point2edge (const QgsTracerGraph &g, const QgsPointXY &pt, int &lineVertexAfter, double epsilon=1e-6)
int point2vertex (const QgsTracerGraph &g, const QgsPointXY &pt, double epsilon=1e-6)
int pointInGraph (QgsTracerGraph &g, const QgsPointXY &pt)
void resetGraph (QgsTracerGraph &g)
QVector< QgsPointXYshortestPath (const QgsTracerGraph &g, int v1, int v2)
void splitLinestring (const QgsPolylineXY &points, const QgsPointXY &pt, int lineVertexAfter, QgsPolylineXY &pts1, QgsPolylineXY &pts2)

Typedef Documentation

◆ DijkstraQueueItem

typedef std::pair<int, double> DijkstraQueueItem

Definition at line 40 of file qgstracer.cpp.

Function Documentation

◆ closestSegment()

double closestSegment ( const QgsPolylineXY & pl,
const QgsPointXY & pt,
int & vertexAfter,
double epsilon )

Definition at line 75 of file qgstracer.cpp.

◆ distance2D()

double distance2D ( const QgsPolylineXY & coords)

Definition at line 53 of file qgstracer.cpp.

◆ extractLinework()

void extractLinework ( const QgsGeometry & g,
QgsMultiPolylineXY & mpl )

Definition at line 419 of file qgstracer.cpp.

◆ joinVertexToGraph()

int joinVertexToGraph ( QgsTracerGraph & g,
const QgsPointXY & pt )

Definition at line 320 of file qgstracer.cpp.

◆ makeGraph()

QgsTracerGraph * makeGraph ( const QVector< QgsPolylineXY > & edges)

Definition at line 136 of file qgstracer.cpp.

◆ point2edge()

int point2edge ( const QgsTracerGraph & g,
const QgsPointXY & pt,
int & lineVertexAfter,
double epsilon = 1e-6 )

Definition at line 283 of file qgstracer.cpp.

◆ point2vertex()

int point2vertex ( const QgsTracerGraph & g,
const QgsPointXY & pt,
double epsilon = 1e-6 )

Definition at line 268 of file qgstracer.cpp.

◆ pointInGraph()

int pointInGraph ( QgsTracerGraph & g,
const QgsPointXY & pt )

Definition at line 373 of file qgstracer.cpp.

◆ resetGraph()

void resetGraph ( QgsTracerGraph & g)

Definition at line 385 of file qgstracer.cpp.

◆ shortestPath()

QVector< QgsPointXY > shortestPath ( const QgsTracerGraph & g,
int v1,
int v2 )

Definition at line 190 of file qgstracer.cpp.

◆ splitLinestring()

void splitLinestring ( const QgsPolylineXY & points,
const QgsPointXY & pt,
int lineVertexAfter,
QgsPolylineXY & pts1,
QgsPolylineXY & pts2 )

Definition at line 303 of file qgstracer.cpp.