291 Commits

Author SHA1 Message Date
Nyall Dawson
1d2e54d1ba Port delete columns alg to new API 2017-06-06 16:06:27 +10:00
Nyall Dawson
f1511a290c Port clip algorithm to new API 2017-06-06 15:54:10 +10:00
Nyall Dawson
47a40edb7f Port BarPlot alg to new API 2017-06-06 15:39:55 +10:00
Nyall Dawson
f0f0411e7b Port addautoincrementalfield to new API 2017-06-06 14:46:55 +10:00
Nyall Dawson
f64f74fb63 Fix incorrect import 2017-06-06 13:41:42 +10:00
Nyall Dawson
d53fa8d2af Port another alg to new API 2017-06-06 12:36:10 +10:00
Nyall Dawson
379d060de4 Resurrect another Python QGIS algorithm 2017-06-06 07:41:20 +10:00
Nyall Dawson
bdf051a03a Partially port a trial python alg to new API 2017-06-06 07:41:19 +10:00
matteo
bca0ca25ee 2 new plots added 2017-04-12 21:07:30 +02:00
Nyall Dawson
fdcf04f9f3 Remove AlgorithmProvider
Totally ported to QgsProcessingProvider
2017-04-07 13:21:28 +10:00
Nyall Dawson
4970bb4cd5 Move more algList functionality to QgsProcessingRegistry 2017-04-07 13:21:28 +10:00
Nyall Dawson
b3142a0baf Move provider algorithm handling to QgsProcessingProvider 2017-04-07 13:21:28 +10:00
Nyall Dawson
faa8a653b2 Move algorithm icon handling to QgsProcessingAlgorithm 2017-04-03 21:17:45 +10:00
Juergen E. Fischer
c77172ed3d fix more flake8 warnings 2017-03-05 10:21:24 +01:00
Bernhard Ströbl
115ede60ce [processing] replace alg Eliminate with new alg EliminateSelection
* [processing] replace alg Eliminate with new alg EliminateSelection

* Deprecate Eliminate algorithm

* Expose new EliminateSelection algorithm in GUI

* Rename ouput layer

* Reflect algorithm changes in help

* Remove superfluous init method

* Simplify code, thanks Nyall

* Improve transfer of selection to processLayer

* Remove deprecated Eliminate algorithm

* Remove test for Eliminate

* Fix indentation
2017-02-23 09:33:28 +01:00
Nyall Dawson
1cf0a20267 [FEATURE][processing] New algorithm for topological coloring of polygons
This ports to old (pre 2.0!!) topocolor plugin to processing. It's based
off my beta 2.x fork (never publicly released) which implemented
a bunch of improvements to the algorithm allowing for minimal number
of required colors and also balanced counts of features assigned
each individual color.

** Pretty sure this plugin was highlighted in Victor's presentation
about plugins-which-shouldn't-be-plugins-and-should-be-processing-algs
instead. It's a prime example of a plugin where the amount of code
required for gui+setup exceeded the actual "guts" of the plugin by
a huge factor, and which is much more useful when it can be
integrated into a larger processing model.
2017-02-22 12:10:13 +10:00
Alexander Bruy
58b9c82e20 remove old imports 2017-02-15 20:07:24 +02:00
Alexander Bruy
b3ab5543dd [processing] update polar plot 2017-02-15 20:07:24 +02:00
Alexander Bruy
19289ccc4e [processing] update mean and std.dev plot 2017-02-15 20:07:24 +02:00
Alexander Bruy
2abc3f7233 [processing] update raster layer histogram 2017-02-15 20:07:24 +02:00
Alexander Bruy
e0131a7526 [processing] update vector layer histogram 2017-02-15 20:07:24 +02:00
Alexander Bruy
a352773887 [processing] update vector layer scatterplot 2017-02-15 20:07:23 +02:00
Alexander Bruy
46a9891e5c [processing] update bar plot 2017-02-15 20:07:07 +02:00
Nyall Dawson
91eea30e7d [FEATURE][processing] Algorithm to find an unknown layer's projection
If you have a layer with an unknown CRS, this algorithm gives a list
of possible candidate CRSes which the layer could be in.

It allows users to set the area (and corresponding CRS) which they know
the layer should be located near. The algorithm then tests every CRS
in the database to see what candidate CRSes would cause the layer
to be located at that preset area.

It's much faster than it sounds!! (just a couple of seconds)

Sponsored by SMEC/Surbana Jurong
2017-02-14 05:49:23 +10:00
Alexander Bruy
501a5f9268 [processing] always load ExecuteSQL algorithm 2017-02-10 11:18:05 +02:00
Alexander Bruy
0293bc76a0 [FEATURE][processing] algorithm to fix invalid geometries using native
makeValid() implementation
2017-02-07 12:52:04 +02:00
Nyall Dawson
14bd79f844 Remove dependance on shapely library
Port processing polygonize alg to use native QgsGeometry methods
2017-01-31 10:47:00 +10:00
Nyall Dawson
04eb293362 [processing] Move some SVG icons out of plugin to themes
...and swap to using QgsApplication methods for retrieving cached icons,
implement svgIconPath for providers with SVG icons
2017-01-11 10:55:16 +10:00
Nyall Dawson
bb24dfe245 [processing] c++ base class for providers
Nothing particularly exciting here yet, but this commit
moves the definition of the provider base class to a c++
QgsProcessingProvider abstract base class.

