Skip to content

Commit

Permalink
[Processing][GDAL] Well manage optional parameters
Browse files Browse the repository at this point in the history
Because EXTRA and NO_DATA parameters are optional, the value can be `None` which is the same as `''`.
  • Loading branch information
rldhont committed Apr 26, 2016
1 parent 0502265 commit 793b712
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 26 deletions.
12 changes: 8 additions & 4 deletions python/plugins/processing/algs/gdal/ClipByExtent.py
Expand Up @@ -107,9 +107,13 @@ def defineCharacteristics(self):

def getConsoleCommands(self):
out = self.getOutputValue(self.OUTPUT)
noData = unicode(self.getParameterValue(self.NO_DATA))
noData = self.getParameterValue(self.NO_DATA)
if noData is not None:
noData = unicode(noData)
projwin = unicode(self.getParameterValue(self.PROJWIN))
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)
jpegcompression = unicode(self.getParameterValue(self.JPEGCOMPRESSION))
predictor = unicode(self.getParameterValue(self.PREDICTOR))
zlevel = unicode(self.getParameterValue(self.ZLEVEL))
Expand All @@ -123,7 +127,7 @@ def getConsoleCommands(self):
arguments.append(GdalUtils.getFormatShortNameFromFilename(out))
arguments.append('-ot')
arguments.append(self.TYPE[self.getParameterValue(self.RTYPE)])
if len(noData) > 0:
if noData and len(noData) > 0:
arguments.append('-a_nodata')
arguments.append(noData)

Expand All @@ -134,7 +138,7 @@ def getConsoleCommands(self):
arguments.append(regionCoords[1])
arguments.append(regionCoords[2])

if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)
if GdalUtils.getFormatShortNameFromFilename(out) == "GTiff":
arguments.append("-co COMPRESS=" + compress)
Expand Down
12 changes: 8 additions & 4 deletions python/plugins/processing/algs/gdal/ClipByMask.py
Expand Up @@ -125,11 +125,15 @@ def getConsoleCommands(self):
maskLayer = dataobjects.getObjectFromUri(
self.getParameterValue(self.MASK))
ogrMask = ogrConnectionString(mask)[1:-1]
noData = unicode(self.getParameterValue(self.NO_DATA))
noData = self.getParameterValue(self.NO_DATA)
if noData is not None:
noData = unicode(noData)
addAlphaBand = self.getParameterValue(self.ALPHA_BAND)
cropToCutline = self.getParameterValue(self.CROP_TO_CUTLINE)
keepResolution = self.getParameterValue(self.KEEP_RESOLUTION)
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)
jpegcompression = unicode(self.getParameterValue(self.JPEGCOMPRESSION))
predictor = unicode(self.getParameterValue(self.PREDICTOR))
zlevel = unicode(self.getParameterValue(self.ZLEVEL))
Expand All @@ -144,7 +148,7 @@ def getConsoleCommands(self):
arguments.append('-q')
arguments.append('-of')
arguments.append(GdalUtils.getFormatShortNameFromFilename(out))
if len(noData) > 0:
if noData and len(noData) > 0:
arguments.append('-dstnodata')
arguments.append(noData)

Expand All @@ -169,7 +173,7 @@ def getConsoleCommands(self):
if addAlphaBand:
arguments.append('-dstalpha')

if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)
if GdalUtils.getFormatShortNameFromFilename(out) == "GTiff":
arguments.append("-co COMPRESS=" + compress)
Expand Down
6 changes: 4 additions & 2 deletions python/plugins/processing/algs/gdal/contour.py
Expand Up @@ -73,7 +73,9 @@ def defineCharacteristics(self):
def getConsoleCommands(self):
interval = unicode(self.getParameterValue(self.INTERVAL))
fieldName = unicode(self.getParameterValue(self.FIELD_NAME))
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)

arguments = []
if len(fieldName) > 0:
Expand All @@ -82,7 +84,7 @@ def getConsoleCommands(self):
arguments.append('-i')
arguments.append(interval)

if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)

arguments.append(self.getParameterValue(self.INPUT_RASTER))
Expand Down
12 changes: 8 additions & 4 deletions python/plugins/processing/algs/gdal/gdalcalc.py
Expand Up @@ -99,10 +99,14 @@ def defineCharacteristics(self):

def getConsoleCommands(self):
out = self.getOutputValue(self.OUTPUT)
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)
#debug = self.getParameterValue(self.DEBUG)
formula = self.getParameterValue(self.FORMULA)
noData = unicode(self.getParameterValue(self.NO_DATA))
noData = self.getParameterValue(self.NO_DATA)
if noData is not None:
noData = unicode(noData)

