




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ArcPython,地理处理大杀器Esri(中国中国)信息技术有限公司西安分公司信息技术有限公司西安分公司 严瑞、范秦光严瑞、范秦光: 大家好,我是Esri西安办严瑞,很荣幸能够在2019年第一堂公开课和大家见面,在这里给大家拜一个晚年,祝各位新的一年身体健康、万事如意!和大家见面,在这里给大家拜一个晚年,祝各位新的一年身体健康、万事如意!需要跟大家说一声抱歉,由于我嗓子发炎,声音嘶哑,需要跟大家说一声抱歉,由于我嗓子发炎,声音嘶哑,本堂课我将会用旁边文字替代音频的形式来完成,小伙伴们本堂课我将会用旁边文字替代音频的形式来完成,小伙伴们 另:本堂课是以实战练习为主的课,所以更多另:本堂课是以实
2、战练习为主的课,所以更多的内容是以实际操作为主,大家只要看明白我的的内容是以实际操作为主,大家只要看明白我的练习操作就可以,课后会将所有源码和数据提供练习操作就可以,课后会将所有源码和数据提供给大家,是全部哦!给大家,是全部哦!希望各位小伙伴们能够理解!希望各位小伙伴们能够理解!顺便可以体验一下顺便可以体验一下EsriEsri中国史上第一堂无声公开课中国史上第一堂无声公开课“哦!哦!:1ArcPython在ArcGIS中的用法2与ArcGISDesktop实战篇3与ArcGISServer实战篇4总 结注:本讲座针对有一定注:本讲座针对有一定pythonpython和和arcpyarcpy基础
3、的朋友基础的朋友 第三部分内容我邀请了我的同事范秦光同学为大家讲解,他在server与python的结合应用中具有丰富的经验,这一部分内容大概有十五分钟的时间,在这里感谢范范!:从未了解过ArcGIS中Python的朋友请先看.优酷搜索关键词优酷搜索关键词“ArcGIS Python”“ArcGIS Python”:1.现有工具实现不了,可以用python2.流程化需要时,可以使用python3.没有AE等二次开发环境4.其他特殊场景什么情况下使用ArcPython?优点:便利 、轻量级:ArcGIS中python的几种用法1.字段计算器2.制作成gp工具:3.Python windowArc
4、GIS中python的几种用法4.Python Add-in5.在ArcGISServer中使用python:为大家重磅打造典型应用案例22个:1.自增计算 (字段计算器)total = 0 total = 0 def accumulate(increment): def accumulate(increment): global total global total if total: if total: total += increment total += increment else: else: total = increment total = increment return t
5、otal return total为ID字段值设置自增:2.记录地块权属人变更的要素(字段计算器)判断土地权属人是否变化,不变则Mark值为1,否则为0:2.记录地块权属人变更的要素(字段计算器)权属人没有变更权属人变更:将存储在字段值中类似379.826的数据处理成K379+8263.桩号数据处理(字段计算器)第一步:第一步:! !桩号桩号! .replace(.,+)! .replace(.,+)第二步:第二步:“K“+ !“K“+ !桩号桩号! ! 交通行业通常需要将道路交通行业通常需要将道路的里程数据存储成的里程数据存储成K389+34K389+34的形式。的形式。:1.自增计算2.记
6、录地块权属人变更的要素3.桩号数据处理操作演示::import arcpyfrom arcpy import envenv.workspace=rC:UsersyanruiDocumentsArcGISDefault.gdbfcs = arcpy.ListFeatureClasses()for fc in fcs: arcpy.Delete_management(fc)4.删除Default.gdb中的所有要素类、表、栅格批量删除要素类:rasters=arcpy.ListRasters()for raster in rasters: arcpy.Delete_management(raste
7、r)批量删除栅格:批量删除表:tables = arcpy.ListTables()for table in tables:arcpy.Delete_management(table)ArcGIS Desktop安装好后环境变量中默认输出路径是在C盘的Default.gdb中,我们通常需要清理这个文件夹。但Toolbox没有批量清理,这里可以使用python:5.空间随机抽取若干数这个案例是帮助一个客户从一个要素类中随机抽取若干个数据。然后再输出。:6.地震目录自动空间化第一步:第一步:EclipseEclipse下载下载PyDevPyDev插件插件第二步:下载第二步:下载cx_Oracle.
8、pydcx_Oracle.pyd包包第三步:代码实现第三步:代码实现第四步:第四步:WindowsWindows设置计划任务设置计划任务本练习在eclipse环境中完成(Eclipse环境中)将存储在oracle中的地震数据包含x,y,时间,地点动态的插入到矢量数据中。这个脚本是在eclipse环境中完成,为小伙伴们提供了文档操作说明文档。:!type! +%d % !ID!7.相同字段值排序对同一类种植地数据进行排序,原始字段是type,更新后是code字段。:8.插入点(制作成GP工具、发布服务、js页面调用)使用arcpy结合python,给一个点图层插入数据,制作成gp工具。:8.插入
9、点(制作成GP工具、发布服务、js页面调用)详细操作步骤详细操作步骤请参见操作请参见操作手册:手册:工具发布成服务,以及js页面调用过程都在操作文档中,文档会提供给小伙伴们。:4.删除Default.gdb中的所有要素类、表、栅格5.空间随机抽取若干数6.地震目录自动空间化7.相同字段值排序8.插入点操作演示::9.字段拆分:9.字段拆分:10.读取Excell数据生成多边形:11.读取txt生成多边形:12.图层批量合并:9.字段拆分10.读取Excell数据生成多边形11.读取txt生成多边形12.图层批量合并操作演示::13.shp数据至mdb:14.打印线段折点坐标:import ar
10、cpy mxd = arcpy.mapping.MapDocument(r“C:ProjectProject.mxd) mxd.findAndReplaceWorkspacePaths(rC:ProjectData, rC:ProjectData2)mxd.saveACopy(rC:ProjectProject2.mxd) del mxd15.修复数据链接数据源批量替换:打印数据连接损坏的图层:import arcpymapdoc = arcpy.mapping.MapDocument(CURRENT)brokenlist=arcpy.mapping.ListBrokenDataSources
11、(mapdoc)for lyr in brokenlist:print del mapdoc:16.修改栅格数据分辨率ApplyEnvironment函数:仅仅限于Cell size, Current Workspace, Extent, Mask, Output Coordinate System, Scratch Workspace, 和Snap Raster等操作:17.批量出图:18.坡度分级提取并计算面积:13.Shp数据至mdb14.打印折线节点15.略16.修改栅格数据分辨率17.批量出图18.坡度分级提取计算面积操作演示::下载Python Add-In Wiz
12、ard:/arcgis/home/item.html?id=5f3aefe77f6b4f61ad3e4c62f30bff3b19.缩放至选中的features(Python Add-In)详细操作步骤详细操作步骤请参见操作请参见操作手册:手册::python add-in插件支持的最小版本是10.1,默认也是10.1,我机器上安装的是ArcGIS Desktop10.3,所以需要修改config.xml里面的版本号,否则在安装插件时会报“No GUI components found in this Add-in.Add-In version does not match”:留意::20.栅格
13、数据批量拷贝至对应文件夹:21.获取多边形顶点ianbroad/Download free GIS geoproccessing tools, learn about ESRIs ArcGIS and ArcPy, get field calculator tips, and more:22.制图脚本样例:19.缩放至选中的features20.栅格数据批量拷贝至对应文件夹21.获取多边形顶点20.制图脚本样例操作演示::server.arcgis/zh-cn/server/latest/administer/linux/scripting-arcgis-server-administrati
14、on.htmn ArcGIS Server 命令行实用程序n 运用 ArcGIS REST API 编写Python脚本n 利用ArcPy 编写Python脚本实现服务的发布: 位于ArcGIS for Server安装目录tools/admin目录下 提供一套管理ArcGIS Server的脚本命令行工具1、ArcGIS Server 命令行实用程序:1、ArcGIS Server 命令行实用程序可以进行下列操作可以进行下列操作n 启动和停止服务n 从集群添加和移除计算机n 从服务定义 (.sd) 文件发布服务n 备份或还原站点配置n 定义新地图缓存n 构建和删除地图缓存n 在松散和紧凑格式
15、之间转换地图缓存:实战演练:通过Terminal终端调用使用1、ArcGIS Server 命令行实用程序:实战案例: 使用Python调用ArcGIS Admin API修改ArcGIS Server参数 客户需求介绍:在客户的业务中,对ArcGIS for Server的安装全部是通过脚本自动一键执行,因为客户使用的GP服务以及地图服务数量多高并发并且要求7X24小时运行,因此通过Python调用ArcGIS Admin API构造可执行脚本,ArcGIS Server安装完成后,调用该脚本,调整ArcGIS for Server的默认配置。2、运用 ArcGIS REST API 编写P
16、ython脚本:实战案例: 使用Python调用ArcGIS Admin API修改ArcGIS Server参数 通过Python构筑HTTP requests,将App server maximum heap size和SOC maximum heap size的值分别修改为512和128。2、运用 ArcGIS REST API 编写Python脚本:实战案例: 使用Python调用ArcGIS Admin API修改ArcGIS Server参数 l步骤1运行脚本时需要有管理员权限,必须提供一个具有管理员权限的用户名和密码:l 步骤2在脚本中获取和使用令牌l步骤3配置参数,构筑请求2、
17、运用 ArcGIS REST API 编写Python脚本:案例1、使用Python发布构筑GP服务 客户需求介绍:大量的图片(.tif .jpg并且带有记录坐标信息的文件(.tfw .jpgw),需要将这些文件导入到SDE数据库中,作为背景底图使用。 3、利用ArcPy 编写Python脚本实现服务的发布Python、ArcPy APIArcCatalogArcToolboxArcMap(Share As Service)或ArcPy发布SD设计和制作脚本制作脚本工具调试运行、发布服务:设计和制作脚本设计和制作脚本 l步骤1定义参数l 步骤2将图片作为栅格数据集导入到临时工作空间中、并定义空
18、间参考l步骤3配进行投影变换,输出路径设置为SDE数据库3、利用ArcPy 编写Python脚本实现服务的发布:制作脚本工具制作脚本工具3、利用ArcPy 编写Python脚本实现服务的发布:调试运行、发布服务调试运行、发布服务3、利用ArcPy 编写Python脚本实现服务的发布:案例2、使用Python发布地图服务 客户需求介绍:在客户的业务中,预先定义好地图文档(.mxd),根据业务数据变化动态替换其中的图层数据,然后将其发布成地图服务。准备地图文档构思设计制作发布地图服务的GP脚本定义参数添加栅格图层生成草稿(sddraft)生成服务定义(sd)发布地图服务制作脚本工具调试运行发布服务3、利用ArcPy 编写Python脚本实现服务的发布:案例2、使用Python发布地图服务定义参数添加栅格图层3、利用ArcPy 编写Python脚本实现服务的发布:案例2、使用Python发布地图服务生成草稿(sddraft)生成服务定义(sd)发布服务3、利用ArcPy 编写Python脚本实现服务的发布:案例2、使用Python发布地图服务3、利用ArcPy 编写Python脚本实现服务的发布:对于ArcGIS Desktop而言,Python提供了一种轻量便捷的方法,基于脚总结:本次课程所有练习素材将于本次课程所有练习素材将于3 3月月8 8日公开课答疑时以百度云盘链接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025关于水果采购合同
- 2025建筑外墙保温工程施工合同模板
- 2025成都市物业管理服务合同范本
- 2025保险公司合同格式模板
- 2025年企业借款合同范本(商业借贷)
- 2025汽车买卖合同模板
- 2025年北京市移动电话入网合同(适用于签约后付费用户)
- 美食团购网站方案策划书
- 2025年环氧脂肪酸甲酯合作协议书
- 超市商品的定位分析
- 中国话剧史专题知识
- GB/T 15544.1-2023三相交流系统短路电流计算第1部分:电流计算
- GB/T 90.3-2010紧固件质量保证体系
- GB/T 18799-2020家用和类似用途电熨斗性能测试方法
- 科技公司涉密计算机软件安装审批表
- GA/T 1369-2016人员密集场所消防安全评估导则
- GA 1517-2018金银珠宝营业场所安全防范要求
- FZ/T 64014-2009膜结构用涂层织物
- 卫生统计学-回归与相关
- 德国政治制度简介课件
- 高考试卷命题设计的技巧 课件24张
评论
0/150
提交评论