14901 Commits

Author SHA1 Message Date
Nyall Dawson
c0640c67b0 [processing] Add flag for algorithms with known issues 2019-03-06 06:33:06 +10:00
Juergen E. Fischer
9f1fcb72d4 processing: enable translation for parameter descriptions 2019-03-05 20:16:23 +01:00
Corentin.F
8602d8fd97
Fix LineEdit name error 2019-03-05 09:59:28 +01:00
Nyall Dawson
5fca18c4ae [processing][GRASS] Fix exceptions on Python < 3.6
Fixes #21173
2019-03-05 17:09:36 +10:00
Nyall Dawson
2ff0d5919c [processing] Avoid more deprecation warnings from external libraries 2019-03-05 14:44:02 +10:00
Nyall Dawson
c1cc2b53d9 Fix qt warning on opening modeler dialog 2019-03-05 14:44:02 +10:00
Nyall Dawson
723051b291 [processing] Fix initial zoom of models on hidpi displays
Fixes #16456
2019-03-05 14:44:02 +10:00
Nyall Dawson
8154008daf [processing] Fix items are not correctly placed in model designer
when view is not set to top-left of model scene
2019-03-05 14:44:02 +10:00
Nyall Dawson
30f786c129 [processing] Fix crashes and random behavior after dropping algorithms
to model designer

Also fixes drag and drop within the algorithm parameter dialog and
the qt warnings thrown during these operations
2019-03-05 14:44:02 +10:00
Nyall Dawson
e09b97f91e [processing] Fix missing vector polygon to lines menu item
Fixes #21475
2019-03-05 14:34:42 +10:00
Nyall Dawson
ce5faa1524 [processing] Force regeneration of primary key for more algorithms
Fixes #21445
2019-03-05 07:06:30 +10:00
Nyall Dawson
9d509e7f4c [processing] Fix outdated Find Projection docs
Fixes #21404
2019-03-05 07:06:08 +10:00
AnikaBettge
972e7a474d Fix default setting for ew_step and ns_step parameter
Fix default setting for ew_step and ns_step parameter which must be "none" rather than 1.5 (which leads to wrong default values in GRASS GIS)
2019-03-04 21:00:30 +10:00
Nyall Dawson
d84b70f04d [processing] Add acceptable string values to parameter metadata
Returns a descriptive list of the possible string values acceptable
for the parameter.

E.g. for a QgsProcessingParameterVectorLayer this may include
"Path to a vector layer", for QgsProcessingParameterBoolean
"1 for true, 0 for false" etc.
2019-03-04 07:57:24 +10:00
Matthias Kuhn
dcc92de5d0
Merge pull request #9316 from m-kuhn/fix-geometry-validation-crashes
[geometry validation] Stability and performance improvements
2019-03-02 09:54:35 +01:00
Matthias Kuhn
22b052da39
Merge pull request #9299 from m-kuhn/geometry-validation-only-report-affected-features
[geometry validation] only report affected features
2019-03-02 09:48:37 +01:00
Nyall Dawson
b53d64bfb0
Silence annoying PyQt5.uic.loadUiType deprecation warnings
These aren't our fault -- they come from the PyQt library itself,
so we may as well hide them and avoid the noise.
2019-03-02 12:07:46 +10:00
Nyall Dawson
558d5365b5 Add new plugin metadata string to indicate whether a plugin
implements Processing providers

Plugins which implement providers should include the

    hasProcessingProvider=yes

line within their metadata.txt file. This allows for rapid
identification of all plugins which implement Processing
functionality.
2019-03-02 12:06:59 +10:00
Nyall Dawson
2f82bab1d9 Add Python utils method to start a Processing specific plugin
This command adds a plugin to active plugins and calls initProcessing(),
initializing only Processing related components of that plugin.

The new initProcessing() hook should be implemented by plugins
which provide Processing providers or algorithm, and should only
implement code which is required to load the provider and algorithms.
Strictly no GUI related code should be used here, that MUST
be moved out of initializers and deferred to the plugin's
initGui implementation.
2019-03-02 12:06:59 +10:00
AnikaBettge
819f275ba4 Fix default setting for gauss parameter
Fix default setting for gauss parameter which must be "none" rather than 0 (which leads to empty maps as gauss=0 is unhelpful)
2019-03-02 06:09:04 +10:00
Matthias Kuhn
d313405851
Avoid working on reference to temporary objects
fixes a couple of crashes in geometry validation
2019-03-01 13:25:00 +01:00
Nyall Dawson
dab4a04309 [processing] Draw arrows connected to selected/hovered components
slightly darker

Makes it easier to track connections in a complex model
2019-03-01 15:39:49 +10:00
Nyall Dawson
2178e1a71a [processing] Pre-highlight model components on hover 2019-03-01 15:39:49 +10:00
Nyall Dawson
93de4d15a6 [processing] Show tooltips in modeler when hovering over model component 2019-03-01 15:39:49 +10:00
nirvn
b5146db92e Use the QgsSqliteUtils system tables list in DB Manager 2019-03-01 12:30:04 +07:00
Nyall Dawson
75697d77ed Cache validity check results
For non-point geometry subclasses (points are always valid!) we
now cache the results of a geometry validity check. Subsequent
checks utilise the cached result wherever possible.

