Skip to content

Commit 45c8a09

Browse files
authored
Merge pull request #3353 from nyalldawson/processing
[Processing] QGIS alg cleanups
2 parents 4c39bd1 + c1649eb commit 45c8a09

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+136
-169
lines changed

python/plugins/processing/algs/qgis/AddTableField.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,11 +78,10 @@ def processAlgorithm(self, progress):
7878
layer = dataobjects.getObjectFromUri(
7979
self.getParameterValue(self.INPUT_LAYER))
8080

81-
provider = layer.dataProvider()
82-
fields = provider.fields()
81+
fields = layer.fields()
8382
fields.append(QgsField(fieldName, self.TYPES[fieldType], '',
8483
fieldLength, fieldPrecision))
85-
writer = output.getVectorWriter(fields, provider.wkbType(),
84+
writer = output.getVectorWriter(fields, layer.wkbType(),
8685
layer.crs())
8786
outFeat = QgsFeature()
8887
features = vector.features(layer)

python/plugins/processing/algs/qgis/AutoincrementalField.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,9 @@ def processAlgorithm(self, progress):
4949
output = self.getOutputFromName(self.OUTPUT)
5050
vlayer = \
5151
dataobjects.getObjectFromUri(self.getParameterValue(self.INPUT))
52-
vprovider = vlayer.dataProvider()
53-
fields = vprovider.fields()
52+
fields = vlayer.fields()
5453
fields.append(QgsField('AUTO', QVariant.Int))
55-
writer = output.getVectorWriter(fields, vprovider.wkbType(),
54+
writer = output.getVectorWriter(fields, vlayer.wkbType(),
5655
vlayer.crs())
5756
outFeat = QgsFeature()
5857
features = vector.features(vlayer)

python/plugins/processing/algs/qgis/Centroids.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ def processAlgorithm(self, progress):
6363

6464
writer = self.getOutputFromName(
6565
self.OUTPUT_LAYER).getVectorWriter(
66-
layer.pendingFields().toList(),
66+
layer.fields(),
6767
QgsWkbTypes.Point,
6868
layer.crs())
6969

python/plugins/processing/algs/qgis/CheckValidity.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -97,27 +97,26 @@ def processAlgorithm(self, progress):
9797
def doCheck(self, progress):
9898
layer = dataobjects.getObjectFromUri(
9999
self.getParameterValue(self.INPUT_LAYER))
100-
provider = layer.dataProvider()
101100

102101
settings = QSettings()
103102
method = int(settings.value(settings_method_key, 1))
104103

105104
valid_ouput = self.getOutputFromName(self.VALID_OUTPUT)
106-
valid_fields = layer.pendingFields().toList()
105+
valid_fields = layer.fields()
107106
valid_writer = valid_ouput.getVectorWriter(
108107
valid_fields,
109-
provider.wkbType(),
108+
layer.wkbType(),
110109
layer.crs())
111110
valid_count = 0
112111

113112
invalid_ouput = self.getOutputFromName(self.INVALID_OUTPUT)
114-
invalid_fields = layer.pendingFields().toList() + [
113+
invalid_fields = layer.fields().toList() + [
115114
QgsField(name='_errors',
116115
type=QVariant.String,
117116
len=255)]
118117
invalid_writer = invalid_ouput.getVectorWriter(
119118
invalid_fields,
120-
provider.wkbType(),
119+
layer.wkbType(),
121120
layer.crs())
122121
invalid_count = 0
123122

python/plugins/processing/algs/qgis/ConcaveHull.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ def processAlgorithm(self, progress):
111111
feat = QgsFeature()
112112
dissolved_layer.getFeatures(QgsFeatureRequest().setFilterFid(0)).nextFeature(feat)
113113
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
114-
layer.pendingFields().toList(), QgsWkbTypes.Polygon, layer.crs())
114+
layer.fields().toList(), QgsWkbTypes.Polygon, layer.crs())
115115
geom = feat.geometry()
116116
if no_multigeom and geom.isMultipart():
117117
# Only singlepart geometries are allowed

python/plugins/processing/algs/qgis/ConvexHull.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def processAlgorithm(self, progress):
7878
f = QgsField('value', QVariant.String, '', 255)
7979
if useField:
8080
index = layer.fieldNameIndex(fieldName)
81-
fType = layer.pendingFields()[index].type()
81+
fType = layer.fields()[index].type()
8282
if fType in [QVariant.Int, QVariant.UInt, QVariant.LongLong, QVariant.ULongLong]:
8383
f.setType(fType)
8484
f.setLength(20)
@@ -97,7 +97,7 @@ def processAlgorithm(self, progress):
9797
]
9898

