Nyall Dawson
519c32a3ff
Hold GIL for more methods
2023-08-03 15:27:22 +10:00
Nyall Dawson
c3159d5a28
Add method to get corners of QgsBox3D
2023-08-03 15:27:22 +10:00
Nyall Dawson
5bdbcc4f6c
Add more helpful methods for 3d objects
2023-08-03 15:27:22 +10:00
Nyall Dawson
6c24fa8571
Add some more convenience methods for QgsOrientedBox3D
2023-08-03 15:27:22 +10:00
bdm-oslandia
e0f71afeaa
qgsgeometry: Add fromBox3D constructor
2023-07-26 09:17:17 +02:00
bdm-oslandia
4c23966008
qgsgeometry: Add fromPoint constructor
2023-07-26 08:58:49 +02:00
Martin Dobias
ecc1bf2c19
sip fix
2023-07-20 14:03:55 +02:00
Martin Dobias
e8f0e1cca1
fixes after rebase
2023-07-20 14:03:55 +02:00
Martin Dobias
5e3c230262
Small additions to QgsBox3d and QgsOrientedBox3D API
...
- operators to move QgsBox3d by a QgsVector3D
- reproject QgsOrientedBox3D and get its axis-aligned bounding box
- get length of sides of QgsOrientedBox3D
- transform QgsOrientedBox3D with a QgsMatrix4x4
2023-07-20 14:03:55 +02:00
Nyall Dawson
5967344117
Rename QgsBox3d to QgsBox3D for consistency, monkey patch in old
...
name for PyQGIS compatibility
2023-07-20 15:31:00 +10:00
Nyall Dawson
aafd4f96fe
Add more efficient multipoint constructor which can avoid point cloning
2023-07-19 16:52:05 +10:00
Nyall Dawson
78ecd083d3
Add a bunch of optimised/easier to use constructor variants
...
for creating QgsMultiPoint objects
2023-07-19 16:52:05 +10:00
Nyall Dawson
9e5015aa47
Add equality operators for QgsOrientedBox3D
2023-07-18 12:35:45 +02:00
Nyall Dawson
8beb6a08c4
Add method to get corners of oriented box 3d
2023-07-18 12:35:45 +02:00
Nyall Dawson
c4b3608462
Rename to QgsOrientedBox3d
2023-07-16 14:43:38 +10:00
Nyall Dawson
8ca716907e
Move QgsOrientedBoundingBox out to own file
2023-07-16 14:43:38 +10:00
Nyall Dawson
f5b4fbd9f1
Add QgsSphere::centerVector for returning center of sphere as a
...
vector
2023-07-16 14:43:38 +10:00
Nyall Dawson
5ab122bc62
Add new class QgsSphere for representing 3d spheres
2023-07-16 14:43:38 +10:00
bdm-oslandia
80a9043cad
qgsbox3d: Add combineWith methods
2023-07-06 14:12:02 +02:00
bdm-oslandia
1bae6ee1f1
qgsbox3d: Add a new contains method based on x,y,z coordinates
2023-07-06 14:12:02 +02:00
bdm-oslandia
58c161f1b5
qgsbox3d: Add is3D method
2023-07-06 14:12:00 +02:00
bdm-oslandia
06a09f83f3
qgsbox3d: Add support for toString method
2023-07-05 09:12:36 +02:00
bdm-oslandia
0773042adb
qgsbox3d: Add isEmpty method
...
This has is the following logic:
- QgSBox3d().isEmpty() == True
- QgSBox3d().isEmpty(0, 0, 0, 0, 0, 0) == True
- QgSBox3d().isEmpty(1, 1, 1, 1, 1, 1) == True
2023-07-05 09:12:36 +02:00
bdm-oslandia
0f961e890b
qgsbox3d: Add isNull method
...
This has is the following logic:
- QgSBox3d().isNull() == True
- QgSBox3d().isNull(0, 0, 0, 0, 0, 0) == False
- QgSBox3d().isNull(1, 1, 1, 1, 1, 1) == False
2023-07-05 09:12:36 +02:00
bdm-oslandia
6d1a08a5c3
qgsbox3d: Use nan for default values
...
This will be necessary to properly define `isNull` method in the next
commit.
This way, it behaves the same as `QgsPoint`.
Co-Authored by Jean Felder
2023-07-05 09:12:35 +02:00
bdm-oslandia
5293002ad3
qgsbox3d: Add a setMinimal method
2023-07-05 00:39:11 +02:00
bdm-oslandia
34e123e846
qgsbox3d: Add a normalize step parameter to the constructors
...
This allows to choose if a normalization step needs to be applied. It
is set to True by default to allow backward compatibility with the
api.
2023-07-04 17:32:10 +02:00
bdm-oslandia
48800e7802
qgsbox3d: Add 3d optional parameters to the QgsRectangle constructor
2023-07-04 17:32:10 +02:00
Nyall Dawson
4b673bf860
Improve documentation
2023-06-29 20:43:08 +10:00
Nyall Dawson
933db142c5
Add method to test whether 3 points are collinear
2023-06-29 20:43:08 +10:00
Nyall Dawson
b14d42d147
Add method to return the fraction along a line for a point
2023-06-29 20:43:08 +10:00
Denis Rouzaud
2a9b24e666
[pyqgis] fix calling QgsGeometry.splitGeometry with QgsPoint or QgsPointXY ( #53202 )
2023-05-24 22:34:26 +02:00
Nyall Dawson
e456d5a929
Fix hidden overloaded virtual warning
2023-04-09 14:38:28 +10:00
Nyall Dawson
50c76929e1
Followup 30700f1, ensure links to Qgis members are set in docstrings
2023-03-31 10:46:24 +10:00
Alexey Karandashev
30700f1ef1
Fix GeometryType in documentation:
...
QgsWkbTypes::GeometryType to Qgis::GeometryType
and QgsWkbTypes::<geometry>Geometry to Qgis::GeometryType::<geometry>
2023-03-31 10:28:36 +10:00
Nyall Dawson
046883fa9c
Promote QgsWkbTypes enums to enum class, move to Qgis
2023-02-22 12:39:21 +10:00
Nyall Dawson
2dc4d04ac0
Add equality operators for QgsReferencedGeometry
2023-02-21 06:01:44 +10:00
Julien Cabieces
22d2a32e22
Fixes #50742 : keep ZM coordinates when simplifying geometry
2023-02-01 18:54:07 +01:00
Even Rouault
0c8f0106da
Add QgsGeometry::convertToCurvedMultiType()
2023-01-04 00:07:49 +01:00
Antoine Facchini
864ed43b7c
feat(avoidIntersections): add a new return value when the geom is not modified
2022-11-29 17:48:32 +01:00
Damiano Lombardi
619170e4a8
QgsVectorFileWriter map NaN to -DBL_MAX exporting to Shape
2022-11-15 14:02:45 +01:00
Tomas Johansson
95e00c50d2
Resolves 'Delete holes' bug when 'area' argument is used
...
Fixes #49578
2022-10-03 07:58:31 +10:00
Nyall Dawson
1c05421486
Cache summed up area for curve geometry classes
...
Avoids recalculation when area is retrieved multiple times
2022-09-28 15:58:22 +10:00
Nyall Dawson
a4a0e10902
Use QgsGeometryParameters class for specifying grid size instead
...
of dedicated arguments
2022-09-10 06:00:45 +10:00
Loïc Bartoletti
cde06e022b
qgsgeometryengine.h: fix docstring including previsously missing params
2022-09-10 06:00:45 +10:00
Loïc Bartoletti
9c5821a8c1
qgsgeometry.h: subdivde: add previously missing \param for maxNodes
2022-09-10 06:00:45 +10:00
Loïc Bartoletti
2ce57c4037
qgsgeometry.h: fix docstring including previsously missing geometry param
2022-09-10 06:00:45 +10:00
Loïc Bartoletti
4fbc7a9e5f
Fix dox. Add more descriptions and add gridSize documentation
2022-09-10 06:00:45 +10:00
Loïc Bartoletti
2dd6f9f1ee
fix use prec when gridSize <= 0
2022-09-10 06:00:45 +10:00
Loïc Bartoletti
c0c631a9f9
Use precision if compiled with geos >= 3.9
2022-09-10 06:00:45 +10:00