ArcGISPython实习指导

合集下载

arcgis实习报告

arcgis实习报告

arcgis实习报告实习报告1. 背景介绍在XXX公司进行的为期三个月的实习中,我主要负责使用ArcGIS软件进行地理信息系统(GIS)的开发和应用。

本报告旨在总结我在实习期间的工作内容和所获得的经验。

2. 实习内容2.1 GIS基础知识培训在实习开始之前,我参加了公司组织的ArcGIS基础知识培训。

通过学习该软件的基本功能和操作流程,我熟悉了空间数据的处理方法和地图制作技巧。

2.2 地图制作与数据编辑在实习期间,我参与了多个项目的地图制作工作。

通过对现有数据的收集和整理,我使用ArcGIS软件进行数据编辑、属性查询和制作专题图等操作,最终生成了一系列符合客户需求的地图产品。

2.3 空间分析与模型构建为了更好地满足客户对地理空间问题的需求,我学习并应用了ArcGIS中的空间分析功能。

通过使用缓冲区分析、叠加分析和路径分析等工具,我能够对地理空间数据进行深入的统计、分析和预测,并生成相应的分析报告。

2.4 数据可视化与WebGIS开发在实习过程中,我还学习和应用了ArcGIS的WebGIS开发技术。

通过使用ArcGIS Online和ArcGIS Server平台,我实现了将地理数据发布到Web上,并开发了一些基于地图的应用程序,提供了便捷的数据可视化和空间查询服务。

3. 经验与收获通过这次实习,我不仅巩固了地理信息系统的基础知识,还学到了很多实际应用的技巧和方法。

以下是我在实习中的一些经验总结:3.1 熟练掌握ArcGIS软件的基本功能和操作流程,对空间数据处理有了更深入的理解。

3.2 了解地理数据的收集和整理方法,熟悉数据编辑和地图制作的技巧。

3.3 学会使用空间分析工具进行地理问题的探索和预测,并能生成专业的分析报告。

3.4 熟悉WebGIS开发技术,能够将地理数据发布到Web上并开发相应的应用程序。

4. 实习心得在实习期间,我不仅学到了专业知识和技能,还深刻感受到了ArcGIS在地理信息行业中的重要性。

Python语言在GIS应用中的实践

Python语言在GIS应用中的实践

Python语言在GIS应用中的实践一、引言在GIS领域中,Python语言一直是一种重要的编程语言。

Python对于GIS数据的处理和可视化非常方便,而且Python社区有非常丰富的库可以供我们使用。

在本文中,我们将探讨Python在GIS应用中的实践。

二、数据处理在 GIS 中,数据处理是一个非常核心的部分。

Python提供了大量的库可以用于数据处理。

以下是GIS中经常用到的两个库:1. GeopandasGeopandas是一个基于pandas开发的库。

它是一个建立在pandas数据结构基础之上的地理信息数据处理库。

对于GIS数据,geopandas提供了大量的功能,包括数据读取、数据导出、数据处理、空间关系计算、地理空间分析等。

Geopandas不仅支持矢量数据,也支持栅格数据,这使得它非常适合用于处理GIS中的各种数据格式。

2. RasterioRasterio是一个Python库,用于读写栅格数据。

它内置了GDAL和其他栅格数据处理库,可以处理多种数据格式。

与Geopandas不同,Rasterio专注于栅格数据,可以读写很多不同的数据格式,比如GeoTiff、HDF5、NetCDF和GRIB。

三、数据可视化Python语言不仅可以处理GIS数据,还能够使用不同的库对这些数据进行可视化。

以下是几个常用的数据可视化库:1. matplotlibMatplotlib是Python中最常用的绘图库之一。

它提供了丰富的画图功能,可以创建很多种不同的图形。

例如,可以用matplolib绘制散点图、条形图、饼图、等高线图和地图等。

对应于GIS应用,可以用matplotlib绘制结果图,便于我们直观的发现数据特性。

