桌面ArcGIS包含800多种可在Python脚本中运行的地理处理工具。

通过Python脚本来运行地理处理工具,可以处理复杂的工作和执行批处理任务。

案例一:使用脚本执行地理处理工具(以裁剪为例)

查看帮助文档模仿的代码:

 # Name: Clip_Example2.py

 # Description: Clip major roads that fall within the study area.

 # Import system modules

 import arcpy

 from arcpy import env

 # Set workspace

 env.workspace = "F:\【the_path_of_grace】\ArcpyBook"

 # Set local variables

 in_features = "data/CityOfSanAntonio.gdb/Burglary"

 clip_features = "Ch5/EdgewoodSD.shp"

 out_feature_class = "Ch5/ClpBurglary.shp"

 xy_tolerance = ""

 # Execute Clip

 arcpy.Clip_analysis(in_features, clip_features, out_feature_class, xy_tolerance)

工作原理:

在Python脚本中,可以参照<toolname>_<toolboxalias>语法来调用工具。

注:toolboxalias是工具箱的别名

拓展:

效果图:

案例二:将一个工具的输出作为另一个工具的输入

步骤:①缓冲区分析->②创建要素图层->③按位置选择图层

查看帮助文档模仿的代码:

 # Import system modules
import arcpy
from arcpy import env # Set workspace
env.workspace = "F:\【the_path_of_grace】\ArcpyBook\data\TravisCounty"
try:
# Buffer areas of impact around major roads
streams = "Streams.shp"
streamsBuffer = "StreamsBuffer"
distanceField = "2640 Feet"
sideType = "FULL"
endType = "ROUND"
dissolveType = "ALL"
schools2mile = "Schools.shp"
schoolsLyrFile = 'Schools2Mile_lyr' arcpy.Buffer_analysis(streams, streamsBuffer, distanceField,sideType,endType,dissolveType) # First, make a layer from the feature class
arcpy.MakeFeatureLayer_management(schools2mile, schoolsLyrFile) # Then add a selection to the layer based on location to features in another feature class
arcpy.SelectLayerByLocation_management (schoolsLyrFile, "intersect", streamsBuffer)
except Exception as e:
print e.message

执行过程:

效果图:

谢谢观看!

最新文章

  1. 解决Win8无法升级.NET Framework 3.5.1 提示错误0x800F0906
  2. epoll里面mmap释疑
  3. webform LinQ
  4. 统一资源定位符URL类
  5. RichTextBox着色与着色不闪
  6. ios网络编程学习
  7. func_num_args, func_get_arg, func_get-args 的区别与用法
  8. Power Gating的设计(架构)
  9. Annotations:注解
  10. 基于winpcap的以太网流量分析器(java)
  11. Python Cookbook(第3版)中文版:15.15 C字符串转换为Python字符串
  12. jvm 垃圾回收机制和算法(转)
  13. Insert Into select 与 Select Into 哪个更快?
  14. python 【pandas】读取excel、csv数据,提高索引速度
  15. Linux 检查磁盘性能速度
  16. 自学Zabbix4.2 web监控项创建+item详解
  17. protobuf for java
  18. BFPRT 算法 (TOP-K 问题)——本质就是在利用分组中位数的中位数来找到较快排更合适的pivot元素
  19. Spring Data Commons 官方文档学习
  20. 如何配置JDK?

热门文章

  1. JdbcTemplate增删改
  2. 11 一步一步Zabbix4.4.0系统教你实现sendEmail邮件报警
  3. 题解和总结——noip2019集训测试赛(一)贪吃蛇+字符串+都城
  4. windows下同时装了Python3和Python2,如何区分使用?
  5. 『题解』Codeforces121A Lucky Sum
  6. 域名解析 | A记录 ,CNAME,MX,NS 你懂了吗
  7. 一道笔试题(vue,react)
  8. zabbix 4.2 的安装和设置(mysql57----centos7)
  9. Spring Cloud gateway 七 Sentinel 注解方式使用
  10. (C#)WPF:LinearGradientBrush 线性渐变画刷和RadialGradientBrush 圆形渐变画刷