To be correct, the two postgis queries are: select min(l.osm_id),st_difference(l.geom,st_union(e.geom)) as geom from linee_selezione_s l join edifici_buffer_s e on ST_Intersects(l.geom, e.geom) group by l.geom
select min(l.osm_id),st_intersection(l.geom,st_union(e.geom)) as geom from linee_selezione_s l join edifici_buffer_s e on ST_Intersects(l.geom, e.geom) group by l.geom 2014-07-01 19:37 GMT+02:00 G. Allegri <[email protected]>: > I'm doing some tests on fTools/Processing spatial operators, with a cover > multilinestring layer and a base polygon layer. > > Running the following query on PostGIS I get similar timings with > st_intersection and st_difference: > > select l.osm_id,ST_intersection(l.geom,e.geom) as geom from > linee_selezione as l,edifici_buffer as e where ST_Intersects(l.geom, e.geom) > > while if I run the Difference tool QGIS chokes and it takes magnitudes of > more time then Clip. > If made both tools as similar as possible, just changing this [1] line of > code, but the difference in execution time remains big. > > I can't find out where is the difference, because both PostGIS and QGIS > base the operations on GEOS. > Any hints? > > giovanni > > [1] > https://github.com/qgis/QGIS/blob/master/python/plugins/processing/algs/qgis/ftools/Clip.py#L107 > > -- > Giovanni Allegri > http://about.me/giovanniallegri > Twitter: https://twitter.com/_giohappy_ > blog: http://blog.spaziogis.it > GEO+ geomatica in Italia http://bit.ly/GEOplus > -- Giovanni Allegri http://about.me/giovanniallegri Twitter: https://twitter.com/_giohappy_ blog: http://blog.spaziogis.it GEO+ geomatica in Italia http://bit.ly/GEOplus
_______________________________________________ Qgis-developer mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-developer
