欢迎来到天天文库
浏览记录
ID:33994901
大小:86.03 KB
页数:7页
时间:2019-03-02
《基于arcgis批量统计打印软件的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于ARCGIS批量统计打印软件的设计摘要:本文讨论了基于ARCGIS的批量统计打印软件的设计目标和原则,进行系统的结构设计、关键技术的运用、软件功能模块设计以及系统的运行环境,并在项目的建设中得到了实现。关键字:ARCGIS批量统计AO类接口1.引言1.1背景2005年12月至2006年4月间,为配合北京市第三次交通调查即土地使用调查工作,进行了全市域1118个交通调查小区现状用地、总体规划用地数据调查与汇总统计工作。该项工作由于缺乏成熟的批量切割和统计软件,工作较为繁琐,且周期较长。此外,类
2、似的批量用地统计的工作也日益增多,切实地需要定制一套针对规划数据的批量统计软件.由此为了提高工作效率,提出设计开发出基于ARCGIS的批量统计软件,实现对现状用地数据进行批量切割、批量统计及批量打印等功能。1.2设计原则1.2.1实用性在尽量满足统计功能需求的前提下,应做到简单、实用、准确的原则。1.2.2高效性在软件设计、开发和应用时,应从统计需求、技术措施、软硬件平台、技术服务和维护响应能力等方面综合考虑,确保软件较高的性能。1.2.3整体性由于软件需要实现的功能包括三大部分:分区裁切、批量
3、统计、批量打印,这就要求在把握全局性的基础上,充分考虑各模块的需求,使软件成为一个有机的整体,从而进一步提高统计的效率、质量和水平。1.3设计要求软件开发需基于ARCGIS9.0;软件需实现批量切割各类规划数据;软件需实现可选择的批量数据统计(参照统计范围计算属性中可计算的各种数据,含不同属性项的推导计算);出图打印(统计数据自由排版并批量打印)。2.技术路线软件开发模式采用Client/Server方式,采用组件式开发技术Arcobjects结合VisualBasic开发语言进行软件的开发。软
4、件采用面向对象技术,基于ARCGIS软件平台,在ArcObjects+VBA环境中使用VB语言实现功能。其中ArcObjects是ArcGIS中应用程序ArcMap,ArcCatalog和ArcScene的开发平台,是用于构造ArcGIS系列平台的一个COM组件对象库,可以用来定制、扩展和构建GIS应用程序。通过ArcObjects可以实现空间数据的显示、查询检索、编辑和分析;创建各种专题图和统计报表;高级的制图和输出功能;空间数据管理和维护,甚至更多功能。VBA是单一的通用的应用程763序脚本
5、语言和环境,是VB基本语言引擎,与VB的代码大部分可以相互复制。3.关键技术3.1自定义结构体在批量统计模块中,由于迭代计算过程很繁杂,所以在程序开发中就使用到了用户自定义结构体,用于传递中间计算值。在统计范围计算属性中的各种数据,含不同属性项的推导计算时,自定义了一个结构体用于传递在统计中将要用到的数值。与其他处理迭代计算的方法相比,自定义结构体起到了简化程序的作用,并且具有使程序更具有可读性的优点。3.2ADO和ADOX在批量切割用地数据时,需要将用地属性表导入ACCESS中,利用ACCES
6、S的“窗体”透视表的制作功能进行批量统计;以及在批量统计时,必须将统计结果输出到用户设定的ACCESS中,同时生成用户所需要的MDB数据表和EXCEL表。这就需要使用到ADO和ADOX技术处理EXCLE和ACCESS的数据文件。为了在软件中实现对EXCLE和ACCESS中数据的控制,使用到的ADOX的对象有:1.Catalog:包含描述数据源模式目录的集合;2.Column:表示表、索引或关键字的列;3.Table:表示数据库表,包括列、索引和关键字。使用到的ADOX的方法有:1.Append(
7、Columns):将新的Column对象添加到Columns集合;2.Append(Tables):将新的Table对象添加到Tables集合;3.Create:创建新的目录;4.Item:按名称或序号返回集合的指定成员。使用到的ADOX的属性有:1.ActiveConnection:指示目录所属的ADOConnection对象;2.Count:指示集合中的对象数量;3.Name:指示对象的名称。同样,要在开发工具中使用EXCEL,也需要在VisualBasic工程中引用。通过对EXCEL使用O
8、LE自动化,可以创建出用户所需要的EXCEL表。3.3AO类接口ArcMap和ArcCatalog类都是COM类,COM类用接口来组织属性与方法。类会有许多接口。ArcObjects提供了强大的接口功能,可以根据需求选择不同的接口。在分区裁切地块数据的模块中,按分区选择裁切时,需要根据用户需求对该分区边界处的地块是否按区界进行裁切,还要通过判断地块的质心是否落入该分区内从而选择裁切的方法。这就要求在ArcObjects所提供的接口中寻找符合用户需要的接口。举例如下:IBasicGeoproces
此文档下载收益归作者所有