Skip to content
Permalink
Browse files

Merge pull request #2472 from spono/patch-8

[Processing] Update TinSurfaceCreate.py
  • Loading branch information
volaya committed Nov 27, 2015
2 parents ae748d3 + 4f9244d commit 4b853bfa408adfaca3e7e38ab85c21527b889360
Showing with 25 additions and 8 deletions.
  1. +25 −8 python/plugins/processing/algs/lidar/fusion/TinSurfaceCreate.py
@@ -2,7 +2,7 @@

"""
***************************************************************************
Catalog.py
TINSurfaceCreate.py
---------------------
Date : June 2014
Copyright : (C) 2014 by Agresta S. Coop
@@ -24,24 +24,27 @@
__revision__ = '$Format:%H$'

import os
import subprocess
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')
@@ -54,20 +57,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])
@@ -81,3 +92,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 4b853bf

Please sign in to comment.
You can’t perform that action at this time.