Nyall Dawson
d1aa03a09b
Better clip for very separate features
2016-08-03 13:41:22 +10:00
Nyall Dawson
71ebdb8f69
[FEATURE] Optimise processing clip algorithm
...
Before the algorithm was written to optimise clipping a few
features against thousands of mask features. The revised algorithm
is optimised for clipping thousands of input features against
a few mask features.
Given that this second operation is much more likely, it makes
sense to optimise for this use case.
I've also applied some other optimisations like taking advantage
of spatial indexes on the providers, using prepared geometries
and also only applying an intersection operation if the geometry
isn't wholly contained by the mask geometry.
Benchmarks:
clipping roads layer with 1 million lines against 2 polygons
before: 5 mins 30 seconds
after: 10 seconds
clipping address layer with 5 million points against 2 polygons
before: 50 minutes
after: 30 seconds
2016-08-03 13:15:03 +10:00
Nyall Dawson
60147e8147
Remove use of constGeometry
2016-08-02 13:50:59 +10:00
Nyall Dawson
bb54b4f41a
[FEATURE] Make processing dissolve algorithm accept multiple fields
...
This allows you to dissolve based on more than one field value
2016-08-02 11:54:02 +10:00
Nyall Dawson
0455b6600d
[processing] Fix multipart to singlepart handling of null geometry
2016-08-02 11:53:11 +10:00
Nyall Dawson
ccfd4c36be
[processing] Add test for dissolve using field values
2016-08-02 11:52:37 +10:00
Nyall Dawson
30fcaed634
[FEATURE][processing] New algorithm for merging connected lines
...
This algorithm joins all connected parts of MultiLineString
geometries into single LineString geometries.
If any parts of the input MultiLineString geometries are not
connected, the resultant geometry will be a MultiLineString
containing any lines which could be merged and any non-connected
line parts.
2016-08-02 11:51:44 +10:00
Nyall Dawson
e259e62941
Merge pull request #3349 from nyalldawson/feature_geom
...
Mega API break - fix QgsFeature geometry getters/setters
2016-08-02 09:21:25 +10:00
Nyall Dawson
b7ca001c9c
Add __nonzero__ and __bool__ methods to QgsGeometry
2016-08-02 08:39:58 +10:00
Alexander Bruy
1d2b0b4ca7
[processing] don't apply additional parameter if offset curve operation is used ( fix #15342 )
2016-08-01 15:26:58 +03:00
Nyall Dawson
bd7d913379
Refine QgsFeature geometry getters/setters
...
All pointer based methods have been removed.
Now we have only:
void setGeometry( const QgsGeometry& geom )
and
QgsGeometry geometry() const
Benefits include avoiding a whole lot of tricky pointer lifetime
issues, potential memory leaks, and finally closing #777 , which
has survived for over 9 years!...
Impacts on PyQGIS code:
- no more need for the messy
g = QgsGeometry( feature.geometry() )
workaround, just use g = feature.geometry() instead
- IMPORTANT: you can no longer test whether a feature has geometry
using `if f.geometry():`, since QgsFeature::geometry() will
*always* return an object. Instead, use
`if not f.geometry().isEmpty():`, or preferably the new method
`if not f.hasGeometry():`
Fix #777
2016-08-01 16:25:46 +10:00
Alexander Bruy
7f6bae1f5e
[processing] use '-te_crs' parameter only if supported by GDAL
2016-07-28 13:39:22 +03:00
Alexander Bruy
b3a38f4018
[processing] fix issues with exported layers in GDAL provider
2016-07-26 15:00:26 +03:00
Alexander Bruy
6ccf7264a6
[processing] fix condition in warp alg
2016-07-26 15:00:26 +03:00
Alexander Bruy
2fbb617d61
[processing] also fix case without dissolving
2016-07-22 15:43:04 +03:00
Alexander Bruy
9976c30c9a
[processing] fix buffer tool
2016-07-22 15:37:16 +03:00
Nyall Dawson
1a2231f10c
Rename QGis class to Qgis, for capitalisation consistency
2016-07-21 22:01:38 +10:00
volaya
6c486758c2
[processing] changed saga decorated group name
2016-07-21 07:01:16 +02:00
Matthias Kuhn
143cfab104
[processing] Difference: don't ignore invalid geometries by default
...
Fix #9297
2016-07-04 00:43:36 +02:00
Matthias Kuhn
f6710b0528
python3 fixes
2016-07-03 14:54:26 +02:00
Alexander Bruy
a12152c724
Merge pull request #3238 from medspx/processing_g7_raster_tests
...
[processing] more grass7 unit tests and their fixes
2016-06-29 19:49:58 +03:00
Alexander Bruy
1b60b088a2
[processing] support more field types
2016-06-27 14:18:31 +03:00
Médéric RIBREUX
2a98098c13
Fix r.li interfaces
2016-06-26 16:12:03 +02:00
Médéric RIBREUX
758f917ecb
Fix r.his
2016-06-26 12:48:31 +02:00
Médéric RIBREUX
b68800e188
Fix r.fillnulls
2016-06-26 12:36:27 +02:00
Médéric RIBREUX
25411c733c
Fix r.composite
2016-06-26 11:58:19 +02:00
Alexander Bruy
87fea73647
[processing] add support for longlong fields in spatial join alg ( fix #15072 )
2016-06-24 15:10:49 +03:00
Alexander Bruy
c81b14d59e
[processing] replace original layer name with exported in the final OGR command ( fix #15099 )
2016-06-22 15:16:32 +03:00
Alexander Bruy
b9b8d37cc0
[processing] add "-te_srs" option to gdal_warp ( fix #15033 )
2016-06-22 12:45:33 +03:00
Alexander Bruy
acc8274c87
remove debug output
2016-06-22 11:07:14 +03:00
Alexander Bruy
e4c1d896e9
[processing] fix gdal_contour algorithm
2016-06-22 11:05:05 +03:00
Alexander Bruy
e0c9733f64
[processing] speedup Hub distance algorithm ( fix #15012 )
2016-06-21 16:56:21 +03:00
Matteo
f3bbf897d2
Small fix in write.csv option ( #3225 )
2016-06-20 21:23:05 +02:00
Juergen E. Fischer
3a91d92d56
translation string fixes
2016-06-15 11:43:57 +02:00
Alexander Bruy
aa9fe9ecd0
Merge pull request #3118 from arnaud-morvan/processing_gdal_postgis_credentials
...
[processing] support postgis service parameter and credentials input
2016-06-14 15:19:03 +03:00
Alexander Bruy
4b7fc98e33
Merge pull request #3130 from arnaud-morvan/processing_gdal_shapeencoding
...
[processing] Add SHAPE_ENCODING parameter in GDAL "to postgis" algorithms
2016-06-14 14:51:14 +03:00
Alexander Bruy
0553f7b33b
[processing] allow 2.5D geometries ( fix #14929 )
2016-06-13 11:44:08 +03:00
Médéric RIBREUX
9011becb6f
Fix r.aspect and r.slope algorithms
2016-06-12 17:19:29 +02:00
Médéric RIBREUX
8aad144ff5
Fix r.topidx, r.viewshed and r.volume description files
2016-06-12 16:48:38 +02:00
Médéric RIBREUX
cb1fec07bb
Remove r.sum because it doesn't exists anymore in GRASS7
2016-06-12 16:48:06 +02:00
Alexander Bruy
48949d642f
[processing] improve error message text (refs #14929 )
2016-06-10 15:30:03 +03:00
Alexander Bruy
895b9558b5
Merge pull request #3166 from nirvn/fix_processing_refactor_fields
...
[processing] fix missing quotes to field name in refactor fields
2016-06-10 10:59:00 +03:00
rldhont
021da12c9f
[BUGFIX][Processing] RScript: Insert None value as NULL
2016-06-06 15:18:10 +02:00
rldhont
2a746f493f
[BUGFIX][Processing] RScript: Add name token
2016-06-06 15:07:20 +02:00
nirvn
14342ce65a
[processing] fix missing quotes to field name in refactor fields
2016-06-05 09:32:51 +07:00
Matthias Kuhn
e7b04f24f9
Tabs > Spaces
2016-06-04 12:34:42 +02:00
arnaud.morvan@camptocamp.com
8ddae27130
[Processing] Support authentication with postgis
2016-06-03 17:09:31 +02:00
Alexander Bruy
62582098b9
Merge pull request #3169 from medspx/processing_grass7_rinlidar
...
[processing] add GRASS 7 r.in.lidar algorithms
2016-06-03 10:41:05 +03:00
Marco Bernasocchi
f9ab7223fc
[processing] ParameterTableMultipleField type added
...
This adds a widget with multiple column attributes selector
2016-06-03 09:27:51 +02:00
Juergen E. Fischer
e07986009f
more typo fixes
2016-06-02 22:36:32 +02:00