1226 Commits

Author SHA1 Message Date
Alexander Bruy
65db336eaf [processing] move some constants to the dataobjects module 2016-09-02 09:28:45 +03:00
Alexander Bruy
80653c7aff [processing] adopt native algs to use output geomerty 2016-09-02 09:28:32 +03:00
Alexander Bruy
13cd4c944f [processing] split some native algs to take advantage of explicit output types 2016-09-02 09:28:32 +03:00
Matthias Kuhn
4a52351127 Merge pull request #3443 from bstroebl/documentProcessing
[processing] Add help for Eliminate sliver polygons
2016-09-01 13:25:37 +02:00
Bernhard Ströbl
7e92d09c5f [processing] Add help for Eliminate sliver polygons 2016-09-01 10:55:08 +02:00
Nyall Dawson
56b77db88c [FEATURE][processing] Add choice of simplification method to simplify
This change allows users to choose which method to use when running
the simplify geometries algorithm, with choices of the existing
distance based (Douglas Peucker) algorithm, area based (Visvalingam)
algorithm and snap-to-grid.

Visvaligam in particular usually results in more cartographically
pleasing simplification over the standard distance based methods.
2016-09-01 08:22:18 +10:00
Nyall Dawson
5d97d03ad5 [processing] Fix simplify alg handling of null goemetry, add tests 2016-09-01 07:50:02 +10:00
Nyall Dawson
f9e508c566 [processing] More efficient point count for simplify algorithm 2016-09-01 07:42:29 +10:00
Nyall Dawson
9fa4e776db [FEATURE][processing] Extract nodes algorithm now saves node
index, distance along line and angle at node

Also correctly handles null geometries
2016-08-29 11:02:14 +10:00
Nyall Dawson
8db9284cb3 [FEATURE][processing] Optimised points along geometry algorithm
Supports also polygon geometries, handles null geometries,
and records the original line angle along with the distance
for each point.
2016-08-29 11:01:48 +10:00
Alexander Bruy
eb308a604d fix open() call 2016-08-23 15:49:03 +03:00
Alexander Bruy
3711a17066 add missed codecs import 2016-08-23 15:18:28 +03:00
Alexander Bruy
d7634bafff remove unused imports 2016-08-23 15:01:39 +03:00
Alexander Bruy
993aa842fb forgot to remove import 2016-08-23 13:34:51 +03:00
Alexander Bruy
640f93e758 [processing] update TauDEM tools to latest TauDEM version 2016-08-23 11:18:50 +03:00
Alexander Bruy
19a6a5fb90 [processing] fix CMakeLists.txt 2016-08-23 11:18:50 +03:00
Alexander Bruy
7866bdadf1 [processing] remove obsolete TauDEM multifile stuff 2016-08-23 11:18:49 +03:00
Alexander Bruy
df248dbe93 fix indentation 2016-08-23 10:17:03 +03:00
Manuel Grizonnet
ce0a2ae062 forget to commit xml descriptors for otb 5.6 2016-08-22 15:56:30 +02:00
Manuel Grizonnet
d772a68472 Update otb processing maintenance files to version 5.6.0 2016-08-22 15:39:41 +02:00
Manuel Grizonnet
bf7db728f3 ENH: update log info when parsing otb apps 2016-08-21 20:55:29 +02:00
Manuel Grizonnet
82f2726d7f ENH: remove useless QApplication and prefer to use QGIS_PREFIX_PATH 2016-08-21 20:34:08 +02:00
Alexia Mondot
b88d92df19 ENH update readme 2016-08-17 16:32:20 +02:00
Alexia Mondot
342fb040ee BUG NameError: name OTBSpecific_XMLcreation is not defined on exec 2016-08-17 16:32:00 +02:00
Alexia Mondot
2320838102 ENH update for OTB 5.4 2016-08-17 16:30:52 +02:00
Nyall Dawson
989d9864c5 [FEATURE][processing] New algorithm for single sided buffers 2016-08-17 06:44:04 +10:00
Alexander Bruy
866617ccd3 Merge pull request #3393 from nyalldawson/processing_translate
[FEATURE][processing] New algorithm for translating (moving) points
2016-08-15 14:41:39 +03:00
Nyall Dawson
f9e10888cb [processing] Fix some potential errors in clip algorithm 2016-08-14 14:50:34 +10:00
Nyall Dawson
0f268bf27a [FEATURE][processing] New algorithm for translating (moving) points
Allows geometries to be shifted by a x/y displacement
2016-08-14 14:36:10 +10:00
Alexander Bruy
915afcf8fa Merge pull request #3372 from anitagraser/patch-1
[processing] fixed failure to insert only one point in Densify geometries alg
2016-08-12 11:04:47 +03:00
Nyall Dawson
e9423dc4dd [processing] Rework centroid algorithm to handle non-polygon layers
The existing polygoncentroids algorithm has been deprecated
(and hidden from the toolbox), and a new, generic centroids
algorithm added which works with lines and multipoints
2016-08-12 07:50:47 +10:00
Nyall Dawson
5025c828e5 [processing] Expose buffer settings (cap/join style/mitre limit)
Also make fixed distance buffer correctly handle null geometries
(copy the row as a geometryless row)
2016-08-11 18:35:30 +10:00
Nyall Dawson
82f4a82c66 [FEATURE][processing] New algorithm for offsetting lines 2016-08-11 08:38:43 +10:00
Juergen E. Fischer
39c4409c6a remove deprecated stuff from QgsVectorLayer and editor widgets 2016-08-10 12:12:28 +02:00
Nyall Dawson
d5516fa7e3 Merge pull request #3371 from nyalldawson/processing
[processing] New algs + a fix
2016-08-10 19:22:12 +10:00
Nyall Dawson
7da8110536 Remove deprecated methods from QgsExpression
Now all evaluate/prepare/etc methods must be called using QgsExpressionContexts

