Example #1
0
    def initAlgorithm(self, config=None):

        self.addParameter(ParameterInterpolationData(self.INTERPOLATION_DATA,
                                                     self.tr('Input layer(s)')))
        self.addParameter(QgsProcessingParameterNumber(self.DISTANCE_COEFFICIENT,
                                                       self.tr('Distance coefficient P'), type=QgsProcessingParameterNumber.Double,
                                                       minValue=0.0, maxValue=99.99, defaultValue=2.0))
        self.addParameter(QgsProcessingParameterExtent(self.EXTENT,
                                                       self.tr('Extent'),
                                                       optional=False))
        pixel_size_param = ParameterPixelSize(self.PIXEL_SIZE,
                                              self.tr('Output raster size'),
                                              layersData=self.INTERPOLATION_DATA,
                                              extent=self.EXTENT,
                                              minValue=0.0,
                                              default=0.1)
        self.addParameter(pixel_size_param)

        cols_param = QgsProcessingParameterNumber(self.COLUMNS,
                                                  self.tr('Number of columns'),
                                                  optional=True,
                                                  minValue=0, maxValue=10000000)
        cols_param.setFlags(cols_param.flags() | QgsProcessingParameterDefinition.FlagHidden)
        self.addParameter(cols_param)

        rows_param = QgsProcessingParameterNumber(self.ROWS,
                                                  self.tr('Number of rows'),
                                                  optional=True,
                                                  minValue=0, maxValue=10000000)
        rows_param.setFlags(rows_param.flags() | QgsProcessingParameterDefinition.FlagHidden)
        self.addParameter(rows_param)

        self.addParameter(QgsProcessingParameterRasterDestination(self.OUTPUT,
                                                                  self.tr('Interpolated')))
Example #2
0
    def initAlgorithm(self, config=None):
        self.METHODS = [self.tr('Linear'), self.tr('Clough-Toucher (cubic)')]

        self.addParameter(
            ParameterInterpolationData(self.INTERPOLATION_DATA,
                                       self.tr('Input layer(s)')))
        self.addParameter(
            QgsProcessingParameterEnum(self.METHOD,
                                       self.tr('Interpolation method'),
                                       options=self.METHODS,
                                       defaultValue=0))
        self.addParameter(
            QgsProcessingParameterExtent(self.EXTENT,
                                         self.tr('Extent'),
                                         optional=False))
        pixel_size_param = ParameterPixelSize(
            self.PIXEL_SIZE,
            self.tr('Output raster size'),
            layersData=self.INTERPOLATION_DATA,
            extent=self.EXTENT,
            minValue=0.0,
            default=0.1)
        self.addParameter(pixel_size_param)

        cols_param = QgsProcessingParameterNumber(self.COLUMNS,
                                                  self.tr('Number of columns'),
                                                  optional=True,
                                                  minValue=0,
                                                  maxValue=10000000)
        cols_param.setFlags(cols_param.flags()
                            | QgsProcessingParameterDefinition.FlagHidden)
        self.addParameter(cols_param)

        rows_param = QgsProcessingParameterNumber(self.ROWS,
                                                  self.tr('Number of rows'),
                                                  optional=True,
                                                  minValue=0,
                                                  maxValue=10000000)
        rows_param.setFlags(rows_param.flags()
                            | QgsProcessingParameterDefinition.FlagHidden)
        self.addParameter(rows_param)

        self.addParameter(
            QgsProcessingParameterRasterDestination(self.OUTPUT,
                                                    self.tr('Interpolated')))

        triangulation_file_param = QgsProcessingParameterFeatureSink(
            self.TRIANGULATION,
            self.tr('Triangulation'),
            type=QgsProcessing.TypeVectorLine,
            optional=True)
        triangulation_file_param.setCreateByDefault(False)
        self.addParameter(triangulation_file_param)