Navigation Menu

Skip to content

Commit

Permalink
Update TinSurfaceCreate.py
Browse files Browse the repository at this point in the history
minor adjustments and some funtionalities added (first return selection, output as .asc)
  • Loading branch information
spono committed Nov 16, 2015
1 parent 96040ab commit 5ec337a
Showing 1 changed file with 24 additions and 8 deletions.
32 changes: 24 additions & 8 deletions python/plugins/processing/algs/lidar/fusion/TinSurfaceCreate.py
Expand Up @@ -2,7 +2,7 @@

"""
***************************************************************************
Catalog.py
TINSurfaceCreate.py
---------------------
Date : June 2014
Copyright : (C) 2014 by Agresta S. Coop
Expand All @@ -27,21 +27,23 @@
from processing.core.parameters import ParameterFile
from processing.core.parameters import ParameterNumber
from processing.core.parameters import ParameterSelection
from processing.core.parameters import ParameterString
from processing.core.outputs import OutputFile
from FusionAlgorithm import FusionAlgorithm
from FusionUtils import FusionUtils
from processing.core.parameters import ParameterString



class TinSurfaceCreate(FusionAlgorithm):

INPUT = 'INPUT'
OUTPUT_DTM = 'OUTPUT_DTM'
OUTPUT = 'OUTPUT'
CELLSIZE = 'CELLSIZE'
XYUNITS = 'XYUNITS'
ZUNITS = 'ZUNITS'
UNITS = ['Meter', 'Feet']
CLASS = 'CLASS'
RETURN = 'RETURN'

def defineCharacteristics(self):
self.name, self.i18n_name = self.trAlgorithm('Tin Surface Create')
Expand All @@ -54,20 +56,28 @@ def defineCharacteristics(self):
self.tr('XY Units'), self.UNITS))
self.addParameter(ParameterSelection(self.ZUNITS,
self.tr('Z Units'), self.UNITS))
self.addOutput(OutputFile(self.OUTPUT_DTM,
self.tr('DTM Output Surface'), 'dtm'))
self.addOutput(OutputFile(self.OUTPUT,
self.tr('.dtm output surface'), 'dtm'))
class_var = ParameterString(self.CLASS,
self.tr('Class'), 2, False, True)
self.tr('Class'), '', False, True)
class_var.isAdvanced = True
self.addParameter(class_var)
return_sel = ParameterString(self.RETURN,
self.tr('Select specific return'), '', False, True)
return_sel.isAdvanced = True
self.addParameter(return_sel)

def processAlgorithm(self, progress):
commands = [os.path.join(FusionUtils.FusionPath(), 'TINSurfaceCreate.exe')]
commands.append('/verbose')
class_var = self.getParameterValue(self.CLASS)
if unicode(class_var).strip() != '':
if unicode(class_var).strip():
commands.append('/class:' + unicode(class_var))
commands.append(self.getOutputValue(self.OUTPUT_DTM))
return_sel = self.getParameterValue(self.RETURN)
if unicode(return_sel).strip():
commands.append('/return:' + unicode(return_sel))
outFile = self.getOutputValue(self.OUTPUT)
commands.append(outFile)
commands.append(unicode(self.getParameterValue(self.CELLSIZE)))
commands.append(self.UNITS[self.getParameterValue(self.XYUNITS)][0])
commands.append(self.UNITS[self.getParameterValue(self.ZUNITS)][0])
Expand All @@ -81,3 +91,9 @@ def processAlgorithm(self, progress):
else:
commands.extend(files)
FusionUtils.runFusion(commands, progress)
commands = [os.path.join(FusionUtils.FusionPath(), 'DTM2ASCII.exe')]
#commands.append('/raster')
commands.append(outFile)
commands.append(self.getOutputValue(self.OUTPUT))
p = subprocess.Popen(commands, shell=True)
p.wait()

0 comments on commit 5ec337a

Please sign in to comment.