3539 Commits

Author SHA1 Message Date
Nyall Dawson
1b1dc7de63 Port Extract Nodes to new API
Improvements:
- Retain Z/M values from input geometries
2017-07-16 15:55:05 +10:00
Nyall Dawson
bb344bcee2 Fix typo 2017-07-15 22:08:39 +10:00
Nyall Dawson
ea06500caf Port Unique Values algorithm to new API
Improvements:
- by default output a table with unique values, instead of a HTML
file. This allows the values to be more easily used in follow up
analysis (e.g. in a model). HTML output is still available, but
not output by default
2017-07-15 22:07:12 +10:00
Nyall Dawson
82edbab814 Fix mean coords uses old exception 2017-07-15 21:17:50 +10:00
Nyall Dawson
b7f888bf5b Port Distance Matrix algorithm to new API
Enhancements:
- support source/target layers in different CRS
- output layers with geometry (i.e. keep input point geometry - avoids
need to rejoin result back to original table to get geometry)
- keep original data types for id fields
- don't fire off many single feature requests - instead request
multiple features at once to improve speed
2017-07-15 20:33:53 +10:00
Nyall Dawson
7f58af11ae Port mean coords algorithm to new API
Improvements:
- Don't export UID class field if no class field was set
2017-07-15 20:33:08 +10:00
Nyall Dawson
a6736ceb77 Add ability to select output fields from both layers to Intersection algorithm 2017-07-15 17:40:45 +10:00
Nyall Dawson
02bf88c4b7 Port Line Intersection algorithm to new API
Improvements
- allow different CRS between layers
- instead of optionally allowing selection of a single field to keep from
both inputs, allow selection of multiple fields
2017-07-15 17:40:45 +10:00
Nyall Dawson
eaad18c6ad Merge pull request #4861 from nyalldawson/nn
Port nearest neighbour alg to new API
2017-07-15 17:40:32 +10:00
Nyall Dawson
7baa623f6f Allow bulk load of QgsSpatialIndex to be canceled via QgsFeedback 2017-07-15 16:43:44 +10:00
Alexander Bruy
671f024789 fix tests 2017-07-15 09:30:21 +03:00
Alexander Bruy
f3f9e544ab [processing] restore Hillshade algorithm 2017-07-15 09:29:35 +03:00
Alexander Bruy
f4bba54a11 [processing] restore Ruggedness algorithm 2017-07-15 09:29:35 +03:00
Alexander Bruy
05b4cc22bf [processing] restore Slope algorithm 2017-07-15 09:29:35 +03:00
Alexander Bruy
5f5fc587b7 [processing] homogenize input/output names in Heatmap algorithm 2017-07-15 09:29:35 +03:00
Nyall Dawson
b441a4f2c9 Port nearest neighbour analysis algorithm to new API 2017-07-15 16:24:14 +10:00
Nyall Dawson
8af7318c98 Ensure distance area is always correctly used in processing 2017-07-15 16:24:14 +10:00
Nyall Dawson
2e8b84867e Port sum line length algorithm to new API
and implement auto reprojection of lines to polygon layer CRS
2017-07-15 15:56:04 +10:00
Nyall Dawson
79df6b4749 Add cancelation support for points in polygons algorithm 2017-07-15 15:21:06 +10:00
Nyall Dawson
dd38c52dd8 [needs-docs] Copy unique class field option from Points in Polygons Unique
to Points in Polygons

