2185 Commits

Author SHA1 Message Date
Nyall Dawson
fe0566000e More QPair API removal 2017-11-06 07:34:01 +10:00
Nyall Dawson
dc341d2047 Add flags to QgsVectorFileWriter methods which return lists of drivers
Initially only flag available is whether to sort drivers by
recommended order. The recommended order puts GPKG first and
SHP second, then leaves the rest alphabetical.

This fixes a few instances in the QGIS gui where these recommended formats
are not listed first.
2017-11-06 07:22:04 +10:00
Nyall Dawson
fe78611cf5 Simplify interpolation API
Don't require both pixel size and row/col count in constructor,
since we can calculate the pixel size from the extent and row/column
count.
2017-11-03 14:00:07 +10:00
Nyall Dawson
8631472089 QgsTINInterpolator->QgsTinInterpolator 2017-11-03 10:49:33 +10:00
Nyall Dawson
e91ee5b71c More flexible API for interpolation
E.g. adds API support for interpolating by m value
2017-11-03 09:18:45 +10:00
Nyall Dawson
73306f1266 Update python code 2017-11-03 07:47:40 +10:00
Nyall Dawson
8f22f5eb3b [processing] Misc fixes for network analysis tools
Also maintain attributes in service area from layer alg, add test

Fixes #17325
2017-10-31 16:01:32 +10:00
Nyall Dawson
8d32bf729e Fix QgsGraphAnalyzer::dijkstra traverses through edges backwards
This means that it flips the direction of the graph edge, breaking
route restrictions.

Refs #17325
2017-10-31 16:01:32 +10:00
Nyall Dawson
57edec668e Fix incorrect enum values in network analysis algs
Didn't result in a bug, but made the code confusing to read
2017-10-31 16:01:32 +10:00
Nyall Dawson
ab05fe7603 Fix extremely confusing network graph API naming
Since names of api calls were backwards to expectations
2017-10-31 16:00:19 +10:00
Nyall Dawson
5ffd7214ee [processing] Shortest path handling for multipoint layers
Fixes shortest path algorithms fail for multipoint source layers
or layers with null geometries

Refs #17325
2017-10-31 16:00:18 +10:00
Nyall Dawson
4149da0556 Better reporting of errors when paths cannot be found, also
output point but with no geometry and missing attributes so
that it's clear which points could not be linked
2017-10-31 16:00:18 +10:00
Nyall Dawson
36a38f4e2d [processing] Keep attributes from start/end points layer in
output layer for shortest path algorithms