2. seabornSeaborn是建立在matplotlib基础之上的高级绘图库。

它提供了一些更高级的统计图表,如热力图、配对网格图和多分类图等。

Seaborn的图表风格更加美观和专业,而且使用方便,可以帮助我们更好地展现GIS数据。

arcgis实习报告

arcgis实习报告

arcgis实习报告一、前言在xxx公司的实习期间,我有幸参与了arcgis相关工作,并通过这次实习深入了解和熟悉了arcgis的应用。

本报告将详细介绍我在实习期间所做的工作及收获。

二、实习背景及目的xxx公司作为一家地理信息系统解决方案提供商,为了进一步提升员工的技术水平和解决方案能力,开展了arcgis实习项目。

我参与此次实习的目的是通过实践,进一步熟悉arcgis的功能和应用,提高自身的技术能力。

三、实习内容1. 系统了解arcgis在实习的第一个阶段,我主要对arcgis进行了全面的了解。

通过阅读相关文档和参与培训,我了解到arcgis是一款强大的地理信息系统软件,可以实现地图的创建、编辑、分析和可视化等功能。

我熟悉了arcgis的主要模块和工具,并学会了如何在arcgis平台上进行数据处理和地理分析。

2. 数据管理与处理在实习的第二个阶段,我参与了一项数据管理与处理的任务。

该任务要求对公司某个项目所涉及的地理数据进行整理和清洗,并在arcgis中建立相应的数据模型。

通过这项任务,我学会了如何使用arcgis进行数据导入、属性编辑、数据拓扑检查等操作,了解了数据管理的重要性和规范。

3. 空间分析与应用在实习的第三个阶段,我参与了一个空间分析的项目。

该项目旨在根据不同地区的空间属性,提出更有效的商业用地规划方案。

在项目中,我运用arcgis的空间分析工具,对区域内的地理要素进行统计分析、缓冲区分析和点线面叠加分析等,并将结果进行可视化展示。

通过这个项目,我深入了解了arcgis在空间分析领域的强大功能和应用场景。

四、实习总结通过这次arcgis实习,我收获了很多。

首先,我对arcgis的功能和应用有了更深入的了解,掌握了实际操作的技巧和方法。

其次,我通过参与实际项目,学会了如何利用arcgis解决实际问题,提高了解决问题的能力。

最重要的是,我通过与团队成员的合作,锻炼了自己的团队合作能力和沟通能力。

ARCGIS实习报告(精选5篇)

ARCGIS实习报告(精选5篇)

ARCGIS实习报告(精选5篇)第一篇:ARCGIS 实习报告Arcgis 实习第二次实习报告班级:地信121 姓名:闻元武学号:201201694 空间数据管理及属性编辑一.实验目的1.利用ArcCatalog管理地理空间数据库,理解personal Geodatabase空间数据库模型有关概念。

2.掌握在ArcMap中编辑属性数据的基本操作。

3.掌握根据GPS数据文件生成适量图层的方法和过程。

4.理解图层属性表间的连接(join)或关联(Link)关系。

二.实验要求1.阐述基本原理和概念(要素类,要素数据集)。

2.Geodatabase空间数据库模型的特点。

3.1:M 空间查询的实现原理及应用实例。

比较连接(Join)和关联(Link)关系的区别和应用。

三.实验内容1.启动ArcCatalog 打开一个地理数据库1.1当ArcCatlog打开后,连接到指定文件夹Exec2.1.2 打开个人空间数据库——National,mdb。

可以看到在National,mdb中包含有2个要素数据集,一个关系类和一个属性表。

2.预览地理数据库中的要素类2.1 ArcCatlog窗口右边的数据显示区内,点击“预览”选项切换到预览视图界面。

在目录树中,双击数据集要素集-WorldContainer,点击要素类-Container94激活它。

2.2 在2.1窗口的下方,预览下拉列表中选择“表格”,现在你可以看到 Countries94 的属性表。

