Skip to content

Commit

Permalink
Initialise writer after appending field
Browse files Browse the repository at this point in the history
  • Loading branch information
rudivs committed Sep 13, 2018
1 parent 6257cf6 commit cef34c5
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions python/plugins/processing/algs/qgis/KNearestConcaveHull.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,13 +108,6 @@ def processAlgorithm(self, parameters, context, feedback):
fields = QgsFields()
fields.append(QgsField('id', QVariant.Int, '', 20))

# Initialize writer
(sink, dest_id) = self.parameterAsSink(parameters, self.OUTPUT, context,
fields, QgsWkbTypes.Polygon, source.sourceCrs())

if sink is None:
raise QgsProcessingException(self.invalidSinkError(parameters, self.OUTPUT))

current = 0

# Get properties of the field the grouping is based on
Expand All @@ -123,6 +116,12 @@ def processAlgorithm(self, parameters, context, feedback):
if field_index >= 0:
fields.append(source.fields()[field_index]) # Add a field with the name of the grouping field

# Initialize writer
(sink, dest_id) = self.parameterAsSink(parameters, self.OUTPUT, context,
fields, QgsWkbTypes.Polygon, source.sourceCrs())
if sink is None:
raise QgsProcessingException(self.invalidSinkError(parameters, self.OUTPUT))

success = False
fid = 0

Expand Down Expand Up @@ -166,6 +165,13 @@ def processAlgorithm(self, parameters, context, feedback):

else:
# Not grouped by field

# Initialize writer
(sink, dest_id) = self.parameterAsSink(parameters, self.OUTPUT, context,
fields, QgsWkbTypes.Polygon, source.sourceCrs())
if sink is None:
raise QgsProcessingException(self.invalidSinkError(parameters, self.OUTPUT))

points = []
request = QgsFeatureRequest()
request.setSubsetOfAttributes([])
Expand Down

0 comments on commit cef34c5

Please sign in to comment.