Also remove most remaining traces of special variables. This brings some
user facing changes, such that existing expressions may need to be
updated if they used these old special variables (eg $scale,
$feature). These changes are noted in doc/qgis3_user_changes.dox
so that we can include them in the release notes.
2016-08-10 17:55:06 +10:00
Anita Graser
754ccefabc fixed failure to insert only one point
Previously, if pointsNumber was 1, it wouldn't insert a new point in the middle.
2016-08-10 09:22:50 +02:00
Nyall Dawson
142de7cb08 [FEATURE][processing] Point on surface algorithm 2016-08-10 16:57:38 +10:00
Nyall Dawson
ab022451a5 [FEATURE][processing] New algorithm for geometry boundary 2016-08-10 16:32:31 +10:00
Nyall Dawson
bd8db5d156 [FEATURE][processing] New algorithm for calculating feature bounding boxes 2016-08-10 15:41:44 +10:00
Alexander Bruy
885cc82c3c [processing] more clean in QGIS algs 2016-08-05 16:48:59 +03:00
Alexander Bruy
acdde31b3d [processing] more cleanups (follow up 06c4b07222) 2016-08-05 15:05:36 +03:00
Nyall Dawson
c1649ebef4 [processing] pendingFields() -> fields()
Does the same thing, but pendingFields() is ugly
2016-08-05 06:31:07 +10:00
Nyall Dawson
06c4b07222 [processing] Use layer crs/fields instead of provider crs/fields
Since the layer has more complete knowledge of the crs (ie, when
provider could not determine crs and user has selected it from
the list), and also better knowledge of layer fields (virtual
fields, joined fields) we should use these rather than the
provider methods.
2016-08-05 06:28:49 +10:00
Matthias Kuhn
bb79d13e82 Remove deprecated Qgis::WKBType and API cleanup (#3325)
* Remove deprecated Qgis::WKBType and API cleanup

Renames QgsWKBTypes to QgsWkbTypes

Replaces usage of the enums:

* Qgis::WKBType with QgsWkbTypes::Type
* Qgis::GeometryType with QgsWkbTypes::GeometryType

Their values should be forward compatible (a fact that was already
explited up to now by casting between the types)

Renames some SSLxxx to SslXxx and URIxxx to UriXxx

* Fix build warnings and simplify type handling

* Add a fixer to rewrite imports

* The forgotten rebase conflictThe forgotten rebase conflicts

* QgsDataSourcURI > QgsDataSourceUri

* QgsWKBTypes > QgsWkbTypes

* Qgis.WKBGeom > QgsWkbTypes.Geom

* Further python fixes

* Guess what... Qgis::wkbDimensions != QgsWkbTypes::wkbDimensions

* Fix tests

* Python 3 updates

* [travis] pull request caching cannot be disabled

so at least use it in r/w mode

* Fix python3 print in plugins
2016-08-04 09:10:08 +02:00
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