查看它的属性字段信息。

2.3 在目录树下面,选择WorldCities。

查看他的属性信息。

3.创建缩图,并查看元数据3.1 在目录树中,选择地理数据库National中的要素类-Countries94,切换到“预览”视图,点击工具栏上的“放大镜”按钮,将图层放大到一定区域,然后再点生成并更新缩略图。

这时,切换到“内容”视图界面下,并在目录树中选择要素集——WorldContainer数据查看方式更改为缩略图方式。

ArcGis空间分析实习指导ArcGIS效用网络分析实习指导

ArcGis空间分析实习指导ArcGIS效用网络分析实习指导

ArcGIS效用网络分析实习指导一、主要内容掌握ArcGIS效用网络的生成与分析,包括:1、模拟数据的浏览;2、效用网络的生成;3、网络规则的设置;4、具体网络分析工具的练习。

二、学时安排:2学时三、预习内容1、基本概念:网络数据模型在现实世界中,地理网络是由若干线状实体和点状实体构成,形成一个网状结构体系,网络资源沿着这个线性网流动。

网络数据模型即是真实世界中网络系统(如交通网、通讯网、自来水管网、煤气管网等)的抽象表示.构成网络的最基本元素是上述线性实体以及这些实体的连接交汇点.前者常被称为网线或链(link),后者一般称为结点(node).网线构成网络的骨架,是资源传输或通讯联络的通道,可以代表公路、铁路、航线、水管、煤气管、河流等;结点是网线的端点,又是网线汇合点,可以表示交叉路口、中转站、河流汇合点等.除了上述基本网络元素之外,网络还可能有若干附属元素,如在路径分析中用来表示途经地点的可以进行资源装卸的站点(stop);在资源分配中用来表示资源发散地点或资源汇聚地点的中心(center),对资源传输或通讯联络起阻断作用的障碍(barrier)等.2、NetWork 特点•NetWork 编辑更加容易。

可以根据规则,完成自动维护拓扑关系。

•NetWork 要素可表达复杂的网络部分。

比如电闸等复杂对象。

•NetWork 分析。

可进行路径、流向、追踪等分析。

•NetWork 可版本管理。

可作到支持多用户同时编辑同一个大型网络。

3、NetWork 应用•最佳的城市物流服务路线建立。

•城市电力网络故障分析。

•环境监测过程中水污染源追踪。

•城市交通最佳路径选择。

•带GPS 导航车,查询最佳到达路线。

4、两种网络(1).传输网络常用于道路、地铁等交通网络分析。

特点:在传输网络中,汽车和火车都是可以自由移动的物体,具有主观选择方向的能力。

传输网络解决的问题有:A.计算点与点之间的最佳距离,时间最短或者距离最短,最佳路径能够绕开事先设置的障碍物B.可以进行多点的物流派送,能够按照规定时间规划送货路径,也能够自由调整各点的顺序,也会绕开障碍物C.寻找最近的一个或者多个设施点D.确定一个或者多个设施点的服务区,绘制服务区范围的条件可以是多个,例如,同时列出3分钟、6分钟、9分钟的服务区E.绘制起点-终点距离矩阵(2).效用网络常用于水、电、气等管网的连通性分析。

arcgis中Python脚本的使用【简明教程】

arcgis中Python脚本的使用【简明教程】

