algorithm
If checked, then any disjoint parts in the buffer results will be
output as separate single-part features. This setting is designed
to expose a similar functionality as is available for the 'dissolve'
algorithm.
Sponsored by City of Canning
This change adds a new "feature filter" option alongside the
existing feature limit and invalid geometry handling options
available for all vector inputs to processing layers.
It allows users to enter an expression to subset the layer dynamically
when running the tool, avoiding the need for separate steps to
set layer filters or create layer subsets.
Sponsored by City of Canning
Instead of limiting layout legend filtering to a single linked map,
this change permits legends to be filtered instead by multiple
linked maps. It is designed to accomodate the use case where
a layout has multiple maps, potentially at different scales
and showing different extents, and a single legend is required
which includes all symbols visible across all the maps.
Sponsored by City of Canning
(This setting can sometimes unwantedly occur when using the same
profile across sessions of newer to very old QGIS versions)
The option is a misleading, as it's actually setting the global
thread limit for the entire QGIS application. If we allow this
to be set to a limit of 1 thread, then deadlocks
occur from the QImage internals in unpredictable ways.
GDAL commands for invalid layers
This is a partial fix, which at least removes the uncaught exception.
Ideally we'd gracefully fall back to using the layer's source
(even if it doesn't exist!) in the generated GDAL commands. But that's
far from trivial to do.
Fixes#51958
Qgs3DMapScene.openScenes() will now return a map of
open Qgs3DMapScene objects (by name) visible in the app. Various
basic properties of the scene are exposed, including
the camera controller, allowing access to navigate 3d
scenes via python
Conversion between relative and absolute paths when reading/writing project files
has been inconveniently done in subclasses of QgsMapLayer in encodedSource() and
decodedSource() methods, with a lot of provider specific code.
This is a refactoring to finally fix this - there is a new pair of functions added
to QgsProviderMetadata and QgsProviderRegistry:
- absoluteToRelativeUri()
- relativeToAbsoluteUri()
This new pair of functions delegates the actual conversion between absolute and
relative path to provider code - where it belongs.
The existing code from encodedSource() and decodedSource() functions has been moved
to providers. Unit tests were added to confirm the existing behavior.
There should be no change of behavior apart from removal of old compatibility code
for WMS provider for projects from QGIS < 1.9 (10 years ago).
A new widget which stores a referenced geometry value, and provides
handy methods for copying the value as WKT or GeoJSON, pasting
a WKT/GeoJSON value from the clipboard, or clearing the geometry