Matthias Kuhn
a83319a075
Add QgsVectorDataProvider::Capability::ReloadData and return it for appropriate providers
...
This allows to only show reload actions for data providers that actually support it.
2020-12-14 09:02:16 +10:00
Matthias Kuhn
d94efac86b
Add todo for QGIS 4
2020-12-14 09:02:16 +10:00
Nyall Dawson
932e70b247
Dox grammar
2020-12-14 08:51:51 +10:00
Nyall Dawson
0ab761c210
Add proper method to determine whether a symbol uses map unit sizes,
...
and use this to determine whether a legend item needs updating
as a result of a map change
This results in a HUGE speed up when loading large projects where
symbols don't use Millimeter based sizes, as the previous code
assumed only that any non-millimeter size was a map unit based size.
2020-12-10 04:04:17 +10:00
Nyall Dawson
da51a5a8d0
It's FAR too expensive to construct a QgsSettings object for every symbol node, especially for complex
...
projects. So only read the valid size ranges once, and store them for subsequent use
2020-12-09 18:18:27 +10:00
Nyall Dawson
94522cf844
Add option to QgsVectorFileWriter to prefer using field aliases as output field name
2020-12-08 19:52:22 +10:00
Nyall Dawson
928b00a6e6
Add some more options to control how a preview pixmap for a color ramp is generated
2020-12-08 05:59:56 +10:00
nirvn
04b9c6ab00
[processing] Add a warning-level information message feedback
2020-12-07 14:15:35 +07:00
Nyall Dawson
344bc5f909
Ensure that accessing QgsFieldFormatterRegistry is thread safe
2020-12-07 16:58:46 +10:00
Nyall Dawson
5be99bd5fe
Show data type, scale, offset in metadata for point cloud layers
2020-12-07 12:08:35 +10:00
Nyall Dawson
0708f813f2
Add method to retrieve original metadata from point cloud files,
...
and expose some more useful metadata in layer properties (las version,
software, creation date)
2020-12-07 12:08:35 +10:00
Nyall Dawson
f21ca86a91
Cleanup api, fix crash
2020-12-07 11:42:39 +10:00
Nyall Dawson
60ce8eb9af
Use new api to return nice legend items for raster contour renderer
...
Instead of no legend, we now create a legend with the contour symbols!
2020-12-07 11:42:39 +10:00
Nyall Dawson
6932985d82
Add api to allow raster layer renderers to create different legend node types,
...
instead of forcing them to always use the solid color blocks created by QgsRasterSymbolLegendNode
2020-12-07 11:42:39 +10:00
Loïc Bartoletti
fe80965d50
[API] Add angleBisector method
2020-12-07 08:40:59 +10:00
Matthias Kuhn
e93bda84e2
Merge pull request #40452 from m-kuhn/locator_result_get_user_data
...
Add getter for QgsLocatorResults.userData
2020-12-06 12:09:04 +01:00
Matthias Kuhn
4edd44ae63
Add getter for QgsLocatorResults.userData
...
References https://github.com/opengisch/qgis-swiss-locator/issues/9
2020-12-06 08:43:56 +01:00
Nyall Dawson
4d9bc5bac3
Move responsibility for determining whether a map renderer job requires
...
flattening onto a temporary image to the QgsMapLayerRenderer subclasses
This avoids the generic QgsMapRendererJob class from having hardcoded
layer type dependent behavior, and instead moves that layer-type specific
logic to the subclasses designed for that particular layer
2020-12-05 05:51:38 +10:00
Nyall Dawson
def587fa77
[pointclouds] Add an extent only 2d renderer for point clouds
...
Useful when you just want an overview of the bounds of the layer in a
2d map. Also potentially usable as a temporary renderer for las/laz
files while we build the indexed representation of the file in the
background.
2020-12-04 17:44:23 +10:00
NEDJIMAbelgacem
7f26477c81
add comparison operator for QgsColorRampShader
2020-12-03 22:27:20 +01:00
Nyall Dawson
762ee09e81
Spelling, sip
2020-12-03 07:23:44 +01:00
Nyall Dawson
c48f29a8b9
Add choice of point style for 2d point cloud renders
...
Options are Square or Circle shapes
2020-12-03 07:23:44 +01:00
Nyall Dawson
19fdf11976
Code cleanup
2020-12-03 07:23:44 +01:00
Nyall Dawson
666479494b
[pointclouds] Add a classified 2d renderer for point clouds
...
Allows styling point cloud layers by a classification attribute
2020-12-03 07:23:44 +01:00
Nyall Dawson
b3255c4cfd
Hookup some more support for toggling point cloud legend items
2020-12-03 07:23:44 +01:00
Nyall Dawson
91048d4be8
Add possibility for point cloud renderers to create checkable legend nodes
...
(not implemented for any renderers yet)
2020-12-03 07:23:44 +01:00
Nyall Dawson
9bcdcf687a
Add possibility for QgsRasterSymbolLegendNode nodes to be checked (API only, doesn't actually expose support for checkable raster classes!)
2020-12-03 07:23:44 +01:00
Nyall Dawson
902cb3debd
Move QgsSymbolLegendNode checkAll/uncheckAll/toggle methods up to
...
QgsLayerTreeModelLegendNode base class
Preparing the way for other legend node types to offer checkable support
2020-12-03 07:23:44 +01:00
Nyall Dawson
2d325940a9
Add method to QgsPointCloudDataProvider to retrieve a polygon representing
...
the best available indication of the actual point cloud bounds
2020-12-03 07:18:07 +01:00
Nyall Dawson
26fb54ef0f
Add pointCount to QgsPointCloudLayer
2020-12-03 07:18:07 +01:00
Vincent Cloarec
761831e6ec
fix displaying enabled/disable mesh dataset group
2020-12-03 07:32:17 +10:00
Nyall Dawson
6a6b77a145
Implement legends for point clouds with the Attribute By Ramp renderer
2020-12-02 21:58:02 +10:00
Loïc Bartoletti
d6ac6c4029
Fix since version for bisector method
2020-12-02 19:46:13 +10:00
Nyall Dawson
ecd486499c
Add method to retrieve point count for layers
2020-12-02 19:14:58 +10:00
Nyall Dawson
ff672c4bd8
Add API to retrieve counts for classification classes
2020-12-02 19:14:58 +10:00
Nyall Dawson
55035a7b0a
Add point cloud classification codes
2020-12-02 19:14:58 +10:00
Nyall Dawson
e70c6980a4
Use point cloud metadata statistics to pick a much better default
...
2d renderer for point clouds
2020-12-02 19:14:58 +10:00
Nyall Dawson
3df0469229
[pointclouds] Add API to retrieve precalculated attribute statistics
...
from the provider metadata
This method only returns existing statistics, it cannot be used
to calculated new ones!
2020-12-02 19:14:58 +10:00
Nyall Dawson
fc3d61aaea
Cleanups, unit tests
2020-12-02 15:54:24 +10:00
Nyall Dawson
1581bb8cdf
Use full featured color ramp shader
2020-12-02 15:54:24 +10:00
Nyall Dawson
af280eb124
Move old dummy point cloud renderer code to proper QgsPointCloudAttributeByRampRenderer class
...
And remove duplicate non-functional symbology tab in point cloud layer properties
2020-12-02 15:54:24 +10:00
Nyall Dawson
8ba9866c6b
Move some code to reusable methods in QgsPointCloudRenderer
2020-12-02 15:54:24 +10:00
Loïc Bartoletti
0f292cfb36
[API] Improve isValid method for curve type
2020-12-02 06:32:54 +10:00
Loïc Bartoletti
5f36925189
[API] Add asGml methods to QgsCircle
2020-12-02 06:32:00 +10:00
Alessandro Pasotti
c71a2ca589
Merge pull request #40360 from elpaso/server-cold-start-speed-boost
...
Server: skip initial style storage
2020-12-01 14:50:47 +01:00
Nyall Dawson
d842a96579
Fix incorrect handling of unsigned short values in point cloud providers
...
These were getting incorrectly treated as signed short values, and
accordingly were subject to overflows
2020-12-01 17:19:54 +10:00
Alessandro Pasotti
9aa281abb4
Server: skip initial style storage
...
Background: at project load time for all layers a copy of the style
is loaded and stored as a DOM document. This was implemented for
broken layers to make it possible to store the style back to the
project if a broken layer was kept in the project.
Of course this is not needed nor useful in a server context.
By introducing a new project load flag and using it in the server
config (projects) cache we allow to skip the initial storage of
styles for the server and cut the startup times of our test "monster"
project (~1000 PG layers) from 26 seconds to 15.
Before you ask: I chose to always store the original style
with the idea that we might have been able to use the original
style copy also to "restore" styles to their initial state.
This was never implemented, so I guess we might be good to
make the initial style copy selectively available for broken
layers only in order to speed up project loading in the general
case (desktop).
2020-11-30 18:44:44 +01:00
Nyall Dawson
0c7df50126
Add framework for calculating the overall elevation/z range of a QgsProject
2020-11-28 16:45:54 +10:00
Nyall Dawson
2632627d39
Add point cloud implementation of QgsMapLayerElevationProperties
2020-11-28 16:45:54 +10:00
Nyall Dawson
89a7e3c7f7
Implement responsive map refresh when canvas z range changes
2020-11-28 16:45:54 +10:00