arguments = []
arguments.append('--calc')
Expand All @@ -111,10 +115,10 @@ def getConsoleCommands(self):
arguments.append(GdalUtils.getFormatShortNameFromFilename(out))
arguments.append('--type')
arguments.append(self.TYPE[self.getParameterValue(self.RTYPE)])
if len(noData) > 0:
if noData and len(noData) > 0:
arguments.append('--NoDataValue')
arguments.append(noData)
if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)
#if debug:
# arguments.append('--debug')
Expand Down
12 changes: 8 additions & 4 deletions python/plugins/processing/algs/gdal/rasterize.py
Expand Up @@ -126,7 +126,9 @@ def defineCharacteristics(self):
def getConsoleCommands(self):
inLayer = self.getParameterValue(self.INPUT)
ogrLayer = ogrConnectionString(inLayer)[1:-1]
noData = unicode(self.getParameterValue(self.NO_DATA))
noData = self.getParameterValue(self.NO_DATA)
if noData is not None:
noData = unicode(noData)
jpegcompression = unicode(self.getParameterValue(self.JPEGCOMPRESSION))
predictor = unicode(self.getParameterValue(self.PREDICTOR))
zlevel = unicode(self.getParameterValue(self.ZLEVEL))
Expand All @@ -135,7 +137,9 @@ def getConsoleCommands(self):
bigtiff = self.BIGTIFFTYPE[self.getParameterValue(self.BIGTIFF)]
tfw = unicode(self.getParameterValue(self.TFW))
out = self.getOutputValue(self.OUTPUT)
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)
rastext = unicode(self.getParameterValue(self.RAST_EXT))

arguments = []
Expand Down Expand Up @@ -172,7 +176,7 @@ def getConsoleCommands(self):
arguments.append(unicode(self.getParameterValue(self.WIDTH)))
arguments.append(unicode(self.getParameterValue(self.HEIGHT)))

if len(noData) > 0:
if noData and len(noData) > 0:
arguments.append('-a_nodata')
arguments.append(noData)

Expand All @@ -190,7 +194,7 @@ def getConsoleCommands(self):
arguments.append("-co TFW=YES")
if len(bigtiff) > 0:
arguments.append("-co BIGTIFF=" + bigtiff)
if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)
arguments.append('-l')

Expand Down
12 changes: 8 additions & 4 deletions python/plugins/processing/algs/gdal/translate.py
Expand Up @@ -129,13 +129,17 @@ def getConsoleCommands(self):
out = self.getOutputValue(translate.OUTPUT)
outsize = unicode(self.getParameterValue(self.OUTSIZE))
outsizePerc = unicode(self.getParameterValue(self.OUTSIZE_PERC))
noData = unicode(self.getParameterValue(self.NO_DATA))
noData = self.getParameterValue(self.NO_DATA)
if noData is not None:
noData = unicode(noData)
expand = unicode(self.getParameterFromName(
self.EXPAND).options[self.getParameterValue(self.EXPAND)])
projwin = unicode(self.getParameterValue(self.PROJWIN))
crsId = self.getParameterValue(self.SRS)
sds = self.getParameterValue(self.SDS)
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)
jpegcompression = unicode(self.getParameterValue(self.JPEGCOMPRESSION))
predictor = unicode(self.getParameterValue(self.PREDICTOR))
zlevel = unicode(self.getParameterValue(self.ZLEVEL))
Expand All @@ -157,7 +161,7 @@ def getConsoleCommands(self):
arguments.append('-outsize')
arguments.append(outsize)
arguments.append(outsize)
if len(noData) > 0:
if noData and len(noData) > 0:
arguments.append('-a_nodata')
arguments.append(noData)
if expand != 'none':
Expand All @@ -180,7 +184,7 @@ def getConsoleCommands(self):
arguments.append(unicode(crsId))
if sds:
arguments.append('-sds')
if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)
if GdalUtils.getFormatShortNameFromFilename(out) == "GTiff":
arguments.append("-co COMPRESS=" + compress)
Expand Down
12 changes: 8 additions & 4 deletions python/plugins/processing/algs/gdal/warp.py
Expand Up @@ -118,7 +118,9 @@ def defineCharacteristics(self):
self.addOutput(OutputRaster(self.OUTPUT, self.tr('Reprojected')))

def getConsoleCommands(self):
noData = unicode(self.getParameterValue(self.NO_DATA))
noData = self.getParameterValue(self.NO_DATA)
if noData is not None:
noData = unicode(noData)
srccrs = self.getParameterValue(self.SOURCE_SRS)
dstcrs = self.getParameterValue(self.DEST_SRS)
jpegcompression = unicode(self.getParameterValue(self.JPEGCOMPRESSION))
Expand All @@ -139,7 +141,7 @@ def getConsoleCommands(self):
if len(dstcrs) > 0:
arguments.append('-t_srs')
arguments.append(dstcrs)
if len(noData) > 0:
if noData and len(noData) > 0:
arguments.append('-dstnodata')
arguments.append(noData)
arguments.append('-r')
Expand All @@ -152,7 +154,9 @@ def getConsoleCommands(self):
arguments.append('-tr')
arguments.append(unicode(self.getParameterValue(self.TR)))
arguments.append(unicode(self.getParameterValue(self.TR)))
extra = unicode(self.getParameterValue(self.EXTRA))
extra = self.getParameterValue(self.EXTRA)
if extra is not None:
extra = unicode(extra)
regionCoords = rastext.split(',')
try:
rastext = []
Expand All @@ -165,7 +169,7 @@ def getConsoleCommands(self):
rastext = []
if rastext:
arguments.extend(rastext)
if len(extra) > 0:
if extra and len(extra) > 0:
arguments.append(extra)
if GdalUtils.getFormatShortNameFromFilename(out) == "GTiff":
arguments.append("-co COMPRESS=" + compress)
Expand Down

0 comments on commit 793b712

Please sign in to comment.