Again, it doesn't make sense for a whole separate algorithm just to
add a single option
2017-07-15 14:50:15 +10:00
Nyall Dawson
b67e525f29 [needs-docs] Add optional weight field to Points In Polygon algorithm
Instead of a separate Points In Polygon algorithm just for this
extra option, add it to the original Points In Polygon algorithm
as a non-default option.
2017-07-15 14:50:10 +10:00
Nyall Dawson
68687c1e04 Port counts points in polygon alg to new API
and add auto-reprojection support if points layer is in
different CRS to polygon layer
2017-07-15 14:23:07 +10:00
Mathieu Pellerin
b5dc9fd3cd [processing] restore and improve lines to pol / pol to lines algs (#4850)
New geometry model for lines to pol / pol to lines agls.
2017-07-14 14:44:38 +07:00
Nyall Dawson
f84a3bbd04 Merge pull request #4819 from nyalldawson/layout_gui
Layout GUI work (pt 1/?)
2017-07-14 10:22:38 +10:00
Nyall Dawson
0639264a4a Merge pull request #4852 from nyalldawson/heatmap_source
Use QgsFeatureSource instead of QgsVectorLayer for QgsKde
2017-07-14 10:19:15 +10:00
Harrissou Sant-anna
99ea2e8e8f Use Cartesian instead of cartesian 2017-07-13 17:40:55 +02:00
Nyall Dawson
4fa69643fc Fix heatmap widget wrapper, update to use source input 2017-07-13 20:52:16 +10:00
Nyall Dawson
8f19f74893 Fix reportError call 2017-07-13 20:11:37 +10:00
Nyall Dawson
653ef7b243 Update heatmap alg to use feature source instead of layer 2017-07-13 20:11:28 +10:00
Alexander Bruy
8285712d68 more test fixes 2017-07-13 12:11:42 +03:00
Alexander Bruy
b01ffa5cd4 [processing] add test for heatmap algorithm 2017-07-13 12:11:42 +03:00
Alexander Bruy
229d2f1add [processing] port heatmap algorithm 2017-07-13 12:11:42 +03:00
Alexander Bruy
56208540f9 [processing] remove GeoAlgorithmExecutionException 2017-07-13 09:02:24 +03:00
Alexander Bruy
97a5a3dcbd [processing] use QgsProcessingException in algorithms 2017-07-13 09:02:10 +03:00
Alexander Bruy
69dab42785 [processing] remove unused version() function 2017-07-13 08:38:22 +03:00
Mathieu Pellerin
d3ad9131f4 [processing] restore intersection algorithm (#4849) 2017-07-13 11:07:01 +07:00
Mathieu Pellerin
b46373b084 [processing] restore union algorithm 2017-07-12 20:54:51 +07:00
Nyall Dawson
a87cc53e96 Nicer debugging from boundary alg 2017-07-12 18:55:27 +10:00
Nyall Dawson
5c844a5cfb Really delete processing dialogs
The dialogs are parented to the main window, which means sip
transfers the ownership to the main window - and they are
never deleted as a result. This results in various error
messages caused by the widgets hanging around forever
and listening out for various signals they are connected to.
2017-07-12 18:52:53 +10:00
Nyall Dawson
77351fdba4 Update processing.algorithmHelp for new API 2017-07-12 18:33:01 +10:00
Nyall Dawson
91d6ac9537 Update script algorithms for auto output creation 2017-07-12 07:50:13 +10:00
Nyall Dawson
7bb1b7ade0 Cleanup some imports, remove use of dataobjects 2017-07-12 07:44:39 +10:00
Nyall Dawson
d92583c10e Take advantage of auto created outputs in ported algorithms 2017-07-12 07:39:43 +10:00
Mathieu Pellerin
18b52b22f1 [processing] restore difference algorithm 2017-07-11 17:00:44 +07:00
Nyall Dawson
4c2447fd89 Add shell for QgsLayoutView 2017-07-11 11:06:35 +10:00
Nyall Dawson
1e13d733c2 Move declaration of algorithm parameters/outputs to a new virtual
initAlgorithm() method

This allows 2 benefits:
- algorithms can be subclassed and have subclasses add additional
parameters/outputs to the algorithm. With the previous approach
of declaring parameters/outputs in the constructor, it's not
possible to call virtual methods to add additional parameters/
outputs (since you can't call virtual methods from a constructor).

- initAlgorithm takes a variant map argument, allowing the algorithm
to dynamically adjust its declared parameters and outputs according
to this configuration map. This potentially allows model algorithms which
can be configured to have variable numbers of parameters and
outputs at run time. E.g. a "router" algorithm which directs
features to one of any number of output sinks depending on some
user configured criteria.
2017-07-10 16:31:14 +10:00
Nyall Dawson
03275bbace Split QgsProcessingAlgorithm::create into non virtual-create
and pure virtual createInstance

Allows us to add logic which always need applying within
create(), leaving createInstance() free to just return a
raw new instance of the class
2017-07-10 10:07:32 +10:00
Nyall Dawson
f49b603443 Split QgsProcessingModelAlgorithm into separate components
The cpp/h file was getting too large, so split off the individual
subcomponents into their own h/cpp files to keep code
maintainable.
2017-07-08 20:49:17 +10:00
Nyall Dawson
cfa18039af Fix incorrect icon size in processing windows
Well... kind of. It fixes the toolbar button size, but for some
reason the actual icon content itself isn't being resized. I can't
work out why this is...
2017-07-08 20:49:17 +10:00
Nyall Dawson
a3fdb95d0a Update model input type names 2017-07-08 20:49:17 +10:00