Hi, I am trying to update a geometry using changeGeometryValues, it works fine when the layer is of type shp or geopakage, but when I use it in SpatialLite layer it gives me the following error.
This is part of the code that I use. How can I solve this error? patialLite layer it gives me the following error. This is part of the code that I use. How can I solve this error? feats1 = [ feat for feat in QgsProject.instance().mapLayersByName('trapecio_lineal')[0].getFeatures() ] feats2 = [ feat for feat in QgsProject.instance().mapLayersByName('malezas_areal')[0].getFeatures() ] tempLayer = QgsVectorLayer('Polygon?crs=EPSG:3795', 'templayer', 'memory') dptemp = tempLayer.dataProvider() feattemp = QgsFeature() for feats_trapecio in feats1: geom1 = feats_trapecio.geometry() iter = feats_trapecio.geometry().vertices() listOfVertices = [] while iter.hasNext(): vertex = iter.next() listOfVertices.append([vertex.x(), vertex.y()]) poligonotrapecio = listOfVertices points =[] for i in range(len(poligonotrapecio)): point=QgsPointXY(float(poligonotrapecio[i][0]), float(poligonotrapecio[i][1])) points.append(point) polig = QgsGeometry.fromPolygonXY([points]) feattemp.setGeometry(polig) tempLayer.dataProvider().addFeatures([feattemp]) tempLayer.commitChanges() geomtemplayer = feattemp.geometry() for feats in feats2: geom2 = feats.geometry() fid = feats.id() if geomtemplayer.intersects(geom2): geom4 = geom2.intersection(geomtemplayer) QgsProject.instance().mapLayersByName('malezas_areal')[0].dataProvider().changeGeometryValues({fid: geom4}) QgsProject.instance().mapLayersByName('malezas_areal')[0].commitChanges() QgsProject.instance().addMapLayer(tempLayer) QgsProject.instance().removeMapLayer(tempLayer.id()) This is the error that appears in the Qgis panel: Error de SQLite: areas_verdes_y_terrenos.malezas_areal.GEOMETRY violates Geometry constraint [geom-type or SRID not allowed] SQL: UPDATE "areas_verdes_y_terrenos.malezas_areal" SET "geometry"=GeomFromWKB(?, 3795) WHERE "ogc_fid"=?
_______________________________________________ QGIS-Developer mailing list QGIS-Developer@lists.osgeo.org List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer