当前位置: 首页 > news >正文

提升效率!ArcGIS中创建脚本工具

在我们日常使用的ArcGIS中已经自带了很多功能强大的工具,但有时候遇到个人的特殊情况还是无法满足,这时就可以试着创建自定义脚本工具。

一、编写代码

此处的代码就是一个很简单的给图层更改别名的代码。

1. import arcpy  2. input_fc = arcpy.GetParameterAsText(0)  3. input_fcName = arcpy.GetParameterAsText(1)  4. def Change():  5.     arcpy.AlterAliasName(input_fc,input_fcName)  6. if __name__=="__main__":  7.     Change()

代码中【arcpy.GetParameterAsText】是为了以文本字符串的形式获取指定参数的;【arcpy.AlterAliasName】是用来更新输入要素别名的。

在ArcMap中打开【Python】,在其中将上面的代码输入进去,右键空白处,选择【另存为】,将其存储为【.py】格式的文件。

图片

图片

也可以将在记事本中输入代码并保存后将其后缀名更改为【.py】。

图片

二、新建工具箱

在开始菜单栏中,【ArcGIS】文件夹内找到【ArcCatalog】并打开。

图片

在系统自带的【我的工具箱】内新建【工具箱】,用于存放自定义脚本工具。

图片

三、添加脚本工具

在新建的【工具箱】内【添加】【脚本】。

图片

在第一页可以设置工具【名称】与【标签】,【名称】最好用英文,以免后续报错,【标签】则是我们在使用工具时,对话框左上角所显示的文字。

在第二页需要添加编写好的代码文件,也就是后缀为【.py】的文件。

图片

在第三页需要添加该工具的参数,否则的话,我们在使用脚本工具时就会显示【此工具没有参数】。

图片

此处设置三个参数,分别是【输入要素】、【输入别名】以及【输出要素】,参数的【数据类型】如图所示。【参数属性】中【类型】的选项有三个,分别为【Required】、【Optional】、【Derived】,指的时【必填】、【选填】、【派生】;【方向】分为【Input】与【Output】,指的是【输入】与【输出】;【输入要素】与【输入别名】的【参数属性】使用默认选项即可。

由于该工具无需输出一个新的图层,所以【输出要素】参数直接从【输入要素】参数派生即可,需要进行的操作为:将【输出要素】参数的【参数属性】中【类型】更改为【Derived】,【方向】设置为【Output】,【获取自】设置为【输入要素】。

图片

工具界面如图所示。

图片

http://www.lryc.cn/news/432494.html

相关文章:

  • 无人机之报警器的作用
  • 风格控制水平创新高!南理工InstantX小红书发布CSGO:简单高效的端到端风格迁移框架
  • python文件自动化(4)
  • HTTP 方法
  • 通过redis-operator 来部署 Redis Cluster 集群
  • vue3集成sql语句编辑器
  • Optuna发布 4.0 重大更新:多目标TPESampler自动化超参数优化速度提升显著
  • https和harbor仓库跟k8s
  • 云计算之网络
  • MySQL Workbench 的入门指南
  • 【SpringBoot】使用Nacos服务注册发现与配置管理
  • Leetcode面试经典150题-210.课程表II
  • 视频汇聚平台LntonAIServer视频质量诊断功能--偏色检测与噪声检测
  • Vue 使用接口返回的背景图片和拼图图片进行滑动拼图验证
  • 1-7 掩膜的运用 opencv树莓派4B 入门系列笔记
  • EG边缘计算网关连接华为云物联网平台(MQTT协议)
  • List中常见的方法和五种遍历方式
  • 华为 HCIP-Datacom H12-821 题库 (8)
  • 12. GIS地图制图工程师岗位职责、技术要求和常见面试题
  • ORACLE 统计信息的备份与恢复
  • 2. GIS数据工程师岗位职责、技术要求和常见面试题
  • Spark MLlib模型训练—文本算法 LDA(Latent Dirichlet Allocation)
  • C++ ─── List的模拟实现
  • Spring Boot详解
  • Proxfier+burpsuite抓包配置问题
  • sqli-lab靶场学习(一)——Less1-4
  • el-select如何同时获取value和label?
  • 1.初识ChatGPT:AI聊天机器人的革命(1/10)
  • API安全 | 发现API的5个小tips
  • 数据结构---单向链表