173 Commits

Author SHA1 Message Date
pathmapper
4344d083ec Make sipify_all.sh happy
This change was made when running sipify_all.sh .
2022-06-16 08:21:05 +10:00
Jean Felder
a72dcb33fd
qgs3dmapsettings: Store debug overlay enabled flag
This stores the debug overlay visibility flag (mIsDebugOverlayEnabled)
even if it cannot be used (it needs at least Qt version 5.15). Its
default value is set to false to prevent any issue if the debug
overlay cannot be enabled.
This parameter is transient: it is not saved in the project
parameters.

The next commit will allow to this change this setting with
Qgs3DMapConfigWidget.
2022-06-08 17:29:27 +02:00
bdm-oslandia
faa8877160 add new 3Daxis option page in 3d settings
* add Qgs3DAxisSettings class to handle 3d axis parameters
* remove 3daxis configuration from 3d navigation widget
2022-06-02 16:58:30 +02:00
NEDJIMAbelgacem
e24f5cbbef Add transparency support for phong materials 2022-05-13 08:00:08 +02:00
Nyall Dawson
e15b458f64 Remove deprecated methods 2022-04-27 11:50:13 +10:00
Nyall Dawson
5e831971cc Cleanup light source handling in API 2022-04-27 11:50:13 +10:00
Nyall Dawson
8520d7ed27 Move some methods to lighting classes 2022-04-27 11:50:13 +10:00
Nyall Dawson
9803439f5e Add a base class for light sources 2022-04-27 11:50:13 +10:00
Nyall Dawson
d42f2792d2 Move lighting classes to subfolder 2022-04-27 11:50:13 +10:00
Nyall Dawson
c555295d89 Fix crash when terrain is disabled in 3d map settings
We were using the Qgs3dMapSettings::terrainGenerator for two different
purposes -- one was to retrieve the settings of the generator, and
the other was as a shortcut to determine if the terrain was enabled
and a generator set.

Disambiguate this and avoid a crash when terrain rendering is disabled
in the 3d map settings
2022-04-22 02:34:46 -07:00
uclaros
df740b4d0b address review 2022-04-04 02:57:00 -07:00
uclaros
c16e9a204c Sync pointcloud layer's 3d renderer style with 2d renderer 2022-04-04 02:57:00 -07:00
NEDJIMAbelgacem
1577174ffb fix tests 2022-03-21 07:56:39 -07:00
NEDJIMAbelgacem
60144d7645 switch to flag based approach for 2D/3D sync 2022-03-21 07:56:39 -07:00
NEDJIMAbelgacem
9141d05d59 - Change extent to trapezoid shape
- Visualize the viewed area using QgsRubberBand
-  Address reviews
2022-03-21 07:56:39 -07:00
NEDJIMAbelgacem
e38a879378 initial implementation 2022-03-21 07:56:39 -07:00
Nyall Dawson
36d649fa83 When creating a new 3d map, set the initial terrain settings for the
map to match the project's terrain settings
2022-03-19 05:58:37 +10:00
vcloarec
bfbc62d613 add direction in shader for classification 2022-03-08 07:53:50 -08:00
vcloarec
c8ff57b8d0 sipify 2022-03-08 07:53:50 -08:00
vcloarec
475b82bcef fix spelling and doc 2022-03-08 07:53:50 -08:00
vcloarec
fe64784e93 filter by height 2022-03-08 07:53:50 -08:00
vcloarec
bbd2f579ee fix point cloud triangulation with classification
sipify
2022-03-08 07:53:50 -08:00
vcloarec
434e7028dc filter before triangulation
no vertical filter before and remove exterior triangles


finalize


leftover


typo, const and other leftovers


fix big triangles filter