[初学入门]ArcGIS中Python脚本的使用By:飞天小猪目录写在前面的话 (2)前言 (2)一、PYTHON语言基础 (3)1数学运算符 (3)2字符串操作 (4)3模块的使用(M ODULES) (5)4使用DEF构建函数 (6)5流程控制结构:I F,W HILE,F OR (7)6简单输入和输出 (9)二、ARCGIS&PYTHON (10)1如何创建地理处理对象(GEOPROCESSOR OBJECT) (10)2获取地理处理帮助 (11)2.1举例:如何使用Geoprocessor Programming Model中的Lists (11)3使用地理处理工具——T OOLBOXES和A LIASES (12)4在建模中使用脚本(S CRIPTS IN M ODEL B UILDER) (13)5在P YTHON W IN里调试地理处理脚本 (19)5.1 调试选择和消息 (20)5.2PythonWin的调试工具 (21)5.3地理处理工具举例 (22)6使用描述(D ESCRIBE)和存在(E XISTS)获取数据信息 (22)6.1描述 (23)6.2存在(Exists) (24)6.3在循环中使用描述和存在 (24)7在P YTHON脚本中使用地图代数(M AP A LGEBRA) (27)8数据管理和指针(D ATA M ANAGEMENT AND C URSORS) (28)8.1数据管理(Data Management) (28)8.2指针(Cursors) (29)附录1:地理处理脚本中输入&输出方法指南 (32)附录2:其他 (33)写在前面的话一直想学习ArcGIS中的Python脚本,大四下半学期终于有了时间,可是想找到这么一本好的教材不容易。

茫茫互联网,终于找到了旧金山州立大学Jerry Davis教授的个人主页,对其中《Geoprocessing Scripts With Python》如获至宝,独乐乐不如众乐乐,现在将其教程翻译并结合自己的学习情况给出总结。

arcgis实习报告

arcgis实习报告

arcgis实习报告一、引言ArcGIS是一款功能强大的地理信息系统软件,能够帮助用户进行地理数据的收集、管理、分析和可视化展示。

本次实习我有幸在某地理信息公司进行ArcGIS实习,本报告将详细记录我在实习期间的工作内容和所取得的成果。

二、实习背景某地理信息公司是一家专业提供空间数据服务的公司,拥有丰富的地理数据资源和专业的技术团队。

在这里,我有机会接触到各种实际项目,并运用ArcGIS进行数据处理和分析,提高了自己的地理信息系统能力。

三、实习目标1. 熟悉ArcGIS软件界面和功能。

2. 学习地理数据的收集与整理。

3. 运用ArcGIS进行地理数据分析和可视化。

4. 参与实际项目并提供解决方案。

5. 提高团队协作与沟通能力。

四、实习过程与成果1. 熟悉ArcGIS软件在实习的初期,我通过学习ArcGIS官方文档和参加公司内部培训,快速掌握了ArcGIS软件的基本操作和常用功能。

包括地图浏览、数据导入、符号化、查询分析等,为后续的实际操作打下了基础。

2. 地理数据收集与整理在项目实施过程中,我参与了地理数据的采集与整理工作。

通过使用ArcGIS Collector等移动设备应用,我学会了如何在实地环境中收集各类地理数据,并进行加工整理。

同时,我还使用ArcGIS Desktop对采集到的数据进行质量检查和数据清洗。

3. 地理数据分析与可视化利用ArcGIS中的空间分析工具,我参与了多个项目的数据分析工作。

例如,对于某区域的居民点分布,我使用点密度分析工具生成了热力图,从而可以直观地了解人口密集区域。

此外,我还进行了地理数据的可视化工作,采用符号化和图层叠加等技术,将数据以地图形式展示出来,提高了数据的可读性和传达效果。

4. 实际项目参与与解决方案在实习期间,我参与了某个城市规划项目的实施,负责制作地理数据分析报告。

通过使用ArcGIS进行空间叠加分析、网络分析等,我成功提取了重要的规划区域、环境设施配套情况等关键信息。

Python和ArcGIS自动化制图完全指南总集篇

Python和ArcGIS自动化制图完全指南总集篇

Python和ArcGIS自动化制图完全指南总集篇前言:《Python和ArcGIS自动化制图完全指南》该系列包括前言共五章,内容多且详细。

总集篇带大家快速梳理掌握各章节的要点,同时解答之前收集到的一些问题...《前言篇》查看前言文章详情。

前言主要介绍了自动化制图的原理和各种名词概念。

ArcPy是随ArcGIS 软件安装的非开源的站点包,它使用Python 语言封装。

