在规划类工程项目中,经常要输出县级或者各个乡镇的各种规划图。以前的做法是一副一副打开后单个输出,费时费力,而且输出速度较慢。学习了Python之后,一直想为还奋战在规划一线的硕士办公室的学弟学妹们写一个批量输出JEPG的程序,节省精力和体力。可总是各种拖延,没有付诸行动。今早刷朋友圈,看到一个师妹的状态说昨晚又在熬夜出项目图,那种辛苦我感同身受。作为大师兄的我,责任感爆棚,打败拖延症,写出人生第一个集成在ArcGIS中的TOOL。
Python 核心程序
该工具利用ARCPY站点包写成,核心函数是arcpy.mapping.ExportToJPEG,arcpy.mapping 提供了许多与自动化地图生产相关的功能,输出JPEG是提供的导出图片功能之一。
另外一个函数是,arcpy.GetParameterAsText()。arcpy.GetParameterAsText()函数并非获取信息传递给脚本的唯一方式。当你从命令行调用Python脚本,你可以传递一组参数(argument)。当向脚本传递参数时,每个参数必须使用空格隔开。这些参数保存在一个基于sys.argv的列表对象中。使用sys.argv引用索引值0来引用列表中的第一个元素,该元素用于保存脚本名称。每一个后续的参数索引值依次递增加1。因此,第一个参数保存在sys.argv[1]中,第二个参数保存在sys.argv[2]。这些参数可以通过脚本来获取。
建议大家使用GetParameterAsText()函数,这是因为前者没有字符数量的限制而后者则要求每个参数要小于1024个字符。不管使用哪种方式,参数读入后,脚本会作为输入值继续执行。
完整代码如为:
# -*- coding: utf-8 -*-