9999
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
100-
fields, QgsWkbTypes.Polygon, layer.dataProvider().crs())
100+
fields, QgsWkbTypes.Polygon, layer.crs())
101101

102102
outFeat = QgsFeature()
103103
inGeom = QgsGeometry()

python/plugins/processing/algs/qgis/DeleteColumn.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ def processAlgorithm(self, progress):
5454
self.getParameterValue(self.INPUT))
5555
idx = layer.fieldNameIndex(self.getParameterValue(self.COLUMN))
5656

57-
fields = layer.pendingFields()
57+
fields = layer.fields()
5858
fields.remove(idx)
5959

6060
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(fields,

python/plugins/processing/algs/qgis/DeleteDuplicateGeometries.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def processAlgorithm(self, progress):
4949
layer = dataobjects.getObjectFromUri(
5050
self.getParameterValue(self.INPUT))
5151

52-
fields = layer.pendingFields()
52+
fields = layer.fields()
5353

5454
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(fields,
5555
layer.wkbType(), layer.crs())

python/plugins/processing/algs/qgis/DeleteHoles.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def processAlgorithm(self, progress):
4949
self.getParameterValue(self.INPUT))
5050

5151
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
52-
layer.pendingFields(),
52+
layer.fields(),
5353
layer.wkbType(),
5454
layer.crs())
5555

python/plugins/processing/algs/qgis/DensifyGeometries.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ def processAlgorithm(self, progress):
6565
isPolygon = layer.geometryType() == QgsWkbTypes.PolygonGeometry
6666

6767
writer = self.getOutputFromName(
68-
self.OUTPUT).getVectorWriter(layer.pendingFields().toList(),
68+
self.OUTPUT).getVectorWriter(layer.fields().toList(),
6969
layer.wkbType(), layer.crs())
7070

7171
features = vector.features(layer)

python/plugins/processing/algs/qgis/DensifyGeometriesInterval.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ def processAlgorithm(self, progress):
6262
isPolygon = layer.geometryType() == QgsWkbTypes.PolygonGeometry
6363

6464
writer = self.getOutputFromName(
65-
self.OUTPUT).getVectorWriter(layer.pendingFields().toList(),
65+
self.OUTPUT).getVectorWriter(layer.fields().toList(),
6666
layer.wkbType(), layer.crs())
6767

6868
features = vector.features(layer)

python/plugins/processing/algs/qgis/Difference.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,11 @@ def processAlgorithm(self, progress):
6868
self.getParameterValue(Difference.OVERLAY))
6969
ignoreInvalid = self.getParameterValue(Difference.IGNORE_INVALID)
7070

71-
geomType = layerA.dataProvider().wkbType()
71+
geomType = layerA.wkbType()
7272
writer = self.getOutputFromName(
73-
Difference.OUTPUT).getVectorWriter(layerA.pendingFields(),
73+
Difference.OUTPUT).getVectorWriter(layerA.fields(),
7474
geomType,
75-
layerA.dataProvider().crs())
75+
layerA.crs())
7676

7777
outFeat = QgsFeature()
7878
index = vector.spatialindex(layerB)

