16 Commits

Author SHA1 Message Date
Mathieu Pellerin
e0c12d519f
[processing] nodes -> vertices algorithm renaming
- "Extract nodes" renamed to "Extract vertices"
- "Extract specific nodes" renamed to "Extract specific vertices"
2018-01-29 19:16:43 +07:00
Nyall Dawson
b8e1f7707c [processing] Port 'Add unique value index field' to c++
And implement some fixes/improvements (refs discussion on the dev mailing list):
- allow user to specify created field name
- allow optional creation of a summary table showing new class value vs original
value
2018-01-23 12:18:55 +11:00
Nyall Dawson
cb96e1baab [processing] Fix merge vectors algorithm fails when encountering
layers with different dimensions or single/multi part types

and port algorithm to c++
2017-12-07 06:28:54 +11:00
Nyall Dawson
e12621ce2a Add API method to remove duplicate nodes from geometries
Removes duplicate nodes from the geometry, wherever removing the
nodes does not result in a degenerate geometry.

By default, z values are not considered when detecting duplicate
nodes. E.g. two nodes with the same x and y coordinate but
different z values will still be considered duplicate and one
will be removed. If useZValues is true, then the z values are
also tested and nodes with the same x and y but different z
will be maintained.

Note that duplicate nodes are not tested between different
parts of a multipart geometry. E.g. a multipoint geometry
with overlapping points will not be changed by this method.

The function will return true if nodes were removed, or false
if no duplicate nodes were found.

Includes unit tests and a processing algorithm which exposes
this functionality.
2017-12-03 14:58:21 +10:00
Etienne Trimaille
1b8faa2a79 add sort by expression algorithm 2017-11-30 15:22:13 +01:00
Nyall Dawson
3310343bcd [processing] Add a model-only "load layer to project" algorithm
This can be used to force loading a layer into the current project.
The primary use case here is to load a preset layer as part of a
model, but it's also useful for loading results from the
'package layers' algorithm into the project.
2017-11-27 06:38:21 +11:00
Nyall Dawson
6283ca62bc [processing] Add a model-only algorithm for renaming layers
This is required for algorithms with behaviour which depends on the
layer names (e.g. the package algorithm uses the layer name as
the table name in the geopackage).

We need a way for models to be able to explicitly specify a layer
name for this algorithm to be useful in models, otherwise the
auto-generated temporary layer names are used (which are not
very nice!)
2017-11-27 06:38:21 +11:00
Nyall Dawson
ff900c0b05 [processing] Make translate algorithm native
And add option to translate z/m values
2017-11-24 16:18:13 +10:00
Nyall Dawson
a8eee62461 [FEATURE][processing] Package layers algorithm
Allows multiple vector layers to be collected together into a
geopackage database output

Previously all existing methods avilable in QGIS rely on adding
layers one-at-a-time, which is tedious for large numbers of layers.

Sponsored by SMEC
2017-11-23 10:01:13 +10:00
nirvn
7cb15c08b9 Optimize extract nodes algorithm 2017-11-13 12:13:30 +07:00
Nyall Dawson
4372ac2658 [FEATURE][processing] Native c++ snap to grid algorithm
With support for snapping Z/M values, keeping curves
2017-10-27 15:16:15 +10:00
Etienne Trimaille
386eef2e6c new string concatenation algorithm in processing 2017-10-25 08:17:59 +11:00
Etienne Trimaille
89a31e5086 reorder alphabetically imports for native algorithms 2017-10-25 08:17:59 +11:00
Etienne Trimaille
2f44de0e4f [FEATURE] Download a file in Processing 2017-10-24 08:12:49 +11:00
lbartoletti
977ce426db [FEATURE][processing]Transect processing
Adds a C++ version of the "ststion lines" plugin as a
new processing algorithm for creating transect lines.
2017-10-24 05:42:03 +11:00
Nyall Dawson
e92e20e613 Move native c++ processing algorithms from core library to analysis
And split into separate files for each algorithm
2017-10-16 20:10:37 +11:00