106 Commits

Author SHA1 Message Date
Nyall Dawson
928e3ee2fe Dox 2021-05-05 06:57:58 +10:00
Nyall Dawson
2f77f6f015 Dox++ 2021-05-05 06:57:58 +10:00
Nyall Dawson
755182c134 Expose more geos methods 2021-05-05 06:57:58 +10:00
Nyall Dawson
f22c63ec77 Rely on upstream GEOS makevalid algorithm for GEOS 3.9+
No point having our own internal fork of this code now that it's
included (and more importantly, maintained) upstream!
2021-04-29 08:45:25 +10:00
Nyall Dawson
1c11a91811 Add QgsGeometry::normalize()
A port of the equivalent method from GEOS, but with added support
for curved geometries and M values

Reorganizes the geometry into a normalized form (or "canonical" form).

Polygon rings will be rearranged so that their starting vertex is
the lower left and ring orientation follows the right hand rule, collections
are ordered by geometry type, and other normalization techniques are applied.
The resultant geometry will be geometrically equivalent to the original geometry.
2021-04-29 05:33:25 +10:00
Nyall Dawson
9c4375b4c7 Add QgsGeometry::isAxisParallelRectangle for checking whether
a geometry is a axis-parallel rectangle

Credit to @stefanuhrig
2021-04-24 06:25:02 +10:00
Denis Rouzaud
ba8a445850 run sipify 2021-03-22 21:13:52 +01:00
Nyall Dawson
7dfef3a0b1 Newer doxygen versions don't auto convert the first line in a class'
documentation to a brief note, so we have to do it explicitly...
2021-02-19 08:15:29 +10:00
Loïc Bartoletti
e336b831c2 Remove automagic fix and tiny refacto 2021-02-13 09:25:19 +10:00
Loïc Bartoletti
7e7732218b Add a message if a geometry was fixed 2021-02-13 09:25:19 +10:00
Nyall Dawson
50b9beaad6 [sipify] Catch more class references and insert :py:class: annotations 2021-01-31 05:41:22 +10:00
Harrissou Sant-anna
8a8d2a2c66 Fix some formatting in pyQGIS doc 2021-01-30 08:25:03 +10:00
tschmetzer
df0950c6e6
Rename variables for a more intuitive documentation 2020-10-30 09:13:26 +10:00
Even Rouault
7ac4b51885 Add QgsGeometry::wkbSize() 2020-10-19 09:25:10 +10:00
Nyall Dawson
746ee315bd Fix boolean literal presentation in dox/PyQGIS docs 2020-10-16 16:03:26 +10:00
Nyall Dawson
f8222f0f16 [processing] Skip redundant and potentially expensive duplicate intersection
test in Split With Lines algorithm
2020-10-15 12:40:30 +10:00
Nyall Dawson
4ee9feb56b Sipify 2020-10-09 11:20:09 +10:00
Nyall Dawson
fe5615ea44 Hold the GIL for more geometry related methods 2020-09-18 11:50:27 +10:00
vcloarec
e022b3eb5c renaming and typo 2020-07-29 21:32:17 -04:00
vcloarec
f7a16c5fd3 fix doc and pass map tool reshape test 2020-07-29 12:49:44 -04:00
vcloarec
24b1b3b4c0 split vector feature with QgsCurve 2020-07-29 12:49:44 -04:00
Dmitry Shachnev
ae8b427fe9 Replace deprecated sipMappedType with sipTypeDef 2020-07-21 13:18:40 +10:00
Nyall Dawson
88583210a2 Minor cleanup: move guts of oriented minimum bounding box calculation to QgsInternalGeometryEngine 2020-07-16 08:44:51 +10:00
Nyall Dawson
33f31d826a Fix QgsGeometry::asQPolygonF doesn't handle multipolygon inputs
gracefully
2020-07-03 04:03:47 +10:00
Denis Rouzaud
7fb552d62d fix layout 2020-06-19 08:47:23 +10:00
Denis Rouzaud
044a05d828 run sipify 2020-06-19 08:47:23 +10:00
Matthias Kuhn
91f1485a6e
Merge pull request #36514 from lbartoletti/fix_interpolation_split
[BUGFIX] Fix interpolation on split geometry
2020-06-15 08:45:59 +02:00
Nyall Dawson
74400c7ff8 Some fixes to numbered list handling in dox/PyQGIS API 2020-06-15 13:43:58 +10:00
Nyall Dawson
81a9db9f57 [sipify] Fix creation of cross references 2020-06-15 13:43:58 +10:00
Nyall Dawson
e653711509 QgsGeometry::error() does not exist, should be lastError() 2020-06-15 13:43:58 +10:00
Nyall Dawson
a5101f2ade [sipify] Fix header formatting 2020-06-13 16:49:14 +10:00
Nyall Dawson
cedd73ee4d More list formatting fixes 2020-06-13 16:49:14 +10:00
lbartoletti
04c3c0124f add an explanation 2020-06-12 15:39:36 +02:00
lbartoletti
e69116fb34 revert changes in qgsgeometry.sip 2020-06-11 07:50:49 +02:00
Nyall Dawson
ae42850d08 Sipify 2020-06-11 13:29:59 +10:00
Nyall Dawson
c795ddb1e9 Updates 2020-06-11 13:29:59 +10:00
Nyall Dawson
d3a54eed6f Add flags to control geometry to WKB export behavior
With initial flag to force conversion of triangle types to polygons
2020-06-11 05:32:26 +10:00
Andrea Giudiceandrea
5075e4433b Fix QgsGeometry constParts() example code
it wrongly refers to parts() instead of constParts()
2020-05-26 06:54:23 +10:00
uclaros
24cda403da why u no sipify? 2020-05-20 05:01:20 +10:00
lbartoletti
bd7e9d6e11 [WIP][BUGFIX] Fix interpolation on split geometry 2020-05-18 11:56:07 +02:00
olivierdalang
68582a6e84 [tracing curves] experimental notice 2020-05-14 16:12:29 +02:00
olivierdalang
ab423ca2a4 Add "convert to curves" algorithm followup 2020-05-12 17:54:43 +02:00
Nyall Dawson
78c86ef6ca Move geometry handling guts of QgsVectorLayerUtils::makeFeaturesCompatible
to a new method in QgsGeometry
2020-04-07 17:05:44 +10:00
lbartoletti
364dc3fd4f
Fix multi split for multilinestring (#34510)
* Fix multi split for multilinestring
2020-03-20 13:23:11 +01:00
Nyall Dawson
2a7f9c32c7 Add missing const 2019-10-28 14:34:30 +10:00
Denis Rouzaud
2406837650
replace deprecated in by deprecated since (#32260) 2019-10-15 15:56:54 +02:00
Denis Rouzaud
758d7cff4a run sipify to update deprecation annotations 2019-10-15 13:17:38 +02:00
Nyall Dawson
d5749f8713 Deprecated QgsGeometry::createPolylineFromQPolygonF and
QgsGeometry::createPolygonFromQPolygonF

These were internal details which should never have been exposed
to public API
2019-10-07 07:03:34 +10:00
Nyall Dawson
eb59842f31 C++ API for generating random points inside geometry
Adds an optimised c++ method for generating random points inside
a polygon geometry, using a tessellation based approach to
avoid the inefficiencies of the brute force filtered-random-points-within-extent
approach.
2019-10-05 12:13:14 +10:00
lbartoletti
aa99f89caf deprecate methods in qgsvectorlayereditutils. Better deprecated dox. 2019-10-03 13:33:46 +10:00