示例#1
0
    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)
示例#2
0
    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()
示例#3
0
    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
示例#4
0
    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
示例#5
0
    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)
示例#6
0
文件: GridMetrics.py 项目: Ariki/QGIS
    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)