19 Commits

Author SHA1 Message Date
Nyall Dawson
264f426ba9 Expand documentation 2024-04-26 20:26:41 +10:00
Nyall Dawson
9f2b519d7e [api] Add QgsProject::crs3D
Returns the CRS to use for the project when transforming 3D data,
or when z/elevation value handling is important.

The returned CRS will take into account verticalCrs(), e.g. by
returning a compound CRS consisting of crs() + verticalCrs().

This method may still return a 2D CRS, e.g in the case that crs()
is a 2D CRS and no verticalCrs() has been set for the project.
I.E. It is NOT guaranteed that the returned CRS will actually
be a 3D CRS, but rather it is guaranteed that the returned CRS
is **ALWAYS** the most appropriate CRS to use when handling 3D data.
2024-04-26 20:26:41 +10:00
Nyall Dawson
b5a8722446 Improve documentation 2024-04-10 09:05:23 +10:00
Nyall Dawson
37c69d1b60 Add validation to calls to QgsProject.setVerticalCrs 2024-04-10 09:05:23 +10:00
Nyall Dawson
e2a3edc76d [api] Add vertical crs option to QgsProject
If the project crs() is a compound CRS, then the CRS returned
by QgsProject::verticalCrs()  be the vertical component of
QgsProject::crs(). Otherwise it will be the value explicitly
set by a call to setVerticalCrs().

The vertical crs is a persistent property of a project, which
is saved/restored to xml.
2024-04-10 09:05:23 +10:00
Nyall Dawson
07294f7252 Add elevation range to QgsProjectElevationProperties
And expose through Project Properties elevation settings widget

This setting allows users to specify the upper and lower
elevation limits associated with the project. (I.e. its an
equivalent to QgsProjectTimeSettings::temporalRange)
2024-03-09 06:57:53 +10:00
Even Rouault
15ea5c46bc
Header files: remove all mentions of '\since QGIS 3.0' 2024-02-18 20:57:23 +01:00
Even Rouault
02caeb9db7
Header files: remove all mentions of '\since QGIS 2.' 2024-02-18 20:46:01 +01:00
Even Rouault
a5c8f01003
Header files: remove all mentions of '\since QGIS 1.' 2024-02-18 20:46:00 +01:00
Nyall Dawson
0096246afe Sipify 2024-02-13 20:51:03 +10:00
Nyall Dawson
814e6db3b4 Don't map non-list of QVariantMaps to QMap<QString,QVariant>
The original workaround was only supposed to apply to QList/
QVector of QVariantMaps. By replacing them all in sip we
break mapping of signals defined in c++ which are emitted
by Python code.

Fixes exceptions after running processing algorithms in Qt6
builds.
2024-02-12 12:16:14 +10:00
Nyall Dawson
de532a62aa Fix doxygen warning 2024-02-06 21:04:43 +10:00
Nyall Dawson
ac2f1179c8 More item data role enum to enum class conversions 2024-02-06 21:04:43 +10:00
Nyall Dawson
f2c74f377d Sipify 2024-01-31 17:16:18 +10:00
Nyall Dawson
f1e3ba9e2d Use correct sip method
And use INDENT-OFF annotations to avoid astyle messing up
formatting of enum with inline macros
2024-01-31 13:48:49 +10:00
Nyall Dawson
b5aca7c0b5 Promote another enum to enum class 2024-01-31 13:48:49 +10:00
Nyall Dawson
2bef88b031 Correctly add int types to flag style enum classes 2024-01-29 09:44:41 +01:00
Nyall Dawson
4654ad3db5 Sipify 2024-01-23 08:32:38 +01:00
Julien Cabieces
bb3c36a69b Initialize sip bindings for PyQt6
use exactly the ones from PyQt5 so we can study the difference when
generating for PyQt6
2023-12-08 03:38:42 +10:00