python/plugins/processing/algs/qgis/Dissolve.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,11 @@ def processAlgorithm(self, progress):
7171
field_names = self.getParameterValue(Dissolve.FIELD)
7272
vlayerA = dataobjects.getObjectFromUri(
7373
self.getParameterValue(Dissolve.INPUT))
74-
vproviderA = vlayerA.dataProvider()
7574

7675
writer = self.getOutputFromName(
7776
Dissolve.OUTPUT).getVectorWriter(
7877
vlayerA.fields().toList(),
79-
vproviderA.wkbType(),
78+
vlayerA.wkbType(),
8079
vlayerA.crs())
8180

8281
outFeat = QgsFeature()

python/plugins/processing/algs/qgis/Eliminate.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -315,10 +315,9 @@ def processAlgorithm(self, progress):
315315
# End while
316316

317317
# Create output
318-
provider = processLayer.dataProvider()
319318
output = self.getOutputFromName(self.OUTPUT)
320-
writer = output.getVectorWriter(provider.fields(),
321-
provider.wkbType(), processLayer.crs())
319+
writer = output.getVectorWriter(processLayer.fields(),
320+
processLayer.wkbType(), processLayer.crs())
322321

323322
# Write all features that are left over to output layer
324323
iterator = processLayer.getFeatures()

python/plugins/processing/algs/qgis/EquivalentNumField.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,10 @@ def processAlgorithm(self, progress):
5454
output = self.getOutputFromName(self.OUTPUT)
5555
vlayer = dataobjects.getObjectFromUri(
5656
self.getParameterValue(self.INPUT))
57-
vprovider = vlayer.dataProvider()
5857
fieldindex = vlayer.fieldNameIndex(fieldname)
59-
fields = vprovider.fields()
58+
fields = vlayer.fields()
6059
fields.append(QgsField('NUM_FIELD', QVariant.Int))
61-
writer = output.getVectorWriter(fields, vprovider.wkbType(),
60+
writer = output.getVectorWriter(fields, vlayer.wkbType(),
6261
vlayer.crs())
6362
outFeat = QgsFeature()
6463
classes = {}

python/plugins/processing/algs/qgis/ExecuteSQL.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ def processAlgorithm(self, progress):
131131
raise GeoAlgorithmExecutionException(vLayer.dataProvider().error().message())
132132

133133
writer = self.getOutputFromName(self.OUTPUT_LAYER).getVectorWriter(
134-
vLayer.pendingFields().toList(),
134+
vLayer.fields().toList(),
135135
# Create a point layer (without any points) if 'no geometry' is chosen
136136
vLayer.wkbType() if geometry_type != 1 else 1,
137137
vLayer.crs())

python/plugins/processing/algs/qgis/Explode.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,7 @@ def processAlgorithm(self, progress):
4848
vlayer = dataobjects.getObjectFromUri(
4949
self.getParameterValue(self.INPUT))
5050
output = self.getOutputFromName(self.OUTPUT)
51-
vprovider = vlayer.dataProvider()
52-
fields = vprovider.fields()
51+
fields = vlayer.fields()
5352
writer = output.getVectorWriter(fields, QgsWkbTypes.LineString,
5453
vlayer.crs())
5554
outFeat = QgsFeature()

python/plugins/processing/algs/qgis/ExportGeometryInfo.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ def processAlgorithm(self, progress):
7272
method = self.getParameterValue(self.METHOD)
7373

7474
geometryType = layer.geometryType()
75-
fields = layer.pendingFields()
75+
fields = layer.fields()
7676

7777
if geometryType == QgsWkbTypes.PolygonGeometry:
7878
areaName = vector.createUniqueFieldName('area', fields)
@@ -89,7 +89,7 @@ def processAlgorithm(self, progress):
8989
fields.append(QgsField(yName, QVariant.Double))
9090

9191
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
92-
fields.toList(), layer.dataProvider().wkbType(), layer.crs())
92+
fields.toList(), layer.wkbType(), layer.crs())
9393

