Skip to content

Commit 99857bc

Browse files
committedSep 14, 2013
[processing]fixes in saga filename handling
fixed saga buffer description
1 parent 2e3765b commit 99857bc

File tree

4 files changed

+23
-16
lines changed

4 files changed

+23
-16
lines changed
 

‎python/plugins/processing/saga/SagaAlgorithm.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -290,7 +290,7 @@ def processAlgorithm(self, progress):
290290
for out in self.outputs:
291291
if isinstance(out, OutputRaster):
292292
filename = out.getCompatibleFileName(self)
293-
filename = tempFolder() + os.sep + os.path.basename(filename) + ".sgrd"
293+
filename += ".sgrd"
294294
command+=(" -" + out.name + " \"" + filename + "\"");
295295
if isinstance(out, OutputVector):
296296
filename = out.getCompatibleFileName(self)
@@ -305,7 +305,7 @@ def processAlgorithm(self, progress):
305305
for out in self.outputs:
306306
if isinstance(out, OutputRaster):
307307
filename = out.getCompatibleFileName(self)
308-
filename2 = tempFolder() + os.sep + os.path.basename(filename) + ".sgrd"
308+
filename2 = filename + ".sgrd"
309309
formatIndex = 1 if saga208 else 4
310310
if isWindows() or isMac() or not saga208:
311311
commands.append("io_gdal 1 -GRIDS \"" + filename2 + "\" -FORMAT " + str(formatIndex) +" -TYPE 0 -FILE \"" + filename + "\"");
@@ -383,7 +383,7 @@ def exportRasterLayer(self, source):
383383
if layer:
384384
filename = str(layer.name())
385385
else:
386-
filename = source.rstrip(".sgrd")
386+
filename = os.path.basename(filename)
387387
validChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:"
388388
filename = ''.join(c for c in filename if c in validChars)
389389
if len(filename) == 0:
Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
Shapes Buffer
1+
Shapes Buffer (Attribute distance)|Shapes Buffer
22
shapes_tools
33
ParameterVector|SHAPES|Shapes|-1|False
4-
ParameterSelection|BUF_TYPE|Buffer Distance|[0] fixed value;[1] attribute field
5-
ParameterNumber|BUF_DIST|Buffer Distance (Fixed)|None|None|100.0
6-
ParameterTableField|BUF_FIELD|Buffer Distance (Attribute)|SHAPES|-1|False
7-
ParameterNumber|BUF_SCALE|Scaling Factor for Attribute Value|None|None|1.0
8-
ParameterNumber|BUF_ZONES|Number of Buffer Zones|1.0|None|1.0
9-
ParameterNumber|DCIRCLE|Circle Point Distance [Degree]|None|None|5.0
4+
ParameterTableField|DIST_FIELD|Buffer Distance|SHAPES|-1|False
5+
ParameterNumber|DIST_SCALE|Scaling Factor for Attribute Value|None|None|1.0
6+
ParameterNumber|NZONES|Number of Buffer Zones|1.0|None|1.0
7+
ParameterNumber|DARC|Arc Vertex Distance [Degree]|0.01|45.0|5.0
108
ParameterBoolean|DISSOLVE |Dissolve Buffers|True
11-
OutputVector|BUFFER|Buffer
9+
ParameterBoolean|POLY_INNER |Inner Buffer|False
10+
OutputVector|BUFFER|Buffer
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Shapes Buffer (Fixed distance)|Shapes Buffer
2+
shapes_tools
3+
ParameterVector|SHAPES|Shapes|-1|False
4+
ParameterNumber|DIST_FIELD_DEFAULT|Buffer distance|0.0|None|100.0
5+
ParameterNumber|NZONES|Number of Buffer Zones|1.0|None|1.0
6+
ParameterNumber|DARC|Arc Vertex Distance [Degree]|0.01|45.0|5.0
7+
ParameterBoolean|DISSOLVE |Dissolve Buffers|True
8+
ParameterBoolean|POLY_INNER |Inner Buffer|False
9+
OutputVector|BUFFER|Buffer

‎python/plugins/processing/script/scripts/Save_selected_features.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
from qgis.core import *
2-
from PyQt4.QtCore import *
3-
from PyQt4.QtGui import *
42
from processing.core.VectorWriter import VectorWriter
53

64
#Here we define the input and outputs
@@ -12,7 +10,7 @@
1210
#And here is the body of the algorithm
1311
#=======================================
1412

15-
#input layers values are always a string with its location.
13+
#input layers values are always a string with its source.
1614
#That string can be converted into a QGIS object (a QgsVectorLayer in this case))
1715
#using the processing.getObject() method
1816
vectorLayer = processing.getObject(input)
@@ -22,11 +20,12 @@
2220
#First we create the output layer.
2321
#To do so, we create a ProcessingVectorWriter, that we can later use to add features.
2422
provider = vectorLayer.dataProvider()
23+
2524
writer = VectorWriter(output, None, provider.fields(), provider.geometryType(), vectorLayer.crs())
2625

2726
#Now we take the selected features and add them to the output layer
28-
selection = vectorLayer.selectedFeatures()
29-
for feat in selection:
27+
features = processing.features(vectorLayer)
28+
for feat in features:
3029
writer.addFeature(feat)
3130
del writer
3231

0 commit comments

Comments
 (0)
Please sign in to comment.