资源描述:
《supermap gis 桌面平台的发展》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、SuperMapGIS桌面平台的发展新一代桌面产品简介在一般的GIS应用中,基本都可以见到桌面产品的身影:从处理数据、制作地图到后台数据管理、更新等等。但随着GIS应用的逐步深入,人们对GIS桌面产品的要求也越来越高,人们希望除了能够使用桌面产品已有的功能外,还希望能够在这些功能的基础上根据自己的需要进行扩展。SuperMapDeskpro5系列软件也提供了这样的功能,但其是基于C++语言实现的,开发难度较大,同时由于其直接基于SFC(SuperMapFoundationClass,超图的GIS基础类库,基于
2、C++实现)进行的实现,无法同组件直接进行交互,导致组件用户不能直接进行桌面的扩展开发。为了解决这些问题,新一代的桌面Deskpro.NET将直接基于SuperMapObjects.NET进行实现,同时提供诸多新的功能特性,满足用户的各种需求。基于这些考虑,Deskpro.NET可以分为两个层面的产品:n桌面开发平台包括桌面对象模型、插件模型、脚本、命令行等基本功能,该框架只是定义一些基本的规范以及提供基本的编程接口,不实现具体的功能,作为桌面类开发公共平台。图0.1新一代桌面开发平台的架构在桌面开发平台的基
3、础上,可以进一步开发专业产品,比如可以专门开发一个质量检查的产品D-Checker,空间数据建库产品D-Builder等等,同时也可以基于该开发平台做行业应用软件,比如国土、统计、军事等。同时各个行业应用软件还可以进行扩展和定制,各个行业应用软件也可以组合起来使用。5.1-9,,services,andmakethecitymoreattractive,strengtheningpublictransportinvestment,establishedasthebackboneoftheurbanrailtr
4、ansitmulti-level,multi-functionalpublictransportsystem,thusprotectingtheregionalpositionandachieve图0.2基于桌面开发平台进行开发图0.3扩展定制应用产品5.1-9,,services,andmakethecitymoreattractive,strengtheningpublictransportinvestment,establishedasthebackboneoftheurbanrailtransitmu
5、lti-level,multi-functionalpublictransportsystem,thusprotectingtheregionalpositionandachieve图0.4应用产品集成应用图0.5扩展后产品的集成应用n桌面产品在这个开发平台的基础上,对组件提供的GIS功能按照桌面应用进行封装,形成一个完整的桌面产品。该桌面产品具有开发平台的一切特性,包括可定制、可编程、可扩展等,而且在桌面开发平台基础上形成的各个产品或者应用还可以集成到一起来使用,这样对于做一些项目的时候是非常价值的。因此,
6、我们新的桌面开发平台将是我们以后桌面类应用开发平台(Deskpro.NET),与嵌入类开发平台(ObjectsCOM,Objects.NET,ObjectsJava),服务器开发平台(IS.NET,iServer.NET,iServerJava)一起形成一个全面的开发平台体系5.1-9,,services,andmakethecitymoreattractive,strengtheningpublictransportinvestment,establishedasthebackboneoftheurbanr
7、ailtransitmulti-level,multi-functionalpublictransportsystem,thusprotectingtheregionalpositionandachieve图0.6完整的开发平台体系新一代桌面开发平台的特性新一代桌面将完全基于组件实现,同时提供插件模式来实现所有功能,每个插件还提供再次开发扩展的能力,这样满足不同层次用户对于桌面扩展的需求。新一代桌面开发平台有以下特性:n可编程对象模型在组件的对象模型基础上,桌面开发平台将进一步提供一系列为桌面开发定制的对象模
8、型,桌面提供的对象模型将和组件的对象模型无缝结合,这样能够使桌面开发组件化,提高二次开发的效率和代码的可充用性。同时桌面提供的对象模型在规范上与组件保持一致,以降低用户学习成本。桌面开发平台提供的可编程对象模型可同时提供给应用系统开发和脚本开发,这样应用系统的代码和脚本代码就能够完全相互使用。桌面开发平台的可编程对象模型将提供不同层次的开发对象,即简单的应用可以使用一些集成度较高的对象完成,这样用户