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
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -107,9 +107,13 @@ def defineCharacteristics(self):


def getConsoleCommands(self): def getConsoleCommands(self):
out = self.getOutputValue(self.OUTPUT) 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)) 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)) jpegcompression = unicode(self.getParameterValue(self.JPEGCOMPRESSION))
predictor = unicode(self.getParameterValue(self.PREDICTOR)) predictor = unicode(self.getParameterValue(self.PREDICTOR))
zlevel = unicode(self.getParameterValue(self.ZLEVEL)) zlevel = unicode(self.getParameterValue(self.ZLEVEL))
Expand All @@ -123,7 +127,7 @@ def getConsoleCommands(self):
arguments.append(GdalUtils.getFormatShortNameFromFilename(out)) arguments.append(GdalUtils.getFormatShortNameFromFilename(out))
arguments.append('-ot') arguments.append('-ot')
arguments.append(self.TYPE[self.getParameterValue(self.RTYPE)]) arguments.append(self.TYPE[self.getParameterValue(self.RTYPE)])
if len(noData) > 0: if noData and len(noData) > 0:
arguments.append('-a_nodata') arguments.append('-a_nodata')
arguments.append(noData) arguments.append(noData)


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


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


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


if len(extra) > 0: if extra and len(extra) > 0:
arguments.append(extra) arguments.append(extra)
if GdalUtils.getFormatShortNameFromFilename(out) == "GTiff": if GdalUtils.getFormatShortNameFromFilename(out) == "GTiff":
arguments.append("-co COMPRESS=" + compress) arguments.append("-co COMPRESS=" + compress)
Expand Down
6 changes: 4 additions & 2 deletions python/plugins/processing/algs/gdal/contour.py
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -73,7 +73,9 @@ def defineCharacteristics(self):
def getConsoleCommands(self): def getConsoleCommands(self):
interval = unicode(self.getParameterValue(self.INTERVAL)) interval = unicode(self.getParameterValue(self.INTERVAL))
fieldName = unicode(self.getParameterValue(self.FIELD_NAME)) 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 = [] arguments = []
if len(fieldName) > 0: if len(fieldName) > 0:
Expand All @@ -82,7 +84,7 @@ def getConsoleCommands(self):
arguments.append('-i') arguments.append('-i')
arguments.append(interval) arguments.append(interval)


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


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


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


arguments = [] 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.WIDTH)))
arguments.append(unicode(self.getParameterValue(self.HEIGHT))) arguments.append(unicode(self.getParameterValue(self.HEIGHT)))


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


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


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


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

0 comments on commit 793b712

Please sign in to comment.