Fixes two issues in camera navigation:
- Unintuitive camera rotation
- Wrong center point when zooming in/out and rotating
See https://github.com/qgis/QGIS-Enhancement-Proposals/issues/215
This PR employs the following changes:
- The zoom in functionality will zoom in towards the real 3D position of an object in the scene instead the camera view center point used previously.
- The rotation will use the real clicked 3D position of a pixel as well instead of the camera view center point.
- The press and drag behaviour is improved to shift the map in real 3D coordinates instead of some arbitrary measurement (you can see the clicked pixel following the cursor instead of drifting away).
Intended for use in storing the results of a long running operation.
E.g. a processing task would store the initial operation history
when the operation starts, and when it finishes it should update
that entry with the full log and output results.
No user visible changes, but we gain the flexibility for better
history storage, including the ability to store the outputs
calculated by the algorithm execution...!
specified as a JSON object passed via stdin to qgis_process
This provides a mechanism to support complex input parameters
for algorithms, and a way for qgis_process to gain support
for parameter types which are themselves specified as a dictionary
type object.
To indicate that parameters will be specified via stdin then
the qgis_process command must follow the format
qgis_process run algid -
(with a trailing - in place of the usual arguments list).
The JSON object must contain an "inputs" key, which is a map
of the input parameter values.
E.g.
echo "{"inputs": {\"INPUT\": \"my_shape.shp\", DISTANCE: 5}}" | qgis_process run native:buffer -
Specifying input parameters via stdin implies automatically
the --json output format for results.
One big motivation behind this enhancement is to provide a way for
the qgisprocess R libraries to support parameter types such as
aggregates.
Refs https://github.com/paleolimbot/qgisprocess/issues/56
Refs https://github.com/paleolimbot/qgisprocess/issues/44
Sponsored by the Research Institute for Nature and Forest, Flemish Govt
current settings as JSON and paste json settings from clipboard
The utility of this is two fold:
1. It provides a way for users to copy the settings defined in the
dialog in a text format, so they can store these easily and then
restore later by pasting the value
2. It provides an easy way for users to copy the settings into
the json format consumed by qgis_process (following
https://github.com/qgis/QGIS/pull/46497), so that it is easy
for users to see the expected format even for complex parameters
(like tin interpolation parameters)