9494
ellips = None
9595
crs = None

python/plugins/processing/algs/qgis/ExtractByAttribute.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ def processAlgorithm(self, progress):
8383
operator = self.OPERATORS[self.getParameterValue(self.OPERATOR)]
8484
value = self.getParameterValue(self.VALUE)
8585

86-
fields = layer.pendingFields()
86+
fields = layer.fields()
8787
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(fields,
8888
layer.wkbType(), layer.crs())
8989

python/plugins/processing/algs/qgis/ExtractByLocation.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,8 @@ def processAlgorithm(self, progress):
7070
index = vector.spatialindex(layer)
7171

7272
output = self.getOutputFromName(self.OUTPUT)
73-
writer = output.getVectorWriter(layer.pendingFields(),
74-
layer.dataProvider().wkbType(), layer.crs())
73+
writer = output.getVectorWriter(layer.fields(),
74+
layer.wkbType(), layer.crs())
7575

7676
if 'disjoint' in predicates:
7777
disjoinSet = []

python/plugins/processing/algs/qgis/ExtractNodes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ def processAlgorithm(self, progress):
6262
self.getParameterValue(self.INPUT))
6363

6464
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
65-
layer.pendingFields().toList(), QgsWkbTypes.Point, layer.crs())
65+
layer.fields().toList(), QgsWkbTypes.Point, layer.crs())
6666

6767
outFeat = QgsFeature()
6868
inGeom = QgsGeometry()

python/plugins/processing/algs/qgis/FieldPyculator.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,10 @@ def processAlgorithm(self, progress):
8888

8989
layer = dataobjects.getObjectFromUri(
9090
self.getParameterValue(self.INPUT_LAYER))
91-
provider = layer.dataProvider()
92-
fields = provider.fields()
91+
fields = layer.fields()
9392
fields.append(QgsField(fieldName, self.TYPES[fieldType], '',
9493
fieldLength, fieldPrecision))
95-
writer = output.getVectorWriter(fields, provider.wkbType(),
94+
writer = output.getVectorWriter(fields, layer.wkbType(),
9695
layer.crs())
9796
outFeat = QgsFeature()
9897
new_ns = {}
@@ -107,7 +106,7 @@ def processAlgorithm(self, progress):
107106
self.tr("FieldPyculator code execute error.Global code block can't be executed!\n%s\n%s") % (unicode(sys.exc_info()[0].__name__), unicode(sys.exc_info()[1])))
108107

109108
# Replace all fields tags
110-
fields = provider.fields()
109+
fields = layer.fields()
111110
num = 0
112111
for field in fields:
113112
field_name = unicode(field.name())

python/plugins/processing/algs/qgis/FieldsCalculator.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,11 @@ def processAlgorithm(self, progress):
9494
output.value = system.getTempFilenameInTempFolder(
9595
output.name + '.' + ext)
9696

97-
provider = layer.dataProvider()
98-
fields = layer.pendingFields()
97+
fields = layer.fields()
9998
if newField:
10099
fields.append(QgsField(fieldName, fieldType, '', width, precision))
101100

