在QGIS中本身提供了批量执行clip的工具,但是在设置输出参数的时候需要一个一个的输入,很麻烦,并且容易出错,特别是在图层要按地区不停的clip的时候,简直是无法忍受,还好可以自定义脚本,脚本如下:
input=r'/Users/a/Documents/data/shp/' output=r'/Users/a/Documents/data/clip/' admin=r'/Users/a/Documents/data/admin.shp' processing.runalg("qgis:clip", admin,input+'a.shp',output+'a.shp') processing.runalg("qgis:clip", admin,input+'b.shp',output+'b.shp') processing.runalg("qgis:clip", admin,input+'c.shp',output+'c.shp') processing.runalg("qgis:clip", admin,input+'d.shp',output+'d.shp') processing.runalg("qgis:clip", admin,input+'e.shp',output+'e.shp') processing.runalg("qgis:clip", admin,input+'f.shp',output+'f.shp') processing.runalg("qgis:clip", admin,input+'g.shp',output+'g.shp') processing.runalg("qgis:clip", admin,input+'h.shp',output+'h.shp')使用该脚本的时候,只要重新设置一下目录和clip图层即可批量完成。 同样的对于批量投影等操作也可以这么操作。
使用ogr2ogr工具也可以实现通过python脚本批量clip,但由于实在是太慢,无法忍受,遂放弃。
查看原文:http://www.giser.net/?p=1324
使用QGIS的脚本批量进行clip操作
最新推荐文章于 2024-05-07 10:56:06 发布