Class: QgsTracer¶
-
class
qgis.core.
QgsTracer
¶ Bases:
PyQt5.QtCore.QObject
Constructor for QgsTracer.
Utility class that construct a planar graph from the input vector layers and provides shortest path search for tracing of existing features.
Methods
Allows derived classes to setup the settings just before the tracer is initialized.
Returns the CRS used for tracing.
Gets extent to which graph’s features will be limited (empty extent means no limit)
Given two points, find the shortest path and return points on the way.
Whether there was an error during graph creation due to noding exception, indicating some input data topology problems
Build the internal data structures.
Destroy the existing graph structure if any (de-initialize)
Whether the internal data structures have been initialized
Find out whether the point is snapped to a vertex or edge (i.e.
Gets layers used for tracing
Gets maximum possible number of features in graph.
Gets offset in map units that should be applied to the traced paths returned from
findShortestPath()
.Gets extra parameters for offset curve algorithm (used when offset is non-zero)
Sets the
crs
and transformcontext
used for tracing.Sets extent to which graph’s features will be limited (empty extent means no limit)
Sets layers used for tracing
Gets maximum possible number of features in graph.
Set offset in map units that should be applied to the traced paths returned from
findShortestPath()
.Set extra parameters for offset curve algorithm (used when offset is non-zero)
Sets the
renderContext
used for tracing only on visible features.Attributes
-
ErrNoPath
= 4¶
-
ErrNone
= 0¶
-
ErrPoint1
= 2¶
-
ErrPoint2
= 3¶
-
ErrTooManyFeatures
= 1¶
-
class
PathError
¶ Bases:
int
-
childEvent
(self, QChildEvent)¶
-
configure
(self)¶ Allows derived classes to setup the settings just before the tracer is initialized. This allows the configuration to be set in a lazy way only when it is really necessary. Default implementation does nothing.
-
connectNotify
(self, QMetaMethod)¶
-
customEvent
(self, QEvent)¶
-
destinationCrs
(self) → QgsCoordinateReferenceSystem¶ Returns the CRS used for tracing.
See also
- Return type
-
disconnectNotify
(self, QMetaMethod)¶
-
extent
(self) → QgsRectangle¶ Gets extent to which graph’s features will be limited (empty extent means no limit)
- Return type
-
findShortestPath
(self, p1: QgsPointXY, p2: QgsPointXY) → Tuple[List[QgsPointXY], QgsTracer.PathError]¶ Given two points, find the shortest path and return points on the way. The optional “error” argument may receive error code (PathError enum) if it is not
None
- Return type
Tuple[List[QgsPointXY], QgsTracer.PathError]
- Returns
array of points - trace of linestrings of other features (empty array one error)
- Parameters
p1 (QgsPointXY) –
p2 (QgsPointXY) –
-
hasTopologyProblem
(self) → bool¶ Whether there was an error during graph creation due to noding exception, indicating some input data topology problems
New in version 2.16.
- Return type
bool
-
init
(self) → bool¶ Build the internal data structures. This may take some time depending on how big the input layers are. It is not necessary to call this method explicitly - it will be called by
findShortestPath()
if necessary.- Return type
bool
-
invalidateGraph
(self)¶ Destroy the existing graph structure if any (de-initialize)
-
isInitialized
(self) → bool¶ Whether the internal data structures have been initialized
- Return type
bool
-
isPointSnapped
(self, pt: QgsPointXY) → bool¶ Find out whether the point is snapped to a vertex or edge (i.e. it can be used for tracing start/stop)
- Parameters
pt (QgsPointXY) –
- Return type
bool
-
isSignalConnected
(self, QMetaMethod) → bool¶
-
layers
(self) → List[QgsVectorLayer]¶ Gets layers used for tracing
- Return type
List[QgsVectorLayer]
-
maxFeatureCount
(self) → int¶ Gets maximum possible number of features in graph. If the number is exceeded, graph is not created.
- Return type
int
-
offset
(self) → float¶ Gets offset in map units that should be applied to the traced paths returned from
findShortestPath()
. Positive offset for right side, negative offset for left side.New in version 3.0.
- Return type
float
-
offsetParameters
(self) → Tuple[int, int, float]¶ Gets extra parameters for offset curve algorithm (used when offset is non-zero)
New in version 3.0.
- Return type
Tuple[int, int, float]
-
receivers
(self, PYQT_SIGNAL) → int¶
-
sender
(self) → QObject¶
-
senderSignalIndex
(self) → int¶
-
setDestinationCrs
(self, crs: QgsCoordinateReferenceSystem, context: QgsCoordinateTransformContext)¶ Sets the
crs
and transformcontext
used for tracing.See also
- Parameters
crs (QgsCoordinateReferenceSystem) –
context (QgsCoordinateTransformContext) –
-
setExtent
(self, extent: QgsRectangle)¶ Sets extent to which graph’s features will be limited (empty extent means no limit)
- Parameters
extent (QgsRectangle) –
-
setLayers
(self, layers: Iterable[QgsVectorLayer])¶ Sets layers used for tracing
- Parameters
layers (Iterable[QgsVectorLayer]) –
-
setMaxFeatureCount
(self, count: int)¶ Gets maximum possible number of features in graph. If the number is exceeded, graph is not created.
- Parameters
count (int) –
-
setOffset
(self, offset: float)¶ Set offset in map units that should be applied to the traced paths returned from
findShortestPath()
. Positive offset for right side, negative offset for left side.New in version 3.0.
- Parameters
offset (float) –
-
setOffsetParameters
(self, quadSegments: int, joinStyle: int, miterLimit: float)¶ Set extra parameters for offset curve algorithm (used when offset is non-zero)
New in version 3.0.
- Parameters
quadSegments (int) –
joinStyle (int) –
miterLimit (float) –
-
setRenderContext
(self, renderContext: QgsRenderContext)¶ Sets the
renderContext
used for tracing only on visible features.New in version 3.4.
- Parameters
renderContext (QgsRenderContext) –
-
timerEvent
(self, QTimerEvent)¶
-