mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-18 00:03:05 -04:00
[processing] added specific algorithm for saga 214
This commit is contained in:
parent
e9228b67c9
commit
b0291985ac
75
python/plugins/processing/algs/saga/SagaAlgorithm214.py
Normal file
75
python/plugins/processing/algs/saga/SagaAlgorithm214.py
Normal file
@ -0,0 +1,75 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
***************************************************************************
|
||||
SagaAlgorithm213.py
|
||||
---------------------
|
||||
Date : December 2014
|
||||
Copyright : (C) 2014 by Victor Olaya
|
||||
Email : volayaf at gmail dot com
|
||||
***************************************************************************
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
***************************************************************************
|
||||
"""
|
||||
|
||||
__author__ = 'Victor Olaya'
|
||||
__date__ = 'December 2014'
|
||||
__copyright__ = '(C) 2014, Victor Olaya'
|
||||
|
||||
# This will get replaced with a git SHA1 when you do a git archive
|
||||
|
||||
__revision__ = '$Format:%H$'
|
||||
|
||||
from qgis.core import *
|
||||
from PyQt4.QtCore import *
|
||||
from PyQt4.QtGui import *
|
||||
|
||||
from SagaAlgorithm213 import SagaAlgorithm213
|
||||
from processing.core.ProcessingConfig import ProcessingConfig
|
||||
from processing.core.ProcessingLog import ProcessingLog
|
||||
from processing.core.GeoAlgorithmExecutionException import \
|
||||
GeoAlgorithmExecutionException
|
||||
from processing.core.parameters import *
|
||||
from processing.core.outputs import *
|
||||
import SagaUtils
|
||||
from processing.tools import dataobjects
|
||||
from processing.tools.system import *
|
||||
|
||||
sessionExportedLayers = {}
|
||||
|
||||
class SagaAlgorithm214(SagaAlgorithm213):
|
||||
|
||||
|
||||
def getCopy(self):
|
||||
newone = SagaAlgorithm214(self.descriptionFile)
|
||||
newone.provider = self.provider
|
||||
return newone
|
||||
|
||||
def exportRasterLayer(self, source):
|
||||
global sessionExportedLayers
|
||||
if source in sessionExportedLayers:
|
||||
exportedLayer = sessionExportedLayers[source]
|
||||
if os.path.exists(exportedLayer):
|
||||
self.exportedLayers[source] = exportedLayer
|
||||
return None
|
||||
else:
|
||||
del sessionExportedLayers[source]
|
||||
layer = dataobjects.getObjectFromUri(source, False)
|
||||
if layer:
|
||||
filename = layer.name()
|
||||
else:
|
||||
filename = os.path.basename(source)
|
||||
validChars = \
|
||||
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:'
|
||||
filename = ''.join(c for c in filename if c in validChars)
|
||||
if len(filename) == 0:
|
||||
filename = 'layer'
|
||||
destFilename = getTempFilenameInTempFolder(filename + '.sgrd')
|
||||
self.exportedLayers[source] = destFilename
|
||||
sessionExportedLayers[source] = destFilename
|
||||
return 'io_gdal -TRANSFORM -INTERPOL 0 -GRIDS "' + destFilename + '" -FILES "' + source + '"'
|
@ -33,6 +33,7 @@ from processing.core.ProcessingConfig import ProcessingConfig, Setting
|
||||
from processing.core.ProcessingLog import ProcessingLog
|
||||
from SagaAlgorithm212 import SagaAlgorithm212
|
||||
from SagaAlgorithm213 import SagaAlgorithm213
|
||||
from SagaAlgorithm214 import SagaAlgorithm214
|
||||
from SplitRGBBands import SplitRGBBands
|
||||
import SagaUtils
|
||||
from processing.tools.system import *
|
||||
@ -41,7 +42,7 @@ class SagaAlgorithmProvider(AlgorithmProvider):
|
||||
|
||||
supportedVersions = {"2.1.2": ("2.1.2", SagaAlgorithm212),
|
||||
"2.1.3": ("2.1.3", SagaAlgorithm213),
|
||||
"2.1.4": ("2.1.3", SagaAlgorithm213)}
|
||||
"2.1.4": ("2.1.3", SagaAlgorithm214)}
|
||||
|
||||
def __init__(self):
|
||||
AlgorithmProvider.__init__(self)
|
||||
|
Loading…
x
Reference in New Issue
Block a user