QGIS API Documentation
3.4.15-Madeira (e83d02e274)
|
#include "qgstracer.h"
#include "qgsfeatureiterator.h"
#include "qgsgeometry.h"
#include "qgsgeometryutils.h"
#include "qgsgeos.h"
#include "qgslogger.h"
#include "qgsvectorlayer.h"
#include "qgsexception.h"
#include <queue>
#include <vector>
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) |
QgsTracerGraph * | makeGraph (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< QgsPointXY > | shortestPath (const QgsTracerGraph &g, int v1, int v2) |
void | splitLinestring (const QgsPolylineXY &points, const QgsPointXY &pt, int lineVertexAfter, QgsPolylineXY &pts1, QgsPolylineXY &pts2) |
typedef std::pair<int, double> DijkstraQueueItem |
Definition at line 30 of file qgstracer.cpp.
double closestSegment | ( | const QgsPolylineXY & | pl, |
const QgsPointXY & | pt, | ||
int & | vertexAfter, | ||
double | epsilon | ||
) |
Definition at line 65 of file qgstracer.cpp.
double distance2D | ( | const QgsPolylineXY & | coords | ) |
Definition at line 43 of file qgstracer.cpp.
void extractLinework | ( | const QgsGeometry & | g, |
QgsMultiPolylineXY & | mpl | ||
) |
Definition at line 412 of file qgstracer.cpp.
int joinVertexToGraph | ( | QgsTracerGraph & | g, |
const QgsPointXY & | pt | ||
) |
Definition at line 313 of file qgstracer.cpp.
QgsTracerGraph* makeGraph | ( | const QVector< QgsPolylineXY > & | edges | ) |
Definition at line 126 of file qgstracer.cpp.
int point2edge | ( | const QgsTracerGraph & | g, |
const QgsPointXY & | pt, | ||
int & | lineVertexAfter, | ||
double | epsilon = 1e-6 |
||
) |
Definition at line 275 of file qgstracer.cpp.
int point2vertex | ( | const QgsTracerGraph & | g, |
const QgsPointXY & | pt, | ||
double | epsilon = 1e-6 |
||
) |
Definition at line 260 of file qgstracer.cpp.
int pointInGraph | ( | QgsTracerGraph & | g, |
const QgsPointXY & | pt | ||
) |
Definition at line 366 of file qgstracer.cpp.
void resetGraph | ( | QgsTracerGraph & | g | ) |
Definition at line 378 of file qgstracer.cpp.
QVector<QgsPointXY> shortestPath | ( | const QgsTracerGraph & | g, |
int | v1, | ||
int | v2 | ||
) |
Definition at line 179 of file qgstracer.cpp.
void splitLinestring | ( | const QgsPolylineXY & | points, |
const QgsPointXY & | pt, | ||
int | lineVertexAfter, | ||
QgsPolylineXY & | pts1, | ||
QgsPolylineXY & | pts2 | ||
) |
Definition at line 296 of file qgstracer.cpp.