102-
writer = output.getVectorWriter(fields, provider.wkbType(),
101+
writer = output.getVectorWriter(fields, layer.wkbType(),
103102
layer.crs())
104103

105104
exp = QgsExpression(formula)

python/plugins/processing/algs/qgis/FieldsMapper.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,6 @@ def processAlgorithm(self, progress):
6868
output = self.getOutputFromName(self.OUTPUT_LAYER)
6969

7070
layer = dataobjects.getObjectFromUri(layer)
71-
provider = layer.dataProvider()
7271
fields = []
7372
expressions = []
7473

@@ -109,7 +108,7 @@ def processAlgorithm(self, progress):
109108
expressions.append(expression)
110109

111110
writer = output.getVectorWriter(fields,
112-
provider.wkbType(),
111+
layer.wkbType(),
113112
layer.crs())
114113

115114
# Create output vector layer with new attributes

python/plugins/processing/algs/qgis/FixedDistanceBuffer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ def processAlgorithm(self, progress):
7575
segments = int(self.getParameterValue(self.SEGMENTS))
7676

7777
writer = self.getOutputFromName(
78-
self.OUTPUT).getVectorWriter(layer.pendingFields().toList(),
78+
self.OUTPUT).getVectorWriter(layer.fields().toList(),
7979
QgsWkbTypes.Polygon, layer.crs())
8080

8181
buff.buffering(progress, writer, distance, None, False, layer,

python/plugins/processing/algs/qgis/GeometryConvert.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def processAlgorithm(self, progress):
7878
newType = QgsWkbTypes.Point
7979

8080
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
81-
layer.pendingFields(), newType, layer.crs())
81+
layer.fields(), newType, layer.crs())
8282

8383
features = vector.features(layer)
8484
total = 100.0 / len(features)

python/plugins/processing/algs/qgis/Gridify.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ def processAlgorithm(self, progress):
6565
self.tr('Invalid grid spacing: %s/%s' % (hSpacing, vSpacing)))
6666

6767
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
68-
layer.pendingFields(), layer.wkbType(), layer.crs())
68+
layer.fields(), layer.wkbType(), layer.crs())
6969

7070
features = vector.features(layer)
7171
total = 100.0 / len(features)

python/plugins/processing/algs/qgis/HubDistance.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ def processAlgorithm(self, progress):
9999
if addLines:
100100
geomType = QgsWkbTypes.LineString
101101

102-
fields = layerPoints.pendingFields()
102+
fields = layerPoints.fields()
103103
fields.append(QgsField('HubName', QVariant.String))
104104
fields.append(QgsField('HubDist', QVariant.Double))
105105

python/plugins/processing/algs/qgis/HubLines.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ def processAlgorithm(self, progress):
7171
self.tr('Same layer given for both hubs and spokes'))
7272

7373
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
74-
layerSpoke.pendingFields(), QgsWkbTypes.LineString, layerSpoke.crs())
74+
layerSpoke.fields(), QgsWkbTypes.LineString, layerSpoke.crs())
7575

7676
spokes = vector.features(layerSpoke)
7777
hubs = vector.features(layerHub)

python/plugins/processing/algs/qgis/Intersection.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,12 +73,11 @@ def processAlgorithm(self, progress):
7373
self.getParameterValue(self.INPUT))
7474
vlayerB = dataobjects.getObjectFromUri(
7575
self.getParameterValue(self.INPUT2))
76-
vproviderA = vlayerA.dataProvider()
7776

78-
geomType = vproviderA.wkbType()
77+
geomType = vlayerA.wkbType()
7978
fields = vector.combineVectorFields(vlayerA, vlayerB)
8079
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(fields,
81-
geomType, vproviderA.crs())
80+
geomType, vlayerA.crs())
8281
outFeat = QgsFeature()
8382
index = vector.spatialindex(vlayerB)
8483
selectionA = vector.features(vlayerA)

python/plugins/processing/algs/qgis/JoinAttributes.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,13 @@ def processAlgorithm(self, progress):
6969
field2 = self.getParameterValue(self.TABLE_FIELD_2)
7070

7171
layer = dataobjects.getObjectFromUri(input)
72-
provider = layer.dataProvider()
7372
joinField1Index = layer.fieldNameIndex(field)
7473

7574
layer2 = dataobjects.getObjectFromUri(input2)
7675
joinField2Index = layer2.fieldNameIndex(field2)
7776

7877
outFields = vector.combineVectorFields(layer, layer2)
79-
writer = output.getVectorWriter(outFields, provider.wkbType(),
78+
writer = output.getVectorWriter(outFields, layer.wkbType(),
8079
layer.crs())
8180

8281
# Cache attributes of Layer 2

0 commit comments

Comments
 (0)