是一个可以使用 Python 语言调用的工具包。

使用该工具包再配合 Python 不仅仅能扩展 ArcGIS 的应用场景的精细度、提高内业效率,还可以借此实现很多强大且实用的功能。

在这里可以先畅想一下可以通过这种方式实现哪些功能:你完全可以实现制作某种大型项目的规范检验程序,从矢量、栅格、文档都可以实现客制化的检查需求;你也完全可以实现更为复杂的流处理模型,完全替代 ArcGIS 自带的模型构建器,学好 Python 就够了;你可以使用Python 实现多进程处理我们的地理处理任务或者图片导出,提高效率;你甚至可以拥抱深度学习,这也是Python 的强项!;当然你也可以把你的程序封装成一个exe 文件,很多人无法封装ArcPy,因为ArcPy 不是开放的,确实,但是其中依然有着诀窍,关注我,以后我会慢慢告诉你;最后,回到我们的主题,你也可以实现ArcGIS的完全自动化批量制图出图。

使用Python 代码通过一定的规则来对mxd 模板文件及数据进行筛选和选择性的显示——对mxd 文件标题、图层、图例、符号系统、查询语句、布局视图的位置以及各种要素进行更新和操控,将修改内容后的 mxd 模板另存为指定的名称,然后导出成地图。

实现一个完整的自动化操作。

举个栗子,比如某个项目,其中有几十个功能分区,你需要给每个分区都制作一张地图。

先完成一个分区的成果,其成果 mxd 将作为 mxd 模板。

然后 Python 不仅会对这个模板的数据进行修改更新,也会自动更新图例、修改文字描述、设置界面居中等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实习一Python基础学习1.什么是pythonPython是一种不受局限、跨平台的开源编程语言,它功能强大且简单易学。

因而得到了广泛应用和支持。

ArcGIS 9.0社区中引入了Python。

此后,Python被视为可供地理处理用户选择的脚本语言并得以不断发展。

每个版本都进一步增强了Python体验,从而为您提供更多的功能以及更丰富、更友好的Python体验。

ESRI已将Python完全纳入ArcGIS中,并将其视为可满足用户需求的语言。

下面仅介绍Python的部分优势:•易于学习,非常适合初学者,也特别适合专家使用•可伸缩程度高,适于大型项目或小型的一次性程序(称为脚本)•可移植,跨平台•可嵌入(使ArcGIS可脚本化)•稳定成熟•用户社区规模大Python已延伸到ArcGIS中,成为了一种用于进行数据分析、数据转换、数据管理和地图自动化的语言,因而有助于提高工作效率。

2.在ArcGIS中使用Python(1)打开ArcMap,在工具栏中点击“”按钮,位置如图1-1所示,即可打开Python编辑窗口。

图1-1(2)Python程序为解释运行,输入一行代码,按“回车”键后即可运行,如图1-2。

图1-23.行和缩进学习Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。

python最具特色的就是用缩进来写模块。

(1)缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

在Python窗口中输入如图1-3所示的代码块并运行,该代码块是严格缩进的。

图1-3(2)以下代码将会执行错误,如图1-4:图1-4实习二使用ArcPyArcPy 是一个以成功的arcgisscripting 模块为基础并继承arcgisscripting功能进而构建而成的站点包。

目的是为以实用高效的方式通过Python执行地理数据分析、数据转换、数据管理和地图自动化创建基础。

该包提供了丰富纯正的Python体验,具有代码自动完成功能(输入关键字和点即可获得该关键字所支持的属性和方法的弹出列表;从中选择一个属性或方法即可将其插入),并针对每个函数、模块和类提供了参考文档。

在Python中使用ArcPy的另一个主要原因是,Python是一种通用的编程语言。

Python是一种支持动态输入的解释型语言,适用于交互式操作以及为称为脚本的一次性程序快速制作原型,同时其具有编写大型应用程序的强大功能。