Stefanos review
2022-03-08 07:53:50 -08:00
Nyall Dawson
63e2d1ec16 Newly created 3d symbols for a vector layer default to inheriting
appropriate parameters from the layer's elevation settings
2022-03-03 06:15:10 +10:00
Nyall Dawson
5395d87d7f Move altitude clamping/binding enums to Qgis namespace, promote to enum
class
2022-03-03 06:15:10 +10:00
Vincent Cloarec
9965eccdce
Template parameter {usage} for XYZ raster and vector tiles (#46731) 2022-01-13 15:11:31 +01:00
NEDJIMAbelgacem
66b481ac36 use QgsProjectDirtyBlocker instead of connect disconnect dance 2022-01-12 13:46:49 +10:00
NEDJIMAbelgacem
96f7c474bf remove dirtifying the project on hide & show and add proper project dirtyfing when the project changes 2022-01-12 13:46:49 +10:00
Nedjima Belgacem
b88b080777
Camera navigation improvements (#45979)
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).
2022-01-05 12:13:25 +01:00
Sandro Mani
18d598ba4a Set release_gil = True when generating bindings 2021-11-04 08:51:00 +11:00
Juergen E. Fischer
c6008b7ee1 fix MSVC build: reverts fee62e4, dff05dd and e3a77b9484c effectivly
reverting 3fb0f66 (followup #45348)

Using --no-public-is-protected (default on Windows) also works on Linux
and fixes #45331 too
2021-10-21 23:03:48 +02:00
nirvn
ef84e48a09 Run sipify_all.sh 2021-10-12 16:34:05 +10:00
Denis Rouzaud
ec16736306 run sipify 2021-10-12 16:34:05 +10:00
Sandro Mani
6fd34ca92b Add sip5/sip6 sip-build support 2021-09-24 08:56:40 +10:00
Nedjima Belgacem
826c6a7c36
Disble layer rendering to 3D terrain texture for 3D rendered layers (#44367)
* add optional layer rendering to 3D terrain

* remove terrainLayers from Qgs3DMapSettings

* fix tests

* switch to layer terrain rendering when no 3d renderer is set

* fix mesh tests to handle terrain being disabled
2021-08-11 11:38:59 +02:00
Nedjima Belgacem
298a4514ec
Make 2d terrain rendering optional (#43489)
First part of https://github.com/qgis/QGIS-Enhancement-Proposals/issues/215
2021-07-14 10:09:48 +02:00
Denis Rouzaud
d2e899547c sipify all 2021-05-31 09:36:21 +02:00
Nyall Dawson
b5dfe8f155 Refactor enum handling
- Add enums to qgis.h instead of qgscoreenums, so that they belong to
a Qgis namespace
- Split up the various symbol headers into multiple files so that we
can fine-tune their inclusion and forward declare more readily, speeding
up recompilation
- Move QgsSymbol enums to qgis
2021-05-18 16:59:22 +10:00
Nedjima Belgacem
e4f74ed90a
[remote EPT] [point cloud] fix UI freeze bug (#42965)
* fix UI freeze bug

* fix spelling

* fix spelling

* refactor a bit of the code

* rename getPointCloudBlock to pointCloudBlock

* use a feedback object instead of cancelled callback

* do not use QMetaObject::Connection

* Qgs3DRenderContext doesn't need to be QObject

* remove Q_OBJECT
2021-05-04 10:12:46 +02:00
Denis Rouzaud
ba8a445850 run sipify 2021-03-22 21:13:52 +01:00
Nyall Dawson
def799810d Spelling, sip 2021-03-10 11:11:46 +10:00
Alessandro Pasotti
7b2fc4c1f8 More doxy nonsense, pt 2 2021-02-19 08:15:29 +10:00
NEDJIMAbelgacem
5de28dd580 return maximum screen space in 3D 2021-02-10 13:49:28 +01:00
Belgacem
6019168a86 make point cloud rendering better and make UI for point budget 2021-02-10 13:49:28 +01:00
Nyall Dawson
50b9beaad6 [sipify] Catch more class references and insert :py:class: annotations 2021-01-31 05:41:22 +10:00
Nyall Dawson
7f3b40772a Fix build 2021-01-14 08:15:57 +10:00
Belgacem
0318ff768d add movement speed combobox 2021-01-14 08:15:57 +10:00
Belgacem
44d39becf3 initial fly mode implementation 2021-01-14 08:15:57 +10:00
Nyall Dawson
39307900c6 When a point cloud is first added to a project, default to setting
a 3d renderer on it to match its 2d renderer

It just makes sense!
2020-12-10 04:03:40 +10:00
NEDJIMAbelgacem
14ff8e3489 initial implementation 2020-12-08 16:29:14 +01:00