arcpy+PyQt+py2exe快速开发桌面端ArcGIS应用程序
2024-10-13 15:30:51
前段时间有一个项目,大体是要做一个GIS数据处理工具。
一般的方法是基于ArcObjects来进行开发,因为我对ArcObjects不太熟悉,所以就思考有没有其他简单快速的方法来做。
在查看ArcGIS的官方帮助文档时,我发现用Arcpy(ArcGIS的python库)来处理数据很简单,只需要关注逻辑就可以,不需要知道那么多的类啊对象什么的(ArcObjects)。基本的思路解决了,接下来还有个问题:用户界面怎么弄?
答案是:PyQt!至于py2exe,大家看名称就知道它是用来把python程序转换成exe程序的。
软件环境及版本说明:GIS平台软件:ArcGIS10;编程语言:Python2.6;GUI:PyQt4;Python IDE: Eric6
代码暂且不提供了,有时间再给大家放出来。
在这里我说下在开发的过程中可能会遇到的一些关键问题:
- PyQt方面,最重要的知识点是“信号”和”槽“,只要理解了这个,界面的问题基本就搞定了。
- Python方面, 最主要编码问题,诸如unicode、decode、encode的问题要搞清楚。
- Py2exe方面,推荐一篇博文(提供把ArcPy程序转换成exe程序的方法),网址:https://geonet.esri.com/thread/164101 。
其实,这里我写这篇博客的主要目的是要说明:
这条技术路线是行的通的,而且确实可以实现快速开发桌面端GIS应用。不想用ArcObjects的同学可以试试我提的这个路子。
开发可能需要的参考资料:
ArcGIS Resource: http://resources.arcgis.com/zh-CN/help/main/10.1/
PyQt: https://riverbankcomputing.com/software/pyqt/intro
PyQt上手教程:http://www.pythoner.com/89.html
最新文章
- ormlite的使用方法
- Java设计模式之单例模式(Singleton)
- PortSentry是入侵检测工具中配置最简单、效果最直接的工具之一
- sdutoj 2624 Contest Print Server
- Linux 浅谈Linux 操作系统的安全设置
- String 与StringBuffer比较
- unity,下面两个协程不等价
- ETL,ESB,BPM为什么要这些图形
- java web 学习十五(jsp基础语法)
- DataTable循环删除行
- Surround the Trees(凸包求周长)
- WIN7 数据源配置问题(32位&;&;64位)
- 文件系统的几种类型:ext3, s…
- 【解决方案】纯js动态克隆表一行元素
- uva11059(最大乘积)
- 爬虫(requests)
- git提交代码到github
- 32 ArcToolBox学习系列之数据管理工具箱——属性域(Domains)的两种创建及使用方式
- JS快速排序 希尔排序 归并排序 选择排序
- Ajax三级联动