arcpy程序最好不要依赖于arcmap运行程序MakeFeatureLayer_management,而要用CopyFeatures_management

   #执行相交
   pixelPolygonShp = arcpy.MakeFeatureLayer_management(pixelPolygon, "pixelPolygonShp")
   #加载进源shp,判断是否相交
   SourceShp = arcpy.MakeFeatureLayer_management(shp, "SourceShp")
   # 使用Intersect_analysis对两个要素集合对象求交
   intersect_fc = arcpy.Intersect_analysis([pixelPolygonShp, SourceShp], "intersect_fc")

arcpy程序最好不要MakeFeatureLayer_management,这样会在arcmap中产生图层layer,再去调用类似相交分析的功能时,就会在gis中执行,减慢运行速率。

可以选择使用CopyFeatures_management函数先将生成的文件保存到本地,然后在执行其他函数时,函数输入参数不要写为arcmap里现有的图层,而是指定为已经在本地的文件的绝对路径,这样就不会在gis中执行函数,大大提高了运行速率。

 pixelPolygon = arcpy.Polygon(array).projectAs(spatial_ref)
 array.removeAll()
 #保存到本地
 pixelPolygon_shp = os.path.join(rootDir, "pixelPolygon.shp")
 arcpy.CopyFeatures_management(pixelPolygon, pixelPolygon_shp)
 shp = .....绝对路径\\*.shp)
 intersect_fc = arcpy.Intersect_analysis([pixelPolygon_shp, shp], intersect_fc)
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值