Because QgsGeometry/QgsFeature objects are implicitly shared, this
means that we avoid a *lot* of duplicate validity checks as
features and geometries are thrown around during processing model
execution.
2019-03-01 08:06:31 +10:00
Nyall Dawson
885f47d2af [processing] Avoid creation of gui components at startup 2019-02-28 19:38:53 +10:00
Matthias Kuhn
d99c1f1f32
Fixes 2019-02-27 17:53:07 +01:00
Matthias Kuhn
149fcc040b
Only report topology errors in affected features
The geometry validation only works on the current edit session (added / edited geometries). To detect topology
errors it is required to also get more features within the context, therefore, the bounding box of the edited
geometries is taken to populate the list of features to check.

This commit filters the found problems so only the ones which actually affect one of the edited geometries
will be reported.
2019-02-27 16:57:37 +01:00
Nyall Dawson
107b48a430 Add NULLPTR macro for use in doxygen comments
For the c++ api dox this expands to "\c nullptr" (the
\c directive indicates a code literal value), and for sipify/Python
it expands to ``None`` (`` is sphinx annotation for literal values)

Makes for nicer dox for both c++ and Python!
2019-02-27 09:41:11 +10:00
Nyall Dawson
a7ca08784c Nullptr consistency in dox 2019-02-27 09:41:11 +10:00
Nyall Dawson
d60b5e2d53 Typo, remove unused .sip files 2019-02-27 09:41:11 +10:00
Nyall Dawson
caff98d8bf Retval -> returns 2019-02-27 09:41:11 +10:00
Nyall Dawson
3f735368f6 astyle 2019-02-27 09:41:11 +10:00
Nyall Dawson
b6d66becab Sipify 2019-02-27 09:41:11 +10:00
Nyall Dawson
eed9852fb9 Add TRUE and FALSE macros for use in doxygen comments
For the c++ api dox these expand to "\c true" and "\c false" (the
\c directive indicates a code literal value), and for sipify/Python
they expand to ``True`` and ``False`` (`` is sphinx annotation
for literal values)

Makes for nicer dox for both c++ and Python!
2019-02-27 09:41:11 +10:00
Juergen E. Fischer
5aecf74e9a saga help fix 2019-02-26 23:17:50 +01:00
Juergen E. Fischer
2f431bc1f3 i18n:
* include processing algorithm descriptions from yaml (with yaml fixes)
* create ui instead of cpp where possible and use -no-ui-lines to avoid
  artificial ever changing line numbers in ts files
* drop old used scripts: create_new_ts.sh, create_new_ts.sh and
  integrate_function_help.pl, update_ts_files.sh
2019-02-26 22:38:53 +01:00
Nyall Dawson
49742c302a [needs-docs][processing] Add option to check validity alg to ignore self-intersection
causing rings errors

By default the algorithm now uses the strict OGC definition of polygon validity, where
a polygon is marked as invalid if a self-intersecting ring causes an interior hole.
If the "Ignore ring self intersections" option is checked, then this rule will be
ignored and a more lenient validity check will be performed.

Refs #16418, refs #21336
2019-02-27 06:05:26 +10:00
Nyall Dawson
4e04d02293 By default, validity check should treat ring self intersections as invalid
We use the OGC definition of validity to ensure consistent results
with PostGIS, GDAL, etc

Fixes #16418, fixes #21336
2019-02-27 06:05:26 +10:00
Nyall Dawson
35f613d45e Avoid firing up a thread for blocking GEOS based validity checks
It's an unnecessary expense. Also fix duplicate code.
2019-02-27 06:05:26 +10:00
Nyall Dawson
6dbe4ee5fb Add QgsGeometry::isGeosValid option to ignore self-touching rings 2019-02-27 06:05:26 +10:00
Blottiere Paul
1e49bb1543
Merge pull request #9290 from pblottiere/fix_doc_2
Update doc
2019-02-26 14:38:30 +01:00
Blottiere Paul
3fbda69669 Update sip binding 2019-02-26 12:56:14 +00:00
Blottiere Paul
3e2af2aec1 Update sip 2019-02-26 10:12:55 +00:00
Blottiere Paul
6e39543983
Merge pull request #9242 from pblottiere/getprint_svg
Some cleaning [server]
2019-02-26 10:55:40 +01:00
Blottiere Paul
0e8757b408
Merge pull request #9236 from signedav/scale_getlegendgraphic
On GetLegendGraphics take the scale context from map parameters
2019-02-26 10:19:56 +01:00
David Signer
6b09be7f32 update docu since 3.8 2019-02-26 09:28:03 +01:00
Blottiere Paul
0a76d7c108 Fixes unit tests 2019-02-26 08:24:37 +00:00
Matthias Kuhn
81f0c5ce00
Merge pull request #9241 from m-kuhn/merge-lines-on-dissolve
[processing] Merge lines on dissolve
2019-02-26 07:54:51 +01:00