21 #include "qgis_core.h"
55 QList<QgsVectorLayer *>
layers()
const {
return mLayers; }
57 void setLayers(
const QList<QgsVectorLayer *> &layers );
87 double offset()
const {
return mOffset; }
94 void setOffset(
double offset );
100 void offsetParameters(
int &quadSegments
SIP_OUT,
int &joinStyle
SIP_OUT,
double &miterLimit
SIP_OUT );
106 void setOffsetParameters(
int quadSegments,
int joinStyle,
double miterLimit );
162 void invalidateGraph();
171 void onAttributeValueChanged(
QgsFeatureId fid,
int idx,
const QVariant &value );
172 void onDataChanged( );
173 void onStyleChanged( );
174 void onLayerDestroyed( QObject *obj );
178 std::unique_ptr< QgsTracerGraph > mGraph;
180 QList<QgsVectorLayer *> mLayers;
186 std::unique_ptr<QgsRenderContext> mRenderContext;
193 int mOffsetSegments = 8;
195 int mOffsetJoinStyle = 2;
197 double mOffsetMiterLimit = 5.;
203 int mMaxFeatureCount = 0;
209 bool mHasTopologyProblem =
false;
This class represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
A geometry is the spatial representation of a feature.
A class to represent a 2D point.
A rectangle specified with double values.
Contains information about the context of a rendering operation.
Utility class that construct a planar graph from the input vector layers and provides shortest path s...
void setMaxFeatureCount(int count)
Gets maximum possible number of features in graph. If the number is exceeded, graph is not created.
bool hasTopologyProblem() const
Whether there was an error during graph creation due to noding exception, indicating some input data ...
PathError
Possible errors that may happen when calling findShortestPath()
@ ErrNoPath
Points are not connected in the graph.
@ ErrPoint2
End point cannot be joined to the graph.
@ ErrPoint1
Start point cannot be joined to the graph.
@ ErrTooManyFeatures
Max feature count threshold was reached while reading features.
QgsTracer()
Constructor for QgsTracer.
QgsRectangle extent() const
Gets extent to which graph's features will be limited (empty extent means no limit)
int maxFeatureCount() const
Gets maximum possible number of features in graph. If the number is exceeded, graph is not created.
double offset() const
Gets offset in map units that should be applied to the traced paths returned from findShortestPath().
QList< QgsVectorLayer * > layers() const
Gets layers used for tracing.
QgsCoordinateReferenceSystem destinationCrs() const
Returns the CRS used for tracing.
virtual void configure()
Allows derived classes to setup the settings just before the tracer is initialized.
bool isInitialized() const
Whether the internal data structures have been initialized.
Represents a vector layer which manages a vector based data sets.
qint64 QgsFeatureId
64 bit feature ids negative numbers are used for uncommitted/newly added features
const QgsCoordinateReferenceSystem & crs
Simple graph structure for shortest path search.