一种webgis兼容系统、方法、装置和存储介质
技术领域
1.本发明涉及webgis,特别涉及一种webgis兼容系统、方法、装置和存储介质。
背景技术:
2.webgis是指基于web的gis技术,是在浏览器中利用http协议与gis服务器交互,并在网页中呈现gis信息的技术。
3.目前webgis二次开发平台非常丰富,各大gis厂商都有自己的webgis二次开发平台,比如esri、supermap等;很多互联网地图厂商也推出了自己的webgis二次开发平台,比如百度、高德等;另外,还有一些开源的webgis二次开发平台,比如openlayers、leaflet、mapbox gl js、cesiumjs等,不同的开发平台支持的地图类型、协议不同,实现的gis功能也不尽相同,比如有的只支持2d,有的支持2d/3d等。
4.面对如此众多的webgis开发平台,业务系统开发商往往面临着艰难选择,因为一方面要面对不同用户的各种业务需求,另一方面又要兼顾不同webgis平台的能力差异,如果原来选用的webgis平台不能满足新项目的需求,就要面临着更换平台的问题。更换webgis平台,对于企业来说,不只是开发人员适应新框架带来的学习成本,还有代码重写、测试等一系列的工作量。
技术实现要素:
5.为解决在现有技术条件下,不同webgis平台之间互相不兼容,导致需要进行代码重写的技术问题,本发明提供一种webgis兼容系统,包括:
6.领域抽象接口,用于接收外部业务系统发送的指定类型的webgis控制指令;
7.抽象封装,用于根据所述领域抽象接口,构建抽象平台封装规则;
8.平台封装,用于根据所述抽象平台封装规则,产生特定平台封装,使用所述特定平台封装产生webgis控制对象,所述webgis控制对象将所述指定类型的webgis控制指令转化为特定webgis平台控制指令;
9.特定webgis平台,用于根据所述特定webgis平台控制指令执行webgis操作。
10.在本技术方案中,通过在各个webgis平台的功能基础上,设置统一的领域抽象接口,用于接收外部业务系统的webgis控制指令,然后通过平台封装,将webgis控制指令转换为可以为特定webgis识别的特定webgis指令,从而实现了不同的webgis平台之间的兼容性,哪怕需要更换平台,也不需要更换原有的webgis指令代码;
11.优选地,所述平台封装为通过所述特定webgis平台来实现所述指定类型的webgis控制指令的类库;所述类库为javascript类库。
12.进一步优选地,所述领域抽象接口为定义了所述指定类型的webgis平台控制指令的接口;
13.所述平台封装继承自所述领域抽象接口。
14.在本进一步优选的技术方案中,通过抽象对象生成器+特定封装的设计模式,可以
简单有效的对不同的目标平台的webgis指令之间进行转换,可维护性强,所需成本较低
15.进一步优选地,所述领域抽象接口用于生成业务webgis对象,所述平台封装根据所述业务webgis对象,生成目标平台webgis对象;
16.所述业务webgis对象具体包括:地图对象,用于呈现目标地图;
17.图层对象,为所述目标地图上呈现的某一类对象,具体包括公园、建筑物中的一种或多种;
18.事件对象,具体包括地图移动事件、鼠标点击事件中的一种或者多种;
19.地理对象,具体包括geometry、feature中的一种或多种;
20.符号对象,为在地图上撒点需要的点图标对象;
21.弹框对象,为当点击符号对象时弹出的信息框对象;
22.样式对象,为所述地图对象的点、线、面要素的渲染样式。
23.优选地,所述特定webgis平台为包括:openlayers平台、mapbox平台中的一种。
24.优选地,所述webgis控制指令包括:放大、缩小、漫游。
25.进一步优选地,所述webgis控制指令还包括:特定标绘指令、特定领域对象指令、特定路径展示指令、特定动画指令。
26.另一方面,提供一种webgis兼容方法,包括:
27.接收外部业务系统发送的指定类型的webgis控制指令;
28.根据所述领域抽象接口,构建抽象平台封装规则;
29.根据所述抽象平台封装规则,产生特定平台封装,使用所述特定平台封装产生webgis控制对象,所述webgis控制对象将所述指定类型的webgis控制指令转化为特定webgis平台控制指令;
30.根据所述特定webgis平台控制指令执行webgis操作。
31.另一方面,提供一种webgis兼容装置,包括存储器和处理器以及存储在所述存储器上的计算机程序;
32.所述计算机程序被配置为由处理器调用时,实现所述的一种webgis兼容方法的步骤。
33.另一方面,提供一种存储介质,其特征在于:所述存储介质中存储有计算机程序,所述计算机程序被配置为由处理器调用时,实现所述的一种webgis兼容方法的步骤。
34.本发明至少包括以下一项技术效果:
35.(1)通过在各个webgis平台的功能基础上,设置统一的领域抽象接口,用于接收外部业务系统的webgis控制指令,然后通过平台封装,将webgis控制指令转换为可以为特定webgis识别的特定webgis指令,从而实现了不同的webgis平台之间的兼容性,哪怕需要更换平台,也不需要更换原有的webgis指令代码;
36.(2)通过抽象对象生成器+特定封装的设计模式,可以简单有效的对不同的目标平台的webgis指令之间进行转换,可维护性强,所需成本较低。
附图说明
37.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本
领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
38.图1为本发明实施例1的结构示意图;
39.图2为本发明实施例1的用户视角实施流程举例说明图;
40.图3为本发明实施例1的程序运行过程说明图;
41.图4为本发明实施例2的流程示意图。
42.领域抽象接口1、平台封装2、特定webgis平台3。
具体实施方式
43.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本技术。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
44.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所述描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其他特征、整体、步骤、操作、元素、组件和/或集合的存在或添加。
45.为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘出了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
46.还应当进一步理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
47.另外,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
48.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
49.实施例1:
50.如图1所示,本实施例提供一种webgis兼容系统,包括:
51.领域抽象接口1,用于接收外部业务系统发送的指定类型的webgis控制指令;;
52.抽象封装,用于根据所述领域抽象接口1,构建抽象平台封装规则;
53.平台封装2,用于根据所述抽象平台封装规则,产生特定平台封装,使用所述特定平台封装产生webgis控制对象,所述webgis控制对象将所述指定类型的webgis控制指令转化为特定webgis平台3控制指令;
54.特定webgis平台3,用于根据所述特定webgis平台3控制指令执行webgis操作。
55.webgis是指基于web的gis技术,是在浏览器中利用http协议与gis服务器交互,并在网页中呈现gis信息的技术。但由于目前各大gis厂商都有自己的webgis二次开发平台,不同的开发平台支持的地图类型、协议不同,实现的gis功能也不尽相同,业务系统开发商
一方面要面对不同用户的各种业务需求,另一方面又要兼顾不同webgis平台的能力差异,如果原来选用的webgis平台不能满足新项目的需求,就要面临着更换平台的问题。而更换webgis平台,对于企业来说,不只是开发人员适应新框架带来的学习成本,还有代码重写、测试等一系列的工作量。
56.领域抽象接口1定义webgis的基本操作以及本行业对webgis的特殊需求。此抽象接口面向业务进行设计,只定义业务需要的功能,并且只定义接口,不定义具体实现。封装是指采用某一种webgis平台来实现业务接口中所定义的功能的一组javascript类库。比如,如图2所示,如果计划采用openlayers实现业务功能,则按照openlayers实现上述webgis领域抽象接口。从依赖关系上,业务系统依赖webgis领域抽象接口,封装依赖webgis领域抽象接口和特定的一种webgis平台。而业务系统不直接依赖某一种webgis平台,从而达到了去耦合的目的。正是因为业务系统不依赖某个具体的webgis平台,才能实现在不改动业务系统代码的情况下,切换不同webgis平台的能力。
57.本实施例通过在各个webgis平台的功能基础上,设置统一的领域抽象接口1,用于接收外部业务系统的webgis控制指令,然后通过平台封装2,将webgis控制指令转换为可以为特定webgis识别的特定webgis指令,从而实现了不同的webgis平台之间的兼容性,哪怕需要更换平台,也不需要更换原有的webgis指令代码。
58.优选地,所述平台封装2为通过所述特定webgis平台3来实现所述指定类型的webgis控制指令的类库;所述类库为javascript类库。所述领域抽象接口1为定义了所述指定类型的webgis平台控制指令的接口;所述平台封装2继承自所述领域抽象接口1。
59.在具体的实现上,领域抽象接口1不仅定义了地图的基本操作,还包括一个抽象对象生成器,抽象对象生成器定义了基本对象的创建接口。封装则包括一个实体对象生成器,实体对象生成器继承了上述抽象对象生成器,负责初始化基本对象。
60.在具体操作上,如图3所示,首先,根据业务系统需求定义webgis领域抽象接口,考虑到每个行业对gis的需求是不同的,除了基本的地图操作之外,还需要考虑本行业的特殊需求,因此这个webgis领域抽象接口是只适用于本行业的,并非适用于所有行业。其次,创建抽象对象生成器,定义好webgis领域抽象接口之后,还需要根据地图所需的各种对象,定义抽象对象生成器,抽象对象生成器是用来创建各种地图对象的对象生成器类,抽象对象生成器只负责定义创建的接口,不做具体实现。再次:创建封装,封装是一组类的集合,采用某一种webgis平台来实现webgis领域抽象接口中所定义的功能。譬如,可以采用了openlayers sdk实现了webgis领域抽象接口。封装中的类需要继承webgis领域抽象接口中的相应接口类,并实现接口类的方法。比如webgis领域抽象接口中定义了imap接口,imap接口定义了zoomin()方法,则openlayers封装中需要定义olmap继承imap,并且实现其中的zoomin()方法。最后,创建实体对象生成器,针对webgis领域抽象接口中定义的抽象对象生成器,封装中需要定义一个实体对象生成器来继承抽象对象生成器,并实现其中的方法。业务代码会调用实体对象生成器的方法,创建各类对象。
61.本实施例通过抽象对象生成器+特定封装的设计,可以简单有效的对不同的目标平台的webgis指令之间进行转换,可维护性强,所需成本较低。
62.优选地,所述领域抽象接口1用于生成业务webgis对象,所述平台封装2根据所述业务webgis对象,生成目标平台webgis对象;
63.所述业务webgis对象具体包括:地图对象,用于呈现目标地图;
64.图层对象,为所述目标地图上呈现的某一类对象,具体包括公园、建筑物中的一种或多种;
65.事件对象,具体包括地图移动事件、鼠标点击事件中的一种或者多种;
66.地理对象,具体包括geometry、feature中的一种或多种;
67.符号对象,为在地图上撒点需要的点图标对象;
68.弹框对象,为当点击符号对象时弹出的信息框对象;
69.样式对象,为所述地图对象的点、线、面要素的渲染样式。
70.一般而言,抽象对象生成器需要创建的对象,至少包括以下几种类型:地图对象,创建时需要指定div、底图配置等;图层对象,是指在地图上呈现的某一类对象,比如公园、建筑物等;事件对象,比如地图移动事件、鼠标点击事件等;地理对象,比如geometry、feature;符号对象(marker),是指在地图上撒点需要的点图标对象;弹框对象(popup),是指当点击marker对象时弹出的信息框对象;样式对象,是指点、线、面要素的渲染样式;以及其他特定的业务对象。
71.优选地,所述特定webgis平台3为包括:openlayers平台、mapbox平台中的一种。同时,也可以根据实际的情况,选用别的平台,譬如leaflet、gl js、cesiumjs等,可根据实际需要进行选择。需要切换到某种webgis平台时,只需要针对定义好的webgis领域抽象接口和具体webgis平台sdk,编写一套封装即可,不需要改动业务代码。
72.优选地,所述webgis控制指令包括:放大、缩小、漫游。所述webgis控制指令还包括:特定标绘指令、特定领域对象指令、特定路径展示指令、特定动画指令。
73.考虑到每个行业对gis的需求是不同的,除了基本的地图操作之外,还需要考虑本行业的特殊需求,因此这个webgis领域抽象接口是只适用于本行业的,并非适用于所有行业。基本地图操作包括放大、缩小、漫游等常规地图操作;行业特殊需求包括特定的标绘功能、领域对象、路径展示需求、动画以及各类专题图功能等。
74.具体而言,抽象平台对象生成器接口包括但不限于creategeometry(type:string,coordinates);createmap(options);createfeature(options);createmarker(options);createpopup(options);
75.createstyle(type:string,options);getmaptype(string);
76.webgis领域抽象接口包括但不限于setresolution(resolution:number);getresolution();setcenter(lonlat);getcenter();setzoom(zoom:number);getzoom():number;panto(lonlat);setextent();getextent();addoverlay(overlay);removeoverlay(overlay);addlayer(layer);removelayer(layer);getoverlaybyid(id:string);getsize();removelayerbyid(layerid);getlayerbyid(layerid);
77.实施例2:
78.本实施例提供一种webgis兼容方法,如图4所示,包括:
79.s1:接收外部业务系统发送的指定类型的webgis控制指令;
80.s2:根据所述领域抽象接口1,构建抽象平台封装规则;
81.s3:根据所述抽象平台封装规则,产生特定平台封装,使用所述特定平台封装产生webgis控制对象,所述webgis控制对象将所述指定类型的webgis控制指令转化为特定
webgis平台3控制指令;
82.s4:根据所述特定webgis平台3控制指令执行webgis操作。
83.webgis是指基于web的gis技术,是在浏览器中利用http协议与gis服务器交互,并在网页中呈现gis信息的技术。但由于目前各大gis厂商都有自己的webgis二次开发平台,不同的开发平台支持的地图类型、协议不同,实现的gis功能也不尽相同,业务系统开发商一方面要面对不同用户的各种业务需求,另一方面又要兼顾不同webgis平台的能力差异,如果原来选用的webgis平台不能满足新项目的需求,就要面临着更换平台的问题。而更换webgis平台,对于企业来说,不只是开发人员适应新框架带来的学习成本,还有代码重写、测试等一系列的工作量。
84.领域抽象接口1定义webgis的基本操作以及本行业对webgis的特殊需求。此抽象接口面向业务进行设计,只定义业务需要的功能,并且只定义接口,不定义具体实现。封装是指采用某一种webgis平台来实现业务接口中所定义的功能的一组javascript类库。比如,如果计划采用openlayers实现业务功能,则按照openlayers实现上述webgis领域抽象接口。从依赖关系上,业务系统依赖webgis领域抽象接口,封装依赖webgis领域抽象接口和特定的一种webgis平台。而业务系统不直接依赖某一种webgis平台,从而达到了去耦合的目的。正是因为业务系统不依赖某个具体的webgis平台,才能实现在不改动业务系统代码的情况下,切换不同webgis平台的能力。
85.本实施例通过在各个webgis平台的功能基础上,设置统一的领域抽象接口1,用于接收外部业务系统的webgis控制指令,然后通过平台封装2,将webgis控制指令转换为可以为特定webgis识别的特定webgis指令,从而实现了不同的webgis平台之间的兼容性,哪怕需要更换平台,也不需要更换原有的webgis指令代码。
86.在具体的运行过程中,譬如要将使用原有的mapbox代码改用到openlayers上,那么在具体的运行过程中,首先在具体的对象创建之前,选用mapbox到openlayers的切换点,然后根据用户的操作,比如现在用户拖动了地图,则调用领域抽象接口所提供的pan()函数接口,然后由领域抽象接口的pan()函数接口,调用对应的openlayers的实现拖动动作的函数,由该函数完成实际的拖动操作。
87.实施例3:
88.本实施例提供一种webgis兼容装置,包括存储器和处理器以及存储在所述存储器上的计算机程序;
89.所述计算机程序被配置为由处理器调用时,实现实施例2所述的一种webgis兼容方法的步骤。
90.实施例4:
91.本实施例提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被配置为由处理器调用时,实现实施例2所述的一种webgis兼容方法的步骤。
92.所述设备可以为桌上型计算机、笔记本、掌上电脑、平板型计算机、手机、人机交互屏等设备。所述设备可包括,但不仅限于处理器、存储器。本领域技术人员可以理解,仅仅是设备的示例,并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,示例性的:设备还可以包括输入/输出接口、显示设备、网络接入设备、通信总线、通信接口等。通信接口和通信总线,还可以包括输入/输出接口,其中,处理器、存
储器、输入/输出接口和通信接口通过通信总线完成相互间的通信。该存储器存储有计算机程序,该处理器用于执行存储器上所存放的计算机程序,实现上述实施例中的方法。
93.所述处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
94.所述存储器可以是所述设备的内部存储单元,示例性的:设备的硬盘或内存。所述存储器也可以是所述设备的外部存储设备,示例性的:所述设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器还可以既包括所述设备的内部存储单元也包括外部存储设备。所述存储器用于存储所述计算机程序以及所述设备所需要的其他程序和数据。所述存储器还可以用于暂时地存储已经输出或者将要输出的数据。
95.通信总线是连接所描述的元素的电路并且在这些元素之间实现传输。示例性的,处理器通过通信总线从其它元素接收到命令,解密接收到的命令,根据解密的命令执行计算或数据处理。存储器可以包括程序模块,示例性的,内核(kernel),中间件(middleware),应用程序编程接口(application programming interface,api)和应用。该程序模块可以是有软件、固件或硬件、或其中的至少两种组成。输入/输出接口转发用户通过输入/输出接口(示例性的,感应器、键盘、触摸屏)输入的命令或数据。通信接口将该设备与其它网络设备、用户设备、网络进行连接。示例性的,通信接口可以通过有线或无线连接到网络以连接到外部其它的网络设备或用户设备。无线通信可以包括以下至少一种:无线保真(
wi
fi),蓝牙(bt),近距离无线通信技术(nfc),全球卫星定位系统(gps)和蜂窝通信等等。有线通信可以包括以下至少一种:通用串行总线(usb),高清晰度多媒体接口(hdmi),异步传输标准接口(rs-232)等等。网络可以是电信网络和通信网络。通信网络可以为计算机网络、因特网、物联网、电话网络。设备可以通过通信接口连接网络,设备和其它网络设备通信所用的协议可以被应用、应用程序编程接口(api)、中间件、内核和通信接口至少一个支持。
96.在本技术所提供的实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其他的方式实现。示例性的,以上所描述的装置/设备实施例仅仅是示意性的,示例性的,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,示例性的,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性、机械或其他的形式。
97.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
98.另外,在本技术各个实施例中的各功能单元可能集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单
元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
99.所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序发送指令给相关的硬件完成,所述的计算机程序可存储于一介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述介质可以包括:能够携带所述计算机程序的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,示例性的:在某些司法管辖区,根据立法和专利实践,计算机可读的介质不包括电载波信号和电信信号。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的程序模块完成,即将所述装置的内部结构划分成不同的程序单元或模块,以完成以上描述的全部或者部分功能。实施例中的各程序模块可以集成在一个处理单元中,也可是各个单元单独物理存在,也可以两个或两个以上单元集成在一个处理单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序单元的形式实现。另外,各程序模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
100.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
101.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
技术特征:
1.一种webgis兼容系统,其特征在于,包括:领域抽象接口,用于接收外部业务系统发送的指定类型的webgis控制指令;抽象封装,用于根据所述领域抽象接口,构建抽象平台封装规则;平台封装,用于根据所述抽象平台封装规则,产生特定平台封装,使用所述特定平台封装产生webgis控制对象,所述webgis控制对象将所述指定类型的webgis控制指令转化为特定webgis平台控制指令;特定webgis平台,用于根据所述特定webgis平台控制指令执行webgis操作。2.根据权利要求1所述的一种webgis兼容系统,其特征在于,所述平台封装为通过所述特定webgis平台来实现所述指定类型的webgis控制指令的类库;所述类库为javascript类库。3.根据权利要求2所述的一种webgis兼容系统,其特征在于,所述领域抽象接口为定义了所述指定类型的webgis平台控制指令的接口;所述平台封装继承自所述领域抽象接口。4.根据权利要求3所述的一种webgis兼容系统,其特征在于,所述领域抽象接口用于生成业务webgis对象,所述平台封装根据所述业务webgis对象,生成目标平台webgis对象;所述业务webgis对象具体包括:地图对象,用于呈现目标地图;图层对象,为所述目标地图上呈现的某一类对象,具体包括公园、建筑物中的一种或多种;事件对象,具体包括地图移动事件、鼠标点击事件中的一种或者多种;地理对象,具体包括geometry、feature中的一种或多种;符号对象,为在地图上撒点需要的点图标对象;弹框对象,为当点击符号对象时弹出的信息框对象;样式对象,为所述地图对象的点、线、面要素的渲染样式。5.根据权利要求1所述的一种webgis兼容系统,其特征在于,所述特定webgis平台为包括:openlayers平台、mapbox平台中的一种。6.根据权利要求1所述的一种webgis兼容系统,其特征在于,所述webgis控制指令包括:放大、缩小、漫游等常规操作。7.根据权利要求6所述的一种webgis兼容系统,其特征在于,所述webgis控制指令还包括:特定标绘指令、特定领域对象指令、特定路径展示指令、特定动画指令。8.一种webgis兼容方法,其特征在于,包括:接收外部业务系统发送的指定类型的webgis控制指令;根据领域抽象接口,构建抽象平台封装规则;根据所述抽象平台封装规则,产生特定平台封装,使用所述特定平台封装产生webgis控制对象,所述webgis控制对象将所述指定类型的webgis控制指令转化为特定webgis平台控制指令;根据所述特定webgis平台控制指令执行webgis操作。9.一种webgis兼容装置,其特征在于:包括存储器和处理器以及存储在所述存储器上的计算机程序;
所述计算机程序被配置为由处理器调用时,实现权利要求8所述的一种webgis兼容方法的步骤。10.一种存储介质,其特征在于:所述存储介质中存储有计算机程序,所述计算机程序被配置为由处理器调用时,实现权利要求8所述的一种webgis兼容方法的步骤。
技术总结
本发明公开了一种WEBGIS兼容系统,包括:领域抽象接口,用于接收外部业务系统发送的指定类型的WEBGIS控制指令;平台封装,用于根据抽象平台封装规则,产生特定平台封装,使用特定平台封装产生WEBGIS控制对象,WEBGIS控制对象将指定类型的WEBGIS控制指令转化为特定WEBGIS平台控制指令;特定WEBGIS平台,用于根据特定WEBGIS平台控制指令执行WEBGIS操作。本发明,通过设置统一的领域抽象接口接收外部业务系统的WEBGIS控制指令,通过平台封装,实现了不同的WEBGIS平台之间的兼容性,哪怕需要更换平台,也不需要更换原有的WEBGIS指令代码。也不需要更换原有的WEBGIS指令代码。也不需要更换原有的WEBGIS指令代码。
技术研发人员:林永生 周赵云 宋平超 田占海 杨诚 钟波 梁学忠 郝欢 褚红升 宋志豹 邱祥平 雷霆 杜渂 彭明喜 何之栋
受保护的技术使用者:迪爱斯信息技术股份有限公司
技术研发日:2021.12.08
技术公布日:2022/3/8