diff --git a/python/plugins/processing/algs/grass7/description/r.mapcalc.simple.txt b/python/plugins/processing/algs/grass7/description/r.mapcalc.simple.txt new file mode 100644 index 00000000000..ad233ab0553 --- /dev/null +++ b/python/plugins/processing/algs/grass7/description/r.mapcalc.simple.txt @@ -0,0 +1,11 @@ +r.mapcalc.simple +Calculate new raster map from a r.mapcalc expression. +Raster (r.*) +QgsProcessingParameterRasterLayer|a|Raster layer A|False +QgsProcessingParameterRasterLayer|b|Raster layer B|True +QgsProcessingParameterRasterLayer|c|Raster layer C|True +QgsProcessingParameterRasterLayer|d|Raster layer D|True +QgsProcessingParameterRasterLayer|e|Raster layer E|True +QgsProcessingParameterRasterLayer|f|Raster layer F|True +QgsProcessingParameterString|expression|Formula|A*2 +QgsProcessingParameterRasterDestination|output|Calculated diff --git a/python/plugins/processing/algs/grass7/description/r.mapcalc.txt b/python/plugins/processing/algs/grass7/description/r.mapcalc.txt deleted file mode 100644 index 06751ab650f..00000000000 --- a/python/plugins/processing/algs/grass7/description/r.mapcalc.txt +++ /dev/null @@ -1,9 +0,0 @@ -r.mapcalc -Raster map calculator. -Raster (r.*) -QgsProcessingParameterMultipleLayers|maps|Raster maps used in the calculator|3|None|True -QgsProcessingParameterString|expression|Expression to evaluate. Syntax e.g. `raster_out=raster1+raster2`. Use original filenames, without extension|None|True|True -QgsProcessingParameterFile|file|File containing expression(s) to evaluate (same rule for raster names than above)|QgsProcessingParameterFile.File|txt|None|True -QgsProcessingParameterString|seed|Integer seed for rand() function|None|False|True -*QgsProcessingParameterBoolean|-s|Generate random seed (result is non-deterministic)|False -QgsProcessingParameterFolderDestination|output_dir|Results Directory diff --git a/python/plugins/processing/algs/grass7/ext/r_mapcalc.py b/python/plugins/processing/algs/grass7/ext/r_mapcalc.py deleted file mode 100644 index 9df6f4edd69..00000000000 --- a/python/plugins/processing/algs/grass7/ext/r_mapcalc.py +++ /dev/null @@ -1,65 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -*************************************************************************** - r_mapcalc.py - ------------ - Date : February 2016 - Copyright : (C) 2016 by Médéric Ribreux - Email : medspx at medspx dot fr -*************************************************************************** -* * -* This program is free software; you can redistribute it and/or modify * -* it under the terms of the GNU General Public License as published by * -* the Free Software Foundation; either version 2 of the License, or * -* (at your option) any later version. * -* * -*************************************************************************** -""" - -__author__ = 'Médéric Ribreux' -__date__ = 'February 2016' -__copyright__ = '(C) 2016, Médéric Ribreux' - -# This will get replaced with a git SHA1 when you do a git archive - -__revision__ = '$Format:%H$' - -import os - - -def checkParameterValuesBeforeExecuting(alg, parameters, context): - """ Verify if we have the right parameters """ - if (alg.parameterAsString(parameters, 'expression', context) - and alg.parameterAsString(parameters, 'file', context)): - return False, alg.tr("You need to set either inline expression or a rules file!") - - return True, None - - -def processInputs(alg, parameters, context, feedback): - # We will use the same raster names than in QGIS to name the rasters in GRASS - rasters = alg.parameterAsLayerList(parameters, 'maps', context) - for idx, raster in enumerate(rasters): - rasterName = os.path.splitext( - os.path.basename(raster.source()))[0] - alg.inputLayers.append(raster) - alg.setSessionProjectionFromLayer(raster) - command = 'r.in.gdal input="{0}" output="{1}" --overwrite -o'.format( - os.path.normpath(raster.source()), - rasterName) - alg.commands.append(command) - - alg.removeParameter('maps') - alg.postInputs() - - -def processCommand(alg, parameters, context, feedback): - alg.processCommand(parameters, context, feedback, True) - - -def processOutputs(alg, parameters, context, feedback): - # We need to export every raster from the GRASSDB - alg.exportRasterLayersIntoDirectory('output_dir', - parameters, context, - wholeDB=True)