예제 #1
0
    def processAlgorithm(self, context, feedback):
        layer = dataobjects.getLayerFromString(
            self.getParameterValue(self.INPUT))
        value = self.getParameterValue(self.NUMBER)

        output = self.getOutputFromName(self.OUTPUT)

        raster = gdal.Open(layer.source(), gdal.GA_ReadOnly)
        geoTransform = raster.GetGeoTransform()

        cellsize = (layer.extent().xMaximum() - layer.extent().xMinimum()) \
            / layer.width()

        w = RasterWriter(output.getCompatibleFileName(self),
                         layer.extent().xMinimum(),
                         layer.extent().yMinimum(),
                         layer.extent().xMaximum(),
                         layer.extent().yMaximum(),
                         cellsize,
                         1,
                         layer.crs(),
                         geoTransform
                         )
        w.matrix.fill(value)
        w.close()
예제 #2
0
    def processAlgorithm(self, progress):
        layer = dataobjects.getObjectFromUri(
            self.getParameterValue(self.INPUT))
        value = self.getParameterValue(self.NUMBER)

        output = self.getOutputFromName(self.OUTPUT)

        raster = gdal.Open(layer.source(), gdal.GA_ReadOnly)
        geoTransform = raster.GetGeoTransform()

        cellsize = (layer.extent().xMaximum() - layer.extent().xMinimum()) \
            / layer.width()

        w = RasterWriter(output.getCompatibleFileName(self),
                         layer.extent().xMinimum(),
                         layer.extent().yMinimum(),
                         layer.extent().xMaximum(),
                         layer.extent().yMaximum(),
                         cellsize,
                         1,
                         layer.crs(),
                         geoTransform
                         )
        w.matrix.fill(value)
        w.close()
예제 #3
0
 def processAlgorithm(self, progress):
     output = self.getOutputFromName(self.OUTPUT)
     value = self.getOutputValue(self.NUMBER)
     layer = dataobjects.getObjectFromUri(
         self.getParameterValue(self.INPUT))
     cellsize = (layer.extent().xMaximum() - layer.extent().xMinimum()) \
         / layer.width()
     w = RasterWriter(output.getCompatibleFileName(self),
                      layer.extent().xMinimum(),
                      layer.extent().yMinimum(),
                      layer.extent().xMaximum(),
                      layer.extent().yMaximum(),
                      cellsize,
                      1,
                      self.crs,
                     )
     w.matrix[:] = value
     w.close()
예제 #4
0
    def processAlgorithm(self, parameters, context, feedback):
        layer = self.parameterAsRasterLayer(parameters, self.INPUT, context)
        value = self.parameterAsDouble(parameters, self.NUMBER, context)

        outputFile = self.parameterAsOutputLayer(parameters, self.OUTPUT,
                                                 context)

        raster = gdal.Open(layer.source(), gdal.GA_ReadOnly)
        geoTransform = raster.GetGeoTransform()

        cellsize = (layer.extent().xMaximum() - layer.extent().xMinimum()) \
            / layer.width()

        w = RasterWriter(outputFile,
                         layer.extent().xMinimum(),
                         layer.extent().yMinimum(),
                         layer.extent().xMaximum(),
                         layer.extent().yMaximum(), cellsize, 1, layer.crs(),
                         geoTransform)
        w.matrix.fill(value)
        w.close()

        return {self.OUTPUT: outputFile}
예제 #5
0
    def processAlgorithm(self, parameters, context, feedback):
        layer = QgsProcessingUtils.mapLayerFromString(self.getParameterValue(self.INPUT), context)
        value = self.getParameterValue(self.NUMBER)

        output = self.getOutputFromName(self.OUTPUT)

        raster = gdal.Open(layer.source(), gdal.GA_ReadOnly)
        geoTransform = raster.GetGeoTransform()

        cellsize = (layer.extent().xMaximum() - layer.extent().xMinimum()) \
            / layer.width()

        w = RasterWriter(output.getCompatibleFileName(self),
                         layer.extent().xMinimum(),
                         layer.extent().yMinimum(),
                         layer.extent().xMaximum(),
                         layer.extent().yMaximum(),
                         cellsize,
                         1,
                         layer.crs(),
                         geoTransform
                         )
        w.matrix.fill(value)
        w.close()