Otherwise the paths are nearly impossible to link back to
the source layer for further analysis
2017-10-31 16:00:18 +10:00
Nyall Dawson
49254384df Fix index out of range error in shortest path algs 2017-10-31 16:00:18 +10:00
Matthias Kuhn
d2c1011a13
Convert missing from[Geometry]XY calls 2017-10-30 09:14:06 +01:00
Matthias Kuhn
e0025b65b1
Rename QgsGeometry::fromPoint to QgsGeometry::fromPointXY
Also introduces the from[Geometry]XY for QgsGeometryFactory
2017-10-30 09:14:06 +01:00
Matthias Kuhn
750a54f8f6
More drop V2 suffix fixes 2017-10-30 09:14:05 +01:00
Matthias Kuhn
7f3ad76882
Rename QgsMultiPolygonV2 to QgsMultiPolygon 2017-10-30 09:14:04 +01:00
Matthias Kuhn
3fcdcd87af
Rename QgsMultiPointV2 to QgsMultiPoint 2017-10-30 09:14:04 +01:00
Matthias Kuhn
b6f46eae11
Rename QgsPolygonV2 to QgsPolygon 2017-10-30 09:14:04 +01:00
Nyall Dawson
68179e224c Merge pull request #5475 from nyalldawson/snap_to_grid
[FEATURE][processing] Native c++ snap to grid algorithm
2017-10-27 17:19:37 +11: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
Harrissou Sant-anna
30aa5f5f96 Allow double typed values in algorithm
Also homogenize the output name
2017-10-27 13:09:39 +11:00
Nyall Dawson
034baf1b53 Merge pull request #5436 from alexbruy/processing-gdal-memory
[processing] correctly handle layers without attributes in GDAL-based geoprocessing algorithms (fix #17287)
2017-10-26 20:19:12 +11:00
Nyall Dawson
c50ee6d42f Update python code to new API 2017-10-26 07:06:34 +10:00
Alexander Bruy
4a51c40821 [processing] correctly handle layers without attributes in GDAL-based
geoprocessing algorithms (fix #17287)
2017-10-24 15:33:49 +03:00
Alexander Bruy
c64f03d0a4 [processing] keep column names in standard distance matrix (fix #17150) 2017-10-24 15:27:22 +03:00
Nyall Dawson
c4f3832af2 Rename QgsGeometry::fromPolyline as QgsGeometry::fromPolylineXY
and add new QgsGeometry::fromPolyline which uses QgsPoint

We want to encourage people not to use the QgsPointXY method, as it drops
Z/M values. So it's moved across to a different name to make way
for a new QgsGeometry::fromPolyline which uses a QgsPoint list
instead of QgsPointXY, thus keeping Z/M values intact.

Similarly, QgsPolyline now is a list of QgsPoint (keeping z/m values)
and the old 2d QgsPolyline type was renamed to QgsPolylineXY.

Making the QgsPoint method the "preferred" method and making linestrings
just as easy to create from z/m dimensioned points as 2d points is
important to push people to write code which does not discard
these important dimensions.

As a bonus, the QgsPoint methods are more efficient anyway, since
they don't require creation of a temporary list.
2017-10-22 18:10:14 +10:00
Nyall Dawson
4ce166241e Allow processing providers to specify a long name, and show it in tooltips
Add version number to gdal provider long name
2017-10-19 13:12:31 +10:00
Nyall Dawson
a33376fe09 Drop version and count from algorithm item in tree view 2017-10-19 12:01:40 +10:00
Alexander Bruy
d0623620a3 [processing] retrieve dissolve parameter as boolean value 2017-10-18 16:21:57 +03:00
Matthias Kuhn
6538ba0bf2 Fix too-many-format-args 2017-10-16 23:25:13 +02:00
Matthias Kuhn
d793f6c5ab Fix typo in method name 2017-10-16 23:22:09 +02:00
Matthias Kuhn
7c8cdff216 Fix used-before-assignment 2017-10-16 23:21:51 +02:00
Matthias Kuhn
34a9d91488 Fix broken error handling 2017-10-16 23:16:30 +02:00
Matthias Kuhn
28c67e1c01 Remove double-defined __init__ function 2017-10-16 23:05:14 +02:00
Matthias Kuhn
8b3a348b6d Fix file modes 2017-10-16 23:00:53 +02:00
Nyall Dawson
18f85d9e54 Port drop M/Z algorithm to c++ 2017-10-13 08:30:12 +10:00
Nyall Dawson
b5197c8c53 Port drop geometries to c++ 2017-10-13 08:29:37 +10:00
Nyall Dawson
2951afa324 Port boundary algorithm to c++
Also allow feature based algorithms to customise their appectable
input layers types and set suitable filters for all applicable
algorithms
2017-10-13 08:28:34 +10:00
Nyall Dawson
97c1b0d322 [FEATURE] Port autoincremental field to c++
Also add:
- support for setting initial value for field to start at
- support for user-set field names (instead of always using 'AUTO')
2017-10-13 08:26:36 +10:00
Nyall Dawson
cc19d0a70d Port hub lines algorithm to c++
Also:
- optimise a bit
- retain z/m values
- use point on surface for non-point layers, instead of
center of geometry bounding box
2017-10-13 08:26:36 +10:00
Nyall Dawson
cac171a2e0 Port Join Attributes to c++, add option to select subset of fields to copy 2017-10-13 08:26:36 +10:00
Mathieu Pellerin
edf734677e [processing] use a vector feature source for gdal clip raster by mask (#5351) 2017-10-12 22:08:34 +07:00
Alexander Bruy
2104b273af [processing][API]introduce QgsProcessingOutputFile output and fix gdal2xyz test 2017-10-11 17:06:11 +03:00
Alexander Bruy
97238fd687 [processing] fix SQL-based geoprocessing tools and tests 2017-10-11 17:06:11 +03:00
Alexander Bruy
c4c780fa04 [processing] tests for clipping (raster and vector) algorithms 2017-10-11 17:06:11 +03:00
Alexander Bruy
67265c64c1 [processing] reproject extent into input CRS where possible 2017-10-11 17:06:11 +03:00
Alexander Bruy
2c50fd8dd8 [processing] use feature source in the interpolation algorithms 2017-10-11 17:06:11 +03:00
Alexander Bruy
874c7f545e [processing] fix copy-paste error in Execute SQL 2017-10-11 17:06:11 +03:00