Skip to content

Commit bddcb7d

Browse files
committedMay 6, 2018
[processing][gdal] More nodata handling fixes
Fixes #18748
1 parent 739d4fa commit bddcb7d

File tree

5 files changed

+374
-8
lines changed

5 files changed

+374
-8
lines changed
 

‎python/plugins/processing/algs/gdal/gdal2tiles.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,8 @@ def getConsoleCommands(self, parameters, context, feedback, executing=True):
189189
arguments.append('-s')
190190
arguments.append(crs.authid())
191191

192-
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
193-
if nodata:
192+
if self.NODATA in parameters and parameters[self.NODATA] is not None:
193+
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
194194
arguments.append('-a')
195195
arguments.append(str(nodata))
196196

‎python/plugins/processing/algs/gdal/proximity.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,10 @@ def getConsoleCommands(self, parameters, context, feedback, executing=True):
138138
inLayer = self.parameterAsRasterLayer(parameters, self.INPUT, context)
139139
distance = self.parameterAsDouble(parameters, self.MAX_DISTANCE, context)
140140
replaceValue = self.parameterAsDouble(parameters, self.REPLACE, context)
141-
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
141+
if self.NODATA in parameters and parameters[self.NODATA] is not None:
142+
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
143+
else:
144+
nodata = None
142145
options = self.parameterAsString(parameters, self.OPTIONS, context)
143146
out = self.parameterAsOutputLayer(parameters, self.OUTPUT, context)
144147

@@ -158,7 +161,7 @@ def getConsoleCommands(self, parameters, context, feedback, executing=True):
158161
arguments.append('-maxdist')
159162
arguments.append(str(distance))
160163

161-
if nodata:
164+
if nodata is not None:
162165
arguments.append('-nodata')
163166
arguments.append(str(nodata))
164167

‎python/plugins/processing/algs/gdal/rasterize.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,8 @@ def getConsoleCommands(self, parameters, context, feedback, executing=True):
192192
if self.parameterAsBool(parameters, self.ALL_TOUCH, context):
193193
arguments.append('-at')
194194

195-
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
196-
if nodata:
195+
if self.NODATA in parameters and parameters[self.NODATA] is not None:
196+
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
197197
arguments.append('-a_nodata')
198198
arguments.append(nodata)
199199

‎python/plugins/processing/algs/gdal/warp.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,10 @@ def getConsoleCommands(self, parameters, context, feedback, executing=True):
166166
out = self.parameterAsOutputLayer(parameters, self.OUTPUT, context)
167167
sourceCrs = self.parameterAsCrs(parameters, self.SOURCE_CRS, context)
168168
targetCrs = self.parameterAsCrs(parameters, self.TARGET_CRS, context)
169-
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
169+
if self.NODATA in parameters and parameters[self.NODATA] is not None:
170+
nodata = self.parameterAsDouble(parameters, self.NODATA, context)
171+
else:
172+
nodata = None
170173
resolution = self.parameterAsDouble(parameters, self.TARGET_RESOLUTION, context)
171174

172175
arguments = []
@@ -178,7 +181,7 @@ def getConsoleCommands(self, parameters, context, feedback, executing=True):
178181
arguments.append('-t_srs')
179182
arguments.append(targetCrs.authid())
180183

181-
if nodata:
184+
if nodata is not None:
182185
arguments.append('-dstnodata')
183186
arguments.append(str(nodata))
184187

0 commit comments

Comments
 (0)