def defineCharacteristics(self): self.name, self.i18n_name = self.trAlgorithm("Grid Metrics") self.group, self.i18n_group = self.trAlgorithm("Points") self.addParameter(ParameterFile(self.INPUT, self.tr("Input LAS layer"))) self.addParameter(ParameterFile(self.GROUND, self.tr("Input ground DTM layer"))) self.addParameter(ParameterNumber(self.HEIGHT, self.tr("Height break"))) self.addParameter(ParameterNumber(self.CELLSIZE, self.tr("Cell Size"))) self.addOutput(OutputFile(self.OUTPUT_CSV_ELEVATION, self.tr("Output table with grid metrics"))) output_csv_intensity = OutputFile(self.OUTPUT_CSV_INTENSITY, self.tr("OUTPUT CSV INTENSITY")) output_csv_intensity.hidden = True self.addOutput(output_csv_intensity) output_txt_elevation = OutputFile(self.OUTPUT_TXT_ELEVATION, self.tr("OUTPUT CSV INTENSITY")) output_txt_elevation.hidden = True self.addOutput(output_txt_elevation) output_txt_intensity = OutputFile(self.OUTPUT_TXT_INTENSITY, self.tr("OUTPUT CSV INTENSITY")) output_txt_intensity.hidden = True self.addOutput(output_txt_intensity) outlier = ParameterString(self.OUTLIER, self.tr("Outlier:low,high"), "", False, True) outlier.isAdvanced = True self.addParameter(outlier) first = ParameterBoolean(self.FIRST, self.tr("First"), False) first.isAdvanced = True self.addParameter(first) minht = ParameterString(self.MINHT, self.tr("Htmin"), "", False, True) minht.isAdvanced = True self.addParameter(minht) class_var = ParameterString(self.CLASS, self.tr("Class (set blank if not used)"), "", False, True) class_var.isAdvanced = True self.addParameter(class_var)
def defineCharacteristics(self): self.name, self.i18n_name = self.trAlgorithm('Grid Metrics') self.group, self.i18n_group = self.trAlgorithm('Points') self.addParameter( ParameterFile(self.INPUT, self.tr('Input LAS layer'), optional=False)) self.addParameter( ParameterFile(self.GROUND, self.tr('Input ground PLANS DTM layer'), optional=False)) self.addParameter(ParameterNumber(self.HEIGHT, self.tr('Height break'))) self.addParameter(ParameterNumber(self.CELLSIZE, self.tr('Cellsize'))) self.addParameter( ParameterBoolean(self.FIRST, self.tr('Use only first returns'), False)) self.addParameter( ParameterBoolean( self.FUEL, self. tr('Apply fuel parameter models (cannot be used with /first switch)' ), False)) self.addOutput( OutputFile(self.OUTPUT_CSV_ELEVATION, self.tr('Output table with grid metrics'))) output_csv_intensity = OutputFile(self.OUTPUT_CSV_INTENSITY, self.tr('OUTPUT CSV INTENSITY')) output_csv_intensity.hidden = True self.addOutput(output_csv_intensity) output_txt_elevation = OutputFile(self.OUTPUT_TXT_ELEVATION, self.tr('OUTPUT CSV INTENSITY')) output_txt_elevation.hidden = True self.addOutput(output_txt_elevation) output_txt_intensity = OutputFile(self.OUTPUT_TXT_INTENSITY, self.tr('OUTPUT CSV INTENSITY')) output_txt_intensity.hidden = True self.addOutput(output_txt_intensity) outlier = ParameterString(self.OUTLIER, self.tr('Outlier:low,high'), '', False, True) outlier.isAdvanced = True self.addParameter(outlier) minht = ParameterString( self.MINHT, self.tr('Minimum height used for points used to compute metrics'), '', False, True) minht.isAdvanced = True self.addParameter(minht) class_var = ParameterString(self.CLASS, self.tr('Class (set blank if not used)'), '', False, True) class_var.isAdvanced = True self.addParameter(class_var) self.addAdvancedModifiers()
def processOutputParameterToken(self, token): out = None if token.lower().strip().startswith('raster'): out = OutputRaster() elif token.lower().strip().startswith('vector'): out = OutputVector() elif token.lower().strip().startswith('table'): out = OutputTable() else: if token.lower().strip().startswith('file'): out = OutputFile() ext = token.strip()[len('file') + 1:] if ext: out.ext = ext elif token.lower().strip().startswith('directory'): out = OutputDirectory() elif token.lower().strip().startswith('number'): out = OutputNumber() elif token.lower().strip().startswith('string'): out = OutputString() if not self.saveOutputValues and out: outVal = OutputFile(RAlgorithm.R_OUTPUT_VALUES, self.tr('R Output values'), ext='txt') outVal.hidden = True self.addOutput(outVal) self.saveOutputValues = True return out
def defineCharacteristics(self): self.name, self.i18n_name = self.trAlgorithm('Grid Metrics') self.group, self.i18n_group = self.trAlgorithm('Points') self.addParameter(ParameterFile(self.INPUT, self.tr('Input LAS layer'))) self.addParameter( ParameterFile(self.GROUND, self.tr('Input ground DTM layer'))) self.addParameter(ParameterNumber(self.HEIGHT, self.tr('Height break'))) self.addParameter(ParameterNumber(self.CELLSIZE, self.tr('Cellsize'))) self.addOutput( OutputFile(self.OUTPUT_CSV_ELEVATION, self.tr('Output table with grid metrics'))) output_csv_intensity = OutputFile(self.OUTPUT_CSV_INTENSITY, self.tr('OUTPUT CSV INTENSITY')) output_csv_intensity.hidden = True self.addOutput(output_csv_intensity) output_txt_elevation = OutputFile(self.OUTPUT_TXT_ELEVATION, self.tr('OUTPUT CSV INTENSITY')) output_txt_elevation.hidden = True self.addOutput(output_txt_elevation) output_txt_intensity = OutputFile(self.OUTPUT_TXT_INTENSITY, self.tr('OUTPUT CSV INTENSITY')) output_txt_intensity.hidden = True self.addOutput(output_txt_intensity) outlier = ParameterString(self.OUTLIER, self.tr('Outlier:low,high'), '', False, True) outlier.isAdvanced = True self.addParameter(outlier) first = ParameterBoolean(self.FIRST, self.tr('First'), False) first.isAdvanced = True self.addParameter(first) minht = ParameterString(self.MINHT, self.tr('Htmin'), '', False, True) minht.isAdvanced = True self.addParameter(minht) class_var = ParameterString(self.CLASS, self.tr('Class (set blank if not used)'), '', False, True) class_var.isAdvanced = True self.addParameter(class_var)
def defineCharacteristics(self): self.name = 'Grid Metrics' self.group = 'Points' self.addParameter(ParameterFile( self.INPUT, self.tr('Input las layer'))) self.addParameter(ParameterFile( self.GROUND, self.tr('Input ground DTM layer'))) self.addParameter(ParameterNumber( self.HEIGHT, self.tr('Height break'))) self.addParameter(ParameterNumber( self.CELLSIZE, self.tr('Cellsize'))) self.addOutput(OutputFile( self.OUTPUT_CSV_ELEVATION, self.tr('Output table with grid metrics'))) output_csv_intensity = OutputFile( self.OUTPUT_CSV_INTENSITY, self.tr('OUTPUT CSV INTENSITY')) output_csv_intensity.hidden = True self.addOutput(output_csv_intensity) output_txt_elevation = OutputFile( self.OUTPUT_TXT_ELEVATION, self.tr('OUTPUT CSV INTENSITY')) output_txt_elevation.hidden = True self.addOutput(output_txt_elevation) output_txt_intensity = OutputFile( self.OUTPUT_TXT_INTENSITY, self.tr('OUTPUT CSV INTENSITY')) output_txt_intensity.hidden = True self.addOutput(output_txt_intensity) outlier = ParameterString( self.OUTLIER, self.tr('Outlier:low,high'), '', False, True) outlier.isAdvanced = True self.addParameter(outlier) first = ParameterBoolean(self.FIRST, self.tr('First'), False) first.isAdvanced = True self.addParameter(first) minht = ParameterString(self.MINHT, self.tr('Htmin'), '', False, True) minht.isAdvanced = True self.addParameter(minht) class_var = ParameterString( self.CLASS, self.tr('Class (set blank if not used)'), '', False, True) class_var.isAdvanced = True self.addParameter(class_var)