As part of this some existing python methods were renamed
to make their use clearer and to fit with the QGIS c++
api conventions:

- getName was renamed to id
- getDescription was renamed to name
- getIcon was renamed to icon

These API breaks are documented
2017-01-11 10:55:15 +10:00
Nyall Dawson
e5e0ec51eb [FEATURE][processing] New algorithm to truncate tables
Irretrievably deletes all features from a table... use with caution!
2017-01-06 10:32:52 +10:00
Alexander Bruy
ce9c08f3f6 [processing] rename GdalOgr provider to Gdal provider
Show version numbers in providers descriptions
2016-12-31 09:09:07 +02:00
Alexander Bruy
7dde862cc4 [processing] add missed functionality from Interpolation plugin 2016-12-20 10:14:49 +02:00
Alexander Bruy
4e59c5a045 [processing] merge two Relief algorithms into one 2016-12-19 09:49:49 +02:00
Alexander Bruy
0d1c9a31bb [processing] implement missed functionality from Raster terrain analysis
plugin
2016-12-19 09:49:49 +02:00
Alexander Bruy
85e692ec40 [processing] add algorithm for calculating shortest path from multiple
start points defined by vector layer
2016-12-13 10:46:35 +02:00
Alexander Bruy
2f70f1f75c [processing] add algorithm for calculating shortest path to multiple end
points defined by vector layer
2016-12-13 10:46:35 +02:00
Alexander Bruy
aa3c7ccad2 [processing] add algorithm for calculating service areas from point
layer

Add start point coordinates to outputs
2016-12-13 10:46:35 +02:00
Alexander Bruy
b2a01c57af [processing] rename network analysis algs to reflect their inputs type 2016-12-13 10:46:34 +02:00
Alexander Bruy
77ecfb93e0 [processing] add service area algorithm 2016-12-13 10:46:34 +02:00
Alexander Bruy
0823bb4b2a [processing] adopt algorithm to changes in QGIS API 2016-12-13 10:46:33 +02:00
Nyall Dawson
caa0d500af Fix spelling of orthoganilize 2016-12-12 17:47:12 +10:00
Nyall Dawson
4b6f3a3ee5 [FEATURE][processing] New algorithm to orthagonalize geometries
Adds a new QgsGeometry::orthagonalize method which tries to make
angles in geometries either right angles or straight lines

Also adds a processing algorithm exposing this feature.
2016-12-09 09:41:56 +10:00
Nyall Dawson
83c38b0172 [FEATURE][processing] Port heatmap plugin to processing algorithm 2016-12-07 08:27:24 +10:00
volaya
a7f9018e11 [processing] added native raster calculator algorithm
Conflicts:
	python/plugins/processing/algs/qgis/QGISAlgorithmProvider.py
2016-12-01 12:52:45 +01:00
Nyall Dawson
b30a1ff65d [FEATURE][processing] New universal 'basic stats for field' algorithm
Replaces the existing 'Basic Stats for Numeric Fields' and
'Basic Stats for String Fields' algorithms and adds support
for date/time/datetime fields.

Having a single unified algorithm allows more flexible models
where a field type may not be known in advance.

Deprecate existing basic stats algorithms
2016-12-01 16:27:20 +10:00
Nyall Dawson
1e661e37b9 [FEATURE][processing] New 'drop geometries' algorithm
Simply removes any geometries from an input layer and returns
the features with attributes only
2016-11-24 09:41:11 +10:00
Bernhard Ströbl
0e2ef065d7 [processing] [FEATURE] SplitWithLines
Rename algorithm SplitLinesWithLines to SplitWithLines
Accept polygon as input, too
Use only selected lines to split with (if processing is set to use selection only)
Issue log message if trying to split multi geometries
Update help
2016-11-24 08:05:16 +10:00
Nyall Dawson
5e1a69fc88 [FEATURE][processing] Create attribute index algorithm
Allows creation of an index on an attribute in a layer for faster
attribute based filtering

Support depends on the underlying data provider for the layer
2016-11-18 10:56:02 +10:00
Nyall Dawson
d6f09c012e [FEATURE] Add method to calculate pole of inaccessibility for polygons
Implements a method in QgsGeometry and a processing algorithm to
calculate the pole of inaccessibility for a surface, which is the
most distant internal point from the boundary of the surface. This function
uses the 'polylabel' algorithm (Vladimir Agafonkin, 2016), which is an iterative
approach guaranteed to find the true pole of inaccessibility within a specified
tolerance. More precise tolerances require more iterations and will take longer
to calculate.
2016-11-14 15:52:41 +10:00
Nyall Dawson
c3a978b9da [FEATURE][processing] Snap geometries to layer algorithm
Port the Geometry Snapper plugin across to the analysis lib, and
expose to python bindings

Add a new algorithm which performs the snapping to layers
2016-11-07 12:20:59 +10:00