def convertToPolygons(self, geometry): surfaces = self.getSurfaces(geometry.geometry()) output_wkb = self.convertWkbToPolygons(geometry.wkbType()) out_geom = None if QgsWkbTypes.flatType(output_wkb) == QgsWkbTypes.MultiPolygon: out_geom = QgsMultiPolygonV2() else: out_geom = QgsMultiSurface() for surface in surfaces: out_geom.addGeometry(surface) return out_geom