用ArcPy 编写的ArcGIS应用程序的优势在于,可以使用由来自多个不同领域的GIS 专业人员和程序员组成的众多Python小群体开发的附加模块。

1.通过Python使用工具每个地理处理工具都具有一组固定的参数,这些参数为工具提供执行所需的信息。

在Python中使用工具时,必须正确设置工具的参数值,以便在脚本运行时工具可以执行。

下面以缓冲区分析为例练习通过Python使用工具的方法。

(1)点缓冲1)在ArcMap中打开实验数据中的“point.shp”文件,如图2-1。

图2-12)打开Python窗口,在其中输入图2-2所示的代码,其中workspace的路径根据数据在电脑中的实际路径设置。

在调用工具(图中红色部位)的时候会在窗口右侧出现提示信息,根据提示信息,输入相关参数,运行结果如图2-3。

运行后会在目录中生成一个“pointBuffer.shp”文件,这个文件的文件名和路径均在代码中设置。

图2-3(2)线缓冲1)在ArcMap中打开实验数据中的“line.shp”文件,选中其中的一条线,如图2-4。

2)打开Python窗口,在其中输入图2-5所示的代码,运行结果如图2-6。

图2-5图2-63)取消选中,重新运行一次代码,运行结果如图2-7所示。

从两次运行结果可以看出,地理处理工具处理对象首先应是选中的要素,如果没有选中要素,则默认为图层中所有对象。

图2-7(3)多层缓冲在输入要素周围的指定距离创建多个缓冲区。

使用缓冲距离值可随意合并和融合这些缓冲区,以便创建非重叠缓冲区。

在ArcMap中打开实验数据中的“line.shp”文件,运行如图2-8所示的程序,结果如图2-9。

多个缓冲区的距离为“[10,20,30]”,可根据实际情况自己设定。

图2-8图2-92.使用Python处理游标游标是一种数据访问对象,可用于在表中迭代一组行或者向表中插入新行。

游标有三种形式:搜索、插入或更新。

arcpy.da.InsertCursor(in_table, field_names) 插入行arcpy.da.SearchCursor(in_table, field_names, {where_clause}, {spatial_reference}, {explode_to_points}, {sql_clause}) 只读访问arcpy.da.UpdateCursor(in_table, field_names, {where_clause}, {spatial_reference}, {explode_to_points}, {sql_clause}) 更新或删除行读取几何(1)读取点1)在ArcMap中打开“point.shp”文件,点的相对位置如图2-10。

图2-102)在Python窗口中运行如图2-11所示的代码,“SHAPEXY”表示一个要素的质心XY坐标,点的质心为其本身。

cursor为一个搜索游标,其中“for row in cursor”是用一个for循环来遍历游标中的每一行。

运行结果如图2-12所示,红框中的数据为点的坐标。

图2-11(2)读取折线或面1)在ArcMap中打开实验数据中的“line.shp”文件,两个线要素相对位置如图2-13。

图2-132)在Python窗口中运行如图2-14所示的代码,结果如图2-15所示。

红色方框中的数据为两个先要素的折点坐标。

搜索游标中“OID”表示要素的FID,“SHAPE”表示几何要素对象。

图2-14图2-15写入几何通过使用插入游标可以实现写入几何功能,(1)写入点将“point.shp”加载到ArcMap中,在Python窗口中输入图2-16所示的代码并运行,运行结束后点击左下方的“”按钮,刷新一下地图窗口,结果如图2-17。

在写入点要素时,只有单个点对象用于设置点要素几何。

使用“SHAPEXY”,就可轻松地创建点。

图2-16图2-17(2)写入线将“line.shp”加载到ArcMap中,在Python窗口中输入图2-18所示的代码并运行,运行结果如图2-19。

代码中“arcpy.Array”表示数组对象可包含任意数量的地理处理对象,例如点、几何或空间参考。

