mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-26 00:02:08 -05:00
[processing] ensure that outputs of vector overlay operations are multiparts (#3622)
This commit is contained in:
parent
010fc7c640
commit
cf6004959e
@ -67,7 +67,7 @@ class Clip(GeoAlgorithm):
|
||||
|
||||
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
|
||||
source_layer.fields(),
|
||||
source_layer.wkbType(),
|
||||
QgsWkbTypes.multiType(source_layer.wkbType()),
|
||||
source_layer.crs())
|
||||
|
||||
# first build up a list of clip geometries
|
||||
|
@ -69,7 +69,7 @@ class Difference(GeoAlgorithm):
|
||||
self.getParameterValue(Difference.OVERLAY))
|
||||
ignoreInvalid = self.getParameterValue(Difference.IGNORE_INVALID)
|
||||
|
||||
geomType = layerA.wkbType()
|
||||
geomType = QgsWkbTypes.multiType(layerA.wkbType())
|
||||
writer = self.getOutputFromName(
|
||||
Difference.OUTPUT).getVectorWriter(layerA.fields(),
|
||||
geomType,
|
||||
|
@ -75,7 +75,7 @@ class Intersection(GeoAlgorithm):
|
||||
vlayerB = dataobjects.getObjectFromUri(
|
||||
self.getParameterValue(self.INPUT2))
|
||||
|
||||
geomType = vlayerA.wkbType()
|
||||
geomType = QgsWkbTypes.multiType(vlayerA.wkbType())
|
||||
fields = vector.combineVectorFields(vlayerA, vlayerB)
|
||||
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(fields,
|
||||
geomType, vlayerA.crs())
|
||||
|
@ -65,7 +65,7 @@ class SymmetricalDifference(GeoAlgorithm):
|
||||
layerB = dataobjects.getObjectFromUri(
|
||||
self.getParameterValue(self.OVERLAY))
|
||||
|
||||
geomType = layerA.wkbType()
|
||||
geomType = QgsWkbTypes.multiType(layerA.wkbType())
|
||||
fields = vector.combineVectorFields(layerA, layerB)
|
||||
writer = self.getOutputFromName(self.OUTPUT).getVectorWriter(
|
||||
fields, geomType, layerA.crs())
|
||||
|
Loading…
x
Reference in New Issue
Block a user