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

【GIS人必看】ArcPy脚本如何导入到ArcToolBox中(上)【建议收藏】

        经常使用ArcGIS的朋友应该知道,ArcGIS平台可以支持非常丰富的全栈链二次开发,比如ArcPy脚本开发、ArcGIS Engine桌面端开发、ArcGIS AddIn插件开发、WebGIS开发、移动端GIS开发等。当然,这些技术本人全部精通,后面会给大家陆续介绍这些技术,喜欢GIS二次开发的朋友可以关注我,也可以关注我的公众号:辰星数字。

        今天,想给大家讲一下ArcPy脚本开发(也是目前ArcGIS最简单最易上手的二次开发技术)----如何将编写好的Python脚本导入到ArcToolBox工具箱中,作为一款UI工具方便用户之间使用,比如下面便是我给某客户定制开发的脚本~

    

       下面,我来给大家具体讲解下导入的步骤,当我们编写好了一个ArcPy脚本后,如果要想导入到ArcToolBox中成为一个可以直接调用的脚本工具。

        首先,在代码中应根据UI界面中需要用户手动设置的参数按照顺序用sys.argv来代替,比如,上图中工具中共有5个参数,分别为【原始点层】【原始面层】【输出点层】【原始Excel表】【输出Excel表】,对应的,在Python代码中,这5个参数的代码如下:

NowXMLayer=sys.argv[1]
DLTBLayer=sys.argv[2]
outputIntersectLayer=sys.argv[3] ##intersectLayer
outExcelPath=sys.argv[4]
gengdi=sys.argv[5]

  注意:sys.argv的索引号应从1开始

        当我们的脚本逻辑没有问题后,接下来就可以导入到ArcToolBox中了,接下来,我们直接打开ArcGIS Desktop软件,右键ArcToolBox窗口中的一级节点“ArcToolBox”,然后选择“Add Toolbox...”。

        此时弹出的窗口中需要添加我们之前创建的工具箱,如果没有创建过,则需新建工具箱。

        然后再将新建好的工具箱添加到ArcToolbox中(选择新创建的工具箱,直接点击“Open”即可)。这时候,你会发现在ArcToolbox中会出现我们刚刚创建添加的工具箱了,比如我电脑上创建的工具箱为“Create Excel Tool”

        

        工具箱的作用其实是作为脚本的容器,我们接下来就需要将制作好的脚本导入到新创建的工具箱中。这时候右键刚添加的工具箱,选择“Add”,再点击“Script”

        接下来就进入到了脚本参数设置的界面了,根据提示,我们可以一步步的设置脚本的各种参数,比如脚本所在路径、脚本名称,脚本介绍等。

        当我们设置完脚本导入的各项参数后,一个带UI界面的ArcPy脚本就会出现在我们添加的工具箱中,方便我们在工作中直接调用~

        当然,在设置脚本的各项参数中,最重要的还是UI界面中用户需要设置的参数,并且必须应当与代码中的参数一致方可成功运行,我们在后面的文章中会给大家详细介绍,敬请关注哦~

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

相关文章:

  • AI入门笔记(三)
  • Linux搭建SFTP服务器
  • MobaXterm无法上传整个文件夹,只能上传的单个文件
  • Android 中get请求网络数据 详细举例
  • 每日五道java面试题之mysql数据库篇(六)
  • Latex——多张图排列
  • 前端复选框问题-节点赋值未选中最后显示时确变成选中状态?
  • JavaScript命名标识符规范,前端开发面试
  • 从零学习Linux操作系统 第三十部分 部署Anisble
  • C++对象模型剖析(六)一一Data语义学(三)
  • Java 代理模式详解(附案例源代码)
  • 七牛云 上传 文件 file is empty
  • 【AI视野·今日Sound 声学论文速览 第五十二期】Tue, 5 Mar 2024
  • 使用 BLAS 调用加快生成的独立代码中的矩阵运算
  • 一台服务器,最大支持的TCP连接数是多少?
  • 微信小程序云开发教程——墨刀原型工具入门(编辑页面)
  • flutter打包app
  • 力扣543. 二叉树的直径
  • python网络爬虫教程笔记(1)
  • C# 异步返回类型详解
  • BAT等大厂必问技术面试题,【2024Android最新学习路线
  • 72. 编辑距离【leetcode】/动态规划难
  • 【MySQL】视图、索引
  • 反编译java生成的.class文件
  • Cookie 探秘:了解 Web 浏览器中的小甜饼
  • Python线性代数数字图像和小波分析之二
  • LC.exe”已退出,代码为 -1
  • springboot + jpa + 达梦数据库兼容 Mysql的GenerationType.IDENTITY主键生成策略
  • Redis优化与应用
  • 深入了解Kafka的文件存储原理