2 votos

¿Cómo instalar los métodos de remuestreo que faltan en GDAL Warp (QGIS)?

Estoy tratando de remuestrear mis datos basándome en el método de remuestreo "suma". Pero, por desgracia, no veo esto en el menú desplegable de Warp.Estoy ejecutando una versión 3.1 de GDAl, pero no tiene esta función. ¿Puede alguien ayudarme a averiguar cómo "instalar" esto? enter image description here

3voto

BWW Puntos 302

El método no está en la GUI, pero puede parchear manualmente el archivo warp.py ya que debería estar en una ruta similar a processing/algs/gdal/warp.py

El siguiente código

    def initAlgorithm(self, config=None):
        self.methods = ((self.tr('Nearest Neighbour'), 'near'),
                        (self.tr('Bilinear'), 'bilinear'),
                        (self.tr('Cubic'), 'cubic'),
                        (self.tr('Cubic Spline'), 'cubicspline'),
                        (self.tr('Lanczos Windowed Sinc'), 'lanczos'),
                        (self.tr('Average'), 'average'),
                        (self.tr('Mode'), 'mode'),
                        (self.tr('Maximum'), 'max'),
                        (self.tr('Minimum'), 'min'),
                        (self.tr('Median'), 'med'),
                        (self.tr('First Quartile'), 'q1'),
                        (self.tr('Third Quartile'), 'q3'))

podría cambiarse

    def initAlgorithm(self, config=None):
        self.methods = ((self.tr('Nearest Neighbour'), 'near'),
                        (self.tr('Bilinear'), 'bilinear'),
                        (self.tr('Cubic'), 'cubic'),
                        (self.tr('Cubic Spline'), 'cubicspline'),
                        (self.tr('Lanczos Windowed Sinc'), 'lanczos'),
                        (self.tr('Average'), 'average'),
                        (self.tr('Mode'), 'mode'),
                        (self.tr('Maximum'), 'max'),
                        (self.tr('Minimum'), 'min'),
                        (self.tr('Median'), 'med'),
                        (self.tr('First Quartile'), 'q1'),
                        (self.tr('Third Quartile'), 'q3'))
        if GdalUtils.version() >= 3010000:
            self.methods = list(self.methods)
            self.methods.append((self.tr('Sum'), 'sum'))
            self.methods = tuple(self.methods)

PD: para mantener una tupla, la convierto en una lista para el método append Sum y la vuelvo a convertir en tupla. Bastante sucio...

Un método similar podría aplicarse para rms método de muestreo pero probando la versión de GDAL a 3.3 y utilizando insert para obtener la misma posición en la lista que la documentación ( https://gdal.org/programs/gdalwarp.html )

Si se tratara de un PR, también tendría que mirar la traducción de la nueva cadena a traducir tal vez.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X