一种基于dcom技术的地图符号化网络共享服务方法

文档序号:7693603阅读:84来源:国知局
专利名称:一种基于dcom技术的地图符号化网络共享服务方法
技术领域
本发明涉及一种地图符号化网络共享服务方法,尤其是涉及一种基于DCOM技术的地图符号化网络共享服务方法。
背景技术
符号是构成地图的基本元素,研究符号是地图学的基本问题之一。地图符号作为一种地图语言,具有读写两个功能“读”是用图者通过对符号的识别,认识制图空间;“写” 是制图工作者把制图对象用一定的符号及其组合在地图上表现出来。地图符号和地图符号库是地理信息系统及各种制图软件的核心问题之一。但是由于不同的系统及制图软件在数据结构、符号模型、绘制方式等方面存在较大的差异,导致各个系统或者制图软件之间很难完成地图符号的共享。针对地图符号共享这一问题,已出现部分相关专利,例如《基于路径的点状地图符号模型及基于该模型的共享方法》(申请号201019(^6032. 8)、《基于路径的线状地图符号模型及基于该模型的共享方法》(申请号201019(^6030. 9)、《基于路径的面状地图符号模型及基于该模型的共享方法》(申请号201019(^6029. 6),上述三个发明专利提出了一种基于路径的地图符号模型,并提出了基于路径模型的地图符号的共享方法;《AutoCAD图块与基于路径的点状地图符号交换方法》(申请号201019(^6028. l)、《TrueType符号与基于路径的点状地图符号交换方法》(申请号201019(^6034. 7)、《图元法点状符号与基于路径的点状地图符号交换方法》(申请号201019(^6026. 2),上述三个专利是在基于路径的点符号模型基础上,分别提出了 AutoCAD图块、TrueType符号、图元法点状符号三类不同格式的符号到基于路径的点符号的转换方法;《VGE符号模型及基于该模型的地图符号共享系统和方法》(申请号201019(^6033. 2),提出了一种基于VGE的符号模型和基于该模型的地图符号共享方法。上述所提及的相关专利,都是提出了一种或几种地图符号模型,然后在提出的符号模型基础上阐述其相关的符号共享方法,需要将其他格式的符号模型转换为其提出的符号模型。

发明内容
本发明主要是解决现有技术所存在的由于不同的系统及制图软件在数据结构、符号模型、绘制方式等方面存在较大的差异,导致各个系统或者制图软件之间很难完成地图符号的共享等的技术问题;提供了一种客户端可以根据自由选择符号化服务端,合理实现网络及符号化服务端负载平衡;符号库服务端可位于符号化服务端,亦可为分布式服务器, 客户端亦可自主选择地图符号库的一种基于DCOM技术的地图符号化网络共享服务方法。本发明的上述技术问题主要是通过下述技术方案得以解决的
一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,包括以下步骤 步骤1、客户端新建地图并指定所建立的地图的比例尺,并加载图层,同时客户端向符号化服务端发出符号化请求,请求符号库对象SymbolDatabase ;步骤2、符号化服务端收到请求并验证客户端权限通过后,在符号化服务端创建符号库对象SymbolDatabase,并向客户端返回一个可访问符号库对象SymbolDatabase的接口 ISymbolDB ;
步骤3、客户端在收到来自符号化服务端的ISymolDB接口后,确定待符号化的要素,向符号化服务端发送符号化请求,符号化服务端在收到来自客户端封送的符号化请求后,扫描网络内可利用的符号化服务端并向客户端封送可利用的地图符号库信息;
步骤4、客户端根据符号化服务端提供的地图符号库信息,指定所需要的地图符号库,并将所指定的符号库信息发送给符号化服务端;符号化服务端的符号库对象 SymbolDatabase根据客户端提供的地图符号信息导入相应的地图符号库,客户端利用 ISymbolDB接口列举出符号库对象SymbolDatabase中的所包含的符号信息;
步骤5、客户端根据所指定的待符号化的要素及所使用的地图符号Symbol,并根据指定的地图符号使用ISymbolDB接口在符号化服务端生成地图符号对象Symbol ;
步骤6、客户端将待符号化的要素的几何信息通过存根代理程序转换为通用的数据类型,并封送传送到服务器端;
步骤7、符号化服务端收到客户端封送来的数据后,通过其存根代理将数据进行解封, 并将解封后的数据交予符号化服务端的符号对象Symbol进行符号化;
步骤8、符号化服务端通过其存根代理将符号化后的结果封送回客户端,客户端将收到符号化后的结果进行解封,并转换为客户端可以识别的符号化后的结果;
步骤9、客户端将完成步骤8转换后的符号化结果进行绘制显示,完成符号化过程。在上述的一种基于DCOM技术的地图符号化网络共享服务方法,所述的步骤2中, 符号化服务端收到请求后并验证客户端权限,并选择执行以下步骤
步骤2. 1、如果客户端权限未通过符号化服务端验证,则向客户端封送拒绝应答信息, 客户端在收到符号化服务端的应答信息后,解封应答信息,如果是来自服务端的拒绝应答信息,则终止向当前符号化服务端发送符号化请求,寻找网络内的其他符号化服务端,重复步骤1 ;若遍历网络内所有的符号化服务端后,客户端接收到的均为拒绝应答信息,则客户端终止符号化请求,完成整个符号化过程。步骤2. 2、若客户端权限通过符号化服务端验证,则在符号化服务端创建符号库对象SymbolDatabase,并向客户端返回一个可访问SymbolDatabase的接口 ISymolDB。在上述的一种基于DCOM技术的地图符号化网络共享服务方法,所述步骤2中,客户端收到的符号化服务端封送回的ISymbolDB为操作符号化服务端接口,用以显示符号化服务端的符号库对象SymbolDatabase的有关信息以及操纵符号库对象,包括显示点线面符号、符号个数、符号库比例尺、制作者、制作时间以及进行地图符号化。在上述的一种基于DCOM技术的地图符号化网络共享服务方法,地图符号库可以由符号化服务端提供或者存在于符号化服务端所在的局域网、广域网或者hternet上。在上述的一种基于DCOM技术的地图符号化网络共享服务方法,所述步骤6中,进行地图符号化时,本地客户端必须将待符号化的要素的几何信息封送到符号化服务端,并且封送到符号化服务端的数据必须转换为COM通用的数据类型。在上述的一种基于DCOM技术的地图符号化网络共享服务方法,所述步骤4中,客户端利用ISymbolDB接口列举出符号库对象SymbolDatabase中的所包含的符号信息包括符号个数、符号库比例尺、符号库制作者、符号库制作时间。因此,本发明具有如下优点基于微软DCOM技术可提供地图符号化网络共享服务,客户端可以自由选择符号化服务端,合理实现网络及符号化服务端负载平衡;符号库服务端可位于符号化服务端,亦可为分布式服务器,客户端亦可自主选择地图符号库。


图1为本发明实施例的系统体系结构示意图; 图2为传统符号化过程示意图3为本发明地图符号化服务机制示意图; 图4为本发明符号化过程中各组件对象之间关系的示意图; 图5为本发明关键步骤示意图。
具体实施例方式下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。实施例
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述。首先介绍一下 DCOM,DCOM (Microsoft Distributed Component Object Model 分布式组件对象模型)是一系列微软的概念和程序接口,利用这个接口,客户端程序对象能够请求来自网络中另一台计算机上的服务器程序对象。DCOM基于组件对象模型(COM),COM提供了一套允许同一台计算机上的客户端和服务器之间进行通信的接口。本发明实施例所运行的系统体系结构,如图1所示,其包含客户端、符号化服务端和地图符号库服务端三部分。客户端是地图符号化网络共享服务的发起者,负责发起服务请求和最终符号化结果的绘制显示;符号化服务端是地图符号化的提供者,负责应答客户端的符号化请求并将符号化后的符号化结果封送回客户端;地图符号库服务端提供符号化共享符号所需求的地图符号。如图2所示,为传统地图符号化的过程,发起符号化请求、应答符号化请求、查询地图符号库都在本机的同一进程内完成。本发明与传统符号化过程的最大区别就是符号化服务发起者、符号化服务应答者可分布在不同机器上的不同进程内。如图3所示,为本发明的地图符号化服务机制。实施例中,以符号化点状要素图层为例,上述基于DCOM的地图符号化网络共享服务方法具体流程如下
1、客户端新建地图并指定所建立的地图的比例尺,然后加载点状要素图层。2、客户端向符号化服务端发出符号化请求,请求符号库对象SymbolDatabaseJ^ 号库对象SymbolDatabase是在符号化服务端创建,而非在本地客户端。3、符号化服务端接收到客户端符号化请求后,首先验证发出访问请求的客户端权限,地图符号库由符号化服务端提供,而非本地客户端提供;而地图符号库可以由符号化服务端提供,也可以存在于符号化服务端所在的局域网、广域网或者hternet上。3. 1、如果客户端权限未通过符号化服务端验证,则向客户端封送拒绝应答信息, 客户端在收到符号化服务端的应答信息后,解封应答信息,如果是来自服务端的拒绝应答信息,则终止向当前符号化服务端发送符号化请求,寻找网络内的其他符号化服务端,重复步骤2。若遍历网络内所有的符号化服务端后,客户端接收到的均为拒绝应答信息,则客户端终止符号化请求,完成整个符号化过程。3. 2、若客户端权限通过符号化服务端验证,则在符号化服务端创建符号库对象 SymbolDatabase,并向客户端返回一个可访问 SymbolDatabase 的接口 ISymolDB。4、客户端在收到来自符号化服务端的ISymolDB接口后,确定待符号化的要素,向符号化服务端封送符号化请求。5、符号化服务端在收到来自客户端封送的符号化请求后,扫描网络内可利用的符号库服务端并向客户端封送可利用的地图符号库信息。6、客户端根据符号化服务端提供的地图符号库信息,指定所需要的地图符号库, 并将所指定的符号库信息封送给符号化服务端,进行地图符号化时,本地客户端必须将待符号化的要素的几何信息封送到符号化服务端,并且封送到符号化服务端的数据必须转换为COM通用的数据类型。7、符号化服务端的SymbolDatabase对象根据客户端提供的地图符号库信息,导入加载相应的符号库。8、客户端利用ISymolDB接口列举出符号化服务端SymbolDatabase对象中所包含的符号信息,包括符号个数、符号库比例尺、符号库制作者、符号库制作时间等。9、客户端根据所指定的待符号化的要素,确立其所要使用的地图符号Symbol,并根据指定的Symbol使用ISymolDB接口在符号化服务端生成地图符号对象Symbol。10、客户端将待符号化要素的定位几何信息通过存根代理程序转换为COM通用的数据类型,并将其封送到符号化服务端。11、符号化服务端将来自于客户端封送的数据,通过服务端的存根代理将其解封, 并将解封后的数据交予位于符号化服务端的符号对象Symbol进行符号化,地图符号化过程由符号化服务端完成符号化,而非在本地客户端完成符号化。12、符号化服务端通过其存根代理将符号化后的结果封送回客户端。13、客户端将收到的符号化结果通过其存根代理进行解封,并转换为客户端可以识别的数据类型。14、重复步骤4至步骤13,完成所有要素的符号化。15、客户端将转换后的所有要素的符号化结果进行绘制显示,完整当前图层的符号化过程。如图4所示,说明了符号化过程中各组件对象之间的关系。如图5所示,简要概括了本发明的关键步骤。在本实施例中,地图符号化服务的参与者分为三部分客户端、符号化服务端和地图符号服务端。1)客户端是符号化服务的调用者,其提出符号化请求并最终获得符号化结果;
2)符号化服务端是符号化服务的提供者,其应答客户端的符号化请求,并最终返回符号化结果;
3)地图符号服务端是提供地图符号库的共享平台,并为符号化服务提供地图符号库数据。
应当注意的是,符号库服务端是提供符号化共享符号所需求的地图符号,是地图符号库所在的服务器。符号库服务端既可以和符号化服务端位于同一台服务器上,也可以是分布式的。本地客户端只负责待符号化数据的提供及最终符号化结果的显示,而符号化过程则由符号化服务端完成。本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
权利要求
1.一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,包括以下步骤 步骤1、客户端新建地图并指定所建立的地图的比例尺,并加载所需的要素图层,同时客户端向符号化服务端发出符号化请求,请求符号库对象SymbolDatabase ;步骤2、符号化服务端收到请求并验证客户端权限通过后,在符号化服务端创建符号库对象SymbolDatabase,并向客户端返回一个可访问符号库对象SymbolDatabase的接口 ISymbolDB ;步骤3、客户端在收到来自符号化服务端的ISymolDB接口后,确定待符号化的要素,向符号化服务端发送符号化请求,符号化服务端在收到来自客户端封送的符号化请求后,扫描网络内可利用的符号化服务端并向客户端封送可利用的地图符号库信息;步骤4、客户端根据符号化服务端提供的地图符号库信息,指定所需要的地图符号库,并将所指定的符号库信息发送给符号化服务端;符号化服务端的符号库对象 SymbolDatabase根据客户端提供的地图符号信息导入相应的地图符号库,客户端利用 ISymbolDB接口列举出符号库对象SymbolDatabase中的所包含的符号信息;步骤5、客户端根据所指定的待符号化的要素及所使用的地图符号Symbol,并根据指定的地图符号使用ISymbolDB接口在符号化服务端生成地图符号对象Symbol ;步骤6、客户端将待符号化的要素的几何信息通过存根代理程序转换为通用的数据类型,并封送传送到服务器端;步骤7、符号化服务端收到客户端封送来的数据后,通过其存根代理将数据进行解封, 并将解封后的数据交予符号化服务端的符号对象Symbol进行符号化;步骤8、符号化服务端通过器存根代理将符号化后的结果封送回客户端,客户端将收到符号化后的结果进行解封,并转换为客户端可以识别的符号化后的结果;步骤9、客户端将完成步骤8转换后的符号化结果进行绘制显示,完成符号化过程。
2.根据权利要求1所述的一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,所述的步骤2中,符号化服务端收到请求后并验证客户端权限,并选择执行以下步骤步骤2. 1、如果客户端权限未通过符号化服务端验证,则向客户端封送拒绝应答信息, 客户端在收到符号化服务端的应答信息后,解封应答信息,如果是来自服务端的拒绝应答信息,则终止向当前符号化服务端发送符号化请求,寻找网络内的其他符号化服务端,重复步骤1 ;若遍历网络内所有的符号化服务端后,客户端接收到的均为拒绝应答信息,则客户端终止符号化请求,完成整个符号化过程;步骤2. 2、若客户端权限通过符号化服务端验证,则在符号化服务端创建符号库对象 SymbolDatabase,并向客户端返回一个可访问 SymbolDatabase 的接口 ISymolDB。
3.根据权利要求1所述的一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,所述步骤2中,客户端收到的符号化服务端封送回的ISymbolDB为操作符号化服务端接口,用以显示符号化服务端的符号库对象SymbolDatabase的有关信息以及操纵符号库对象,包括显示点线面符号、符号个数、符号库比例尺、制作者、制作时间以及进行地图符号化。
4.根据权利要求1所述的一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,地图符号库可以由符号化服务端提供或者存在于符号化服务端所在的局域网、广域网或者Internet上。
5.根据权利要求1所述的一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,所述步骤6中,进行地图符号化时,本地客户端必须将带符号化的要素的几何信息封送到符号化服务端,并且封送到符号化服务端的数据必须转换为COM通用的数据类型。
6.根据权利要求1所述的一种基于DCOM技术的地图符号化网络共享服务方法,其特征在于,所述步骤4中,客户端利用ISymbolDB接口列举出符号库对象SymbolDatabase中的符号信息包括符号个数、符号库比例尺、符号库制作者、符号库制作时间。
全文摘要
本发明涉及一种地图符号化网络共享服务方法,尤其是涉及一种基于DCOM技术的地图符号化网络共享服务方法。主要步骤包括客户端向服务端请求符号库对象;服务端创建符号库对象;服务端导入远程符号库;客户端设置出图比例尺;客户端选择符号并封送待符号化要素至服务端;服务端进行符号化并将符号化结果封送传回客户端;客户端绘制显示符号化结果。本发明提供了一种模型简明,配置效率高,能够在局域网、广域网和Internet上完成地图符号化共享服务,实现地图符号及地图符号化服务共享的计算机地图制图方案。
文档编号H04L29/06GK102254334SQ201110159210
公开日2011年11月23日 申请日期2011年6月15日 优先权日2011年6月15日
发明者于忠海, 朱海红, 李霖, 蒯希, 贺彪, 邱俊武 申请人:武汉大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1