(点坐标可自行设置)图2-18图2-19实习三创建ArcGIS Python Add-in 加载项是一种自定义项,它可以插入到ArcGIS for Desktop 应用程序(即ArcMap、ArcCatalog、ArcGlobe 和ArcScene)中以便提供补充功能以完成自定义任务,例如工具条上的工具集合。

1.创建加载项项目(1)选择加载项项目文件夹:解压“addin_assistant.zip”(图3-1)文件,在解压后的文件夹处找到addin_assistant.exe (图3-2)文件并双击。

将打开浏览文件夹对话框,在其中输入用来存储加载项项目的文件夹。

必须选择一个空文件夹或创建一个新文件夹(图3-3),单击确定。

图3-1图3-2图3-3(2)输入项目设置:选择工作文件夹之后,将显示向导的第一个面板(图3-4)。

可在此处输入项目设置。

这些设置是项目的元数据,存储在config.xml 文件中。

使用加载项时,这些设置在部署期间十分重要。

图3-42.创建工具条单击加载项容选项卡,右键单击工具条,然后单击“新建工具条”,如图3-5。

向导的右侧面板将显示工具条的属性,如图3-6。

工具条必须具有标题和ID。

标题用于为工具条提供标注。

ID 表示唯一的名称,用于区分不同工具条。

ID不能包含空格。

默认情况下,启动应用程序时初始显示工具条这一选项处于选中状态。

如果不希望在启动应用程序时显示工具条,可以取消选中此选项。

图3-5图3-63.创建按钮(1)输入工具条属性后,即可创建新按钮。

右键单击名为“工具条”的新工具条并选择“新建按钮”,如图3-7。

图3-7(2)新建按钮后,为按钮键入相应的属性信息,如图3-8,图3-8按钮具有多个属性需要设置。

以下列出了所有这些属性及其对应的说明。

这些属性存储在项目的config.xml 文件中属性描述标题(必填)定义按钮标题。

下图显示了ArcGIS 加载项管理器中使用的标题,有助于标识不同类型的可用自定义容(加载项类型在括号中标识):类(必填)在桌面应用程序中单击按钮后执行的Python 类。

Python 类是写入按钮业务逻辑的位置。

构造类时应使用Python 单词首字母大写命名约定,例如应使用“ZoomToSelectedFeatures”而不是“zoomtoselectedfeatures”。

ID(必填)用于标识按钮的唯一名称。

您可以为给定项目创建多个按钮,此ID 便用来区分不同的按钮。

理想情况下,应使用更有意义的值替换默认ID。

ID 不应包含任何空格。

可以使用下划线连接单词。

不应使用Python 关键字。

有关保留字信息,请查阅Python 文档。

工具提示(可选)将鼠标指针悬停在桌面应用程序中的按钮上方时出现的简短描述。

消息(可选)按钮功能的详细描述。

将鼠标指针悬停在按钮上方时,此消息会显示在工具提示下方。

图像(可选)此图像应为16 * 16 像素的图像,用于符号化按钮。

图像格式应为任意一种常用图片格式(即.bmp、.jpg等)。

图像将复制到加载项项目中创建的图像文件夹中。

4.编辑Python 脚本此时已为定义加载项按钮所需的属性添加了值。

此工作流的下一步是编辑Python 脚本并更新Python 类,以包含“缩放至所选要素”这一功能。

如果未选择任何要素,则会缩放至所有图层的全图。

要将此功能添加到自定义按钮,执行以下步骤:(1)在arcgis软件目录下找到如图3-9所示的Python编辑器,打开通过向导创建的工作文件夹下的“install”文件夹中Python脚本。

图3-9(2)在onClick(self)函数中键入相关代码,如图3-10.图3-10(3)保存脚本,如果出现图3-11所示的警告信息,则需要在脚本头上加上“# coding gbk”如图3-12.图3-11图3-125.测试按钮(1)创建加载项文件:转到工作文件夹,双击该文件夹以运行makeaddin.py (图3-13)脚本。

相关文档
最新文档