Bug report #16065

IDW and TIN interpolation errors in Processing

Added by matteo ghetta almost 3 years ago. Updated almost 3 years ago.

Status:Closed
Priority:Severe/Regression
Assignee:-
Category:Processing/QGIS
Affected QGIS version:master Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed/implemented
Crashes QGIS or corrupts data:No Copied to github as #:23980

Description

It seems that there are some issues with both the IDW and TIN (of the QGIS -> Interpolation menu) interpolation in Processing.

With all the data I tried (custom data, see attach, or default test data in the processing folder: QGIS/python/plugins/processing/tests/testdata/points.gml) there are some errors and suggestion I'd like to made:

Errors:

IDW and TIN

  • if no extend is selected, Processing automatically choose the min extent of the input layer. The following error appears:

2017-01-12T10:56:04 2 Uncaught error while executing algorithm
Traceback (most recent call last):
File "/home/matteo/lavori/QGIS/build-qgis3/output/python/plugins/processing/core/GeoAlgorithm.py", line 216, in execute
self.processAlgorithm(feedback)
File "/home/matteo/lavori/QGIS/build-qgis3/output/python/plugins/processing/algs/qgis/IdwInterpolation.py", line 148, in processAlgorithm
extent = self.getParameterValue(self.EXTENT).split(',')
AttributeError: 'NoneType' object has no attribute 'split'

  • even with a canvas, manually entered or secure extent fetched from the source layer (no OTF), the interpolation might work, but min/max values are always 0 (tested with the data in attach, T_MAX value)

only TIN:

  • with the attched data, and the attribute T_Max, cell size 10000 and extent fetched from canvas or layer the following message appears, the output is created with 0 min/max values:


AttributeError: 'AlgorithmDialogFeedback' object has no attribute 'reportRrror'
Traceback (most recent call last):
File "/home/matteo/lavori/QGIS/build-qgis3/output/python/plugins/processing/gui/AlgorithmDialog.py", line 210, in accept
self.finish()
File "/home/matteo/lavori/QGIS/build-qgis3/output/python/plugins/processing/gui/AlgorithmDialog.py", line 231, in finish
if not handleAlgorithmResults(self.alg, self.feedback, not keepOpen):
File "/home/matteo/lavori/QGIS/build-qgis3/output/python/plugins/processing/gui/Postprocessing.py", line 90, in handleAlgorithmResults
feedback.reportRrror(msg)
AttributeError: 'AlgorithmDialogFeedback' object has no attribute 'reportRrror'

Features:

  • default cellsize is 0, that might confuse the user because if the algorithm is run with 0 cellsize, output is created but it is an empty tif file. Could it possible to load some default cellsize or (maybe better) pop-up a window is the cellsize is = 0?

points.gml (32.6 KB) matteo ghetta, 2017-01-12 02:06 AM

History

#1 Updated by Giovanni Manghi almost 3 years ago

  • Assignee deleted (Alexander Bruy)
  • Priority changed from High to Severe/Regression

if issues are confirmed this need to be taken care in time for qgis 3, so raising the priority.

#2 Updated by matteo ghetta almost 3 years ago

Hi Giovanni. Is there another way to raise the priority in addition to change the priority level in the ticket?

#3 Updated by Alexander Bruy almost 3 years ago

  • Operating System deleted (Linux mint)
  • Status changed from Open to Closed
  • Resolution set to fixed/implemented
  • OS version deleted (sarah)

Processing part fixed. Please, in future create separate ticket for each issue, don't put different problems in one ticket.

BTW, Processing interpolation algorithms already covered with tests, so there is no need to create new tests for them.

#4 Updated by matteo ghetta almost 3 years ago

Hi Alex, thanks for the fix!
However, if there were already tests for these algorithm why did they missed up?
Isn't the purpose of the test to make algorithms solids so that they cannot be broken?

Thanks again for your time!

Also available in: Atom PDF