62 Commits

Author SHA1 Message Date
Nyall Dawson
8f63af56a9 Use QVariantMap instead of QMap<QString, QVariant> 2021-01-04 13:05:54 +01:00
Belgacem
9bd4673e35 Added tests 2021-01-04 10:20:04 +10:00
Belgacem
c6ad05d79c Address reviews 2021-01-04 10:20:04 +10:00
Belgacem
16a8ef5be6 Use geometry engine 2021-01-04 10:20:04 +10:00
NEDJIMAbelgacem
6a0e0188ae Add returned point clouds limit 2021-01-04 10:20:04 +10:00
NEDJIMAbelgacem
c993eb5dba remove root error from identify in the provider 2021-01-04 10:20:04 +10:00
NEDJIMAbelgacem
8ec26000b4 remove layer and elevation properties 2021-01-04 10:20:04 +10:00
NEDJIMAbelgacem
ef9d2727a6 make single click identify work 2021-01-04 10:20:04 +10:00
NEDJIMAbelgacem
8178add788 Address Nyall suggestions 2021-01-04 10:20:04 +10:00
Nyall Dawson
7b141e92f0 Also add scaling factor option, test 2020-12-16 13:58:20 +10:00
Nyall Dawson
1963ef9784 [pointclouds] Add an elevation tab in layer properties, and allow
users to set a manual offset to apply to point cloud z values

This allows for adjustment of the elevation of point clouds, eg so that:
1. They match nicely with point clouds from other datasources
2. Users can use point clouds from sources with arbitrary z values,
eg. a point cloud made by opendronemap without any actual reference
z values available
2020-12-16 13:58:20 +10:00
Nyall Dawson
767d8a3835 Drop default 2d max error even further (0.3 now) 2020-12-10 04:03:40 +10:00
Nyall Dawson
56169d3e9e Lower default screen error for 2d point cloud renders 2020-12-10 04:03:40 +10:00
Nyall Dawson
d080626807 Fix warning 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
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
6a6b77a145 Implement legends for point clouds with the Attribute By Ramp renderer 2020-12-02 21:58:02 +10:00
Nyall Dawson
bdac7fd899 Lower the default maximum error for 2d point cloud rendering
The previous default resulted in far too sparse point cloud rendering by default
2020-12-02 19:14:58 +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
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
Nyall Dawson
775320e095 Implement z range filtering for point clouds 2020-11-28 16:45:54 +10:00
Nyall Dawson
acbeebe32a [pointclouds] Expose option to set point size for 2d point cloud renders 2020-11-19 15:49:43 +01:00
Nyall Dawson
0d3ccf7040 Move setting for maximum screen error to QgsPointCloudRenderer, expose in GUI 2020-11-16 19:38:07 +10:00
Nyall Dawson
1758ca143f Add shell for 2d renderer config to layer styling dock 2020-11-16 19:38:07 +10:00
Nyall Dawson
5158922428 Default to a RGB renderer for point clouds with Red/Green/Blue attributes present 2020-11-13 02:59:05 +10:00
Nyall Dawson
cc212c411d Mark class as private 2020-11-13 02:59:05 +10:00
Nyall Dawson
948a7dc9bc Move some common code to base class 2020-11-13 02:59:05 +10:00
Nyall Dawson
a6d61c000a Start on registry for 2d point cloud renderers 2020-11-13 02:59:05 +10:00
Nyall Dawson
551cbe14d1 Fully hook up dummy renderer 2020-11-13 02:59:05 +10:00
Nyall Dawson
2753b56fd5 Fix build 2020-11-13 02:59:05 +10:00
Nyall Dawson
11a62615b2 Move old dummy 2d renderer to temporary QgsDummyPointCloudRenderer class 2020-11-13 02:59:05 +10:00
Nyall Dawson
1feccd1ea1 Add more methods to QgsPointCloudRenderer class 2020-11-13 02:59:05 +10:00
Nyall Dawson
1a2d6ec5d5 Add scale, offset and counter for points rendered to QgsPointCloudRenderContext 2020-11-13 02:59:05 +10:00
Nyall Dawson
abbd634b44 API shell for QgsPointCloudRenderer 2d point cloud renderer 2020-11-13 02:59:05 +10:00
Nyall Dawson
5924ff7cf5 Move guts of qgspointcloudrenderer.* to qgspointcloudlayerrenderer.* 2020-11-13 02:59:05 +10:00
Nyall Dawson
5375508f72 Fix cppcheck warning 2020-11-12 17:33:37 +10:00
Nyall Dawson
eedea2694e Quick hack and add combo box to select attribute for 2d point cloud rendering
For proof of concept testing only!
2020-11-12 17:33:37 +10:00
Nyall Dawson
00b9da6474 Private 2020-11-10 02:17:10 +10:00
Nyall Dawson
4812f461e8 Fix leak in point cloud 2d renderer 2020-11-06 14:26:21 +10:00
Peter Petrik
e1f1af7844 traverse tree in 2D rendering by map error 2020-11-05 13:54:00 +01:00
Peter Petrik
3dec432cb6 [pointclouds] add basic structure for PDAL layer 2020-11-04 21:56:09 +01:00
Nyall Dawson
d446600111 Update for QCOMPARE sensitivity to numeric types 2020-11-04 16:33:47 +10:00
Peter Petrik
ce466a4726
[pointclouds] QgsPointCloudBlock (#39651)
* introduce qgspointcloudblock

* expand attributes based on request

* add point cloud request

* fix header

* fix rendering

* fix build

* fix build

* fix builds

* intent

* fixes after Martin's review
2020-10-30 08:57:24 +01:00
Nyall Dawson
422a16399e Add hacky way to configure 2d renderer via layer custom properties for now 2020-10-27 05:29:14 +10:00
Peter Petrik
29113a89c1 fix some checks and building 2020-10-27 05:29:14 +10:00
Nyall Dawson
0a91678a79 Fix build 2020-10-27 05:29:14 +10:00
Nyall Dawson
4e94abc31f Rename QgsPointCloudRenderer to QgsPointCloudLayerRenderer
This follow the pattern of QgsVectorLayerRenderer, QgsRasterLayerRenderer,
etc and disambiguates the layer renderer from the 2d renderer
itself.
2020-10-27 05:29:14 +10:00
Nyall Dawson
40ff7127d0 Mark QgsPointCloudRendererConfig as private for now 2020-10-27 05:29:14 +10:00