分享一个刚接触arcpy时的神奇操作。(๑→ܫ←)
可以做到一些 模型 做不到的事情 ##可能是我的头发还很茂密吧 |ω・)
OK 话不多说 人人都能学得会
拿批量创建要素来举例吧。需要准备的工具如下:
word__excel __arcgis
首先让我们临幸一下arcgis创建要素的帮助文档
ctrl + c 得到如下神秘代码: (๑→ܫ←)
CreateFeatureclass_management (out_path, out_name, {geometry_type}, {template}, {has_m}, {has_z}, {spatial_reference}, {config_keyword}, {spatial_grid_1}, {spatial_grid_2}, {spatial_grid_3})
然后参照帮助文档下方参数说明 删除不需要的参数,并在神秘代码前添加 arcpy.
得到如下神秘代码:
arcpy.CreateFeatureclass_management (out_path, out_name,{geometry_type},{spatial_reference})
此时我们只需要把
out_patch 换成输出路径
out_name 换成输出要素名称
{geometry_type} 换成需要创建的要素类型 ##不知道的同学再去临幸以下咋们的帮助文档
{spatial_reference} 换成spatial_reference=对应坐标系的WKID
WKID可以在坐标系属性下查看
得到了创建单个要素的神秘代码 注意需要用英文双引号引起来,并用英文逗号分开
arcpy.CreateFeatureclass_management ("D:\Download", "habitatareas.shp","POINT",spatial_reference=4525)
下面有请Excel入场!!!!
储存为 .xls 格式
然后轮到Word表演了!!!!!
把神秘代码复制进word 然后邮件咱们刚刚创建的excel
这里是邮件合并的教程word邮件合并的步骤-百度经验 (baidu.com)
然后把分页符全部都替换成换行符
创建三个要素的代码就出来啦!!!!
arcpy.CreateFeatureclass_management ("D:\Download","AAA.shp","POINT",spatial_reference=4525)
arcpy.CreateFeatureclass_management ("D:\Download","BBB.shp","POLYGON",spatial_reference=4525)
arcpy.CreateFeatureclass_management ("D:\Download","CCC.shp","POLYLINE",spatial_reference=4525)
然后到python窗口运行一下 $_$
我们在excel填写的各个要素就都创建完成啦!!!!!
##路径稍微改了一下,Download有点不合适 (* /ω\*)
其他的参数也可以写在excel里面,用邮件的方式批量做成神秘代码。
其他的工具也适用这个方法,就是运行稍慢一点。