CN103973816A - 显示同步的方法、服务器以及客户端 - Google Patents
显示同步的方法、服务器以及客户端 Download PDFInfo
- Publication number
- CN103973816A CN103973816A CN201410228138.7A CN201410228138A CN103973816A CN 103973816 A CN103973816 A CN 103973816A CN 201410228138 A CN201410228138 A CN 201410228138A CN 103973816 A CN103973816 A CN 103973816A
- Authority
- CN
- China
- Prior art keywords
- real time
- service object
- data
- client
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
本发明实施例公开了显示同步的方法、服务器以及客户端,用于保证多个客户端的同步显示,本发明实施例方法包括:服务器先缓存三维GIS实时渲染列表中各服务对象,然后获取第一客户端的实时数据,按照该实时数据检索缓存的服务对象,得到实时服务对象,按照该实时数据对实时服务对象进行相应处理,得到实时服务对象的同步数据,发送同步消息给第二客户端,使得第二客户端读取实时服务对象的同步数据,按照实时服务对象的同步数据对该实时服务对象进行同步显示。
Description
技术领域
本发明涉及显示领域,尤其涉及显示同步的方法、服务器以及客户端。
背景技术
随着地理信息系统(Geographic Information System或Geo-Informationsystem,GIS)应用的深入,人们越来越多地要求从真三维空间来处理问题。在应用要求较为强烈的部门如采矿、地质、石油等领域已率先发展专用的具有部分同步显示功能的三维GIS。
目前,基于三维GIS同步方法是根据客户端的操作频率发送同步指令,一个客户端每操作一次,就向其它各客户端发送一次同步指令,进行多端显示同步。
但是,在实际应用中,当操作的频率太高时,发送同步指令太快,会引起网络的阻塞,从而导致显示不同步,尤其是当多个客户端同时进行控制时,各客户端发送同步指令的目标不一致,由于网络延时或客户端处理速度的差异,可能会使得一个客户端进行了同步而另外的客户端没有进行同步,而在多端未同步状态下再将各自进行的操作发出同步指令,就可能会更进一步的引起同步混乱,导致多端显示不同步。
发明内容
本发明实施例提供了显示同步的方法、服务器以及客户端,用于保证多个客户端的同步显示。
本发明实施例第一方面提供了一种显示同步的方法,包括:
服务器缓存三维地理信息系统GIS实时渲染列表中各服务对象;
所述服务器获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
所述服务器按照所述实时数据检索缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
所述服务器根据所述实时数据对所述实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
所述服务器发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示。
结合本发明实施例的第一方面,本发明实施例第一方面的第一种实现方式中,当所述实时数据为操作相关数据时,
所述服务器根据所述实时数据对所述实时服务对象进行相应处理包括:
所述服务器按照所述操作相关数据更改所述实时服务对象。
结合本发明实施例的第一方面,本发明实施例第一方面的第二种实现方式中,当所述实时数据为实时采集的数据时,
所述服务器按照所述实时数据检索缓存的服务对象的步骤之前还包括:
所述服务器按照预置方案对所述实时采集的数据进行专题渲染,保存渲染材料数据,所述渲染材料数据用于表示进行所述专题渲染所需要的数据;
所述服务器根据所述实时数据对所述实时服务对象进行相应处理,得到所述实时服务对象的同步数据具体包括:
所述服务器创建所述实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述渲染材料数据。
结合本发明实施例的第一方面,本发明实施例第一方面的第三种实现方式中,当所述实时数据为实时的视频流数据时,
所述服务器按照所述实时数据检索缓存的服务对象的步骤之前还包括:
所述服务器缓存所述视频流数据;
所述服务器根据所述实时数据对所述实时服务对象进行相应处理,得到所述实时服务对象的同步数据具体包括:
所述服务器创建所述实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述视频流数据。
本发明实施例第二方面提供了一种显示同步的方法,包括:
客户端发送实时数据到服务器;
当所述客户端接收到所述服务器发送的同步消息时,所述客户端读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
所述客户端按照所述同步数据对所述实时服务对象进行同步显示。
结合本发明实施例的第二方面,本发明实施例第二方面的第一种实现方式中,当所述实时数据为操作相关数据时,
所述客户端发送实时数据到服务器包括:
当所述客户端对三维场景中服务对象进行操作时,发送操作相关数据到所述服务器;
所述客户端按照所述同步数据对所述实时服务对象进行同步显示包括:
所述客户端解析所述同步数据,得到所述实时服务对象的操作相关数据;
所述客户端按照所述操作相关数据对所述实时服务对象同步更新操作结果。
结合本发明实施例的第二方面,本发明实施例第二方面的第二种实现方式中,当所述实时数据为实时采集的数据时,
所述客户端发送实时数据到服务器包括:
当所述客户端实时采集数据时,发送实时采集的数据到所述服务器;
所述客户端按照所述同步数据对所述实时服务对象进行同步显示包括:
所述客户端解析所述同步数据中的实时服务对象;
所述客户端加载所述同步数据中的渲染材料数据,所述渲染材料数据用于表示进行专题渲染所需要的数据;
所述客户端使用所述渲染材料数据对所述实时服务对象进行渲染更新。
结合本发明实施例的第二方面,本发明实施例第二方面的第三种实现方式中,当所述实时数据为实时的视频流时,所述客户端按照所述同步数据对所述实时服务对象进行同步显示包括:
所述客户端解析所述同步数据中的实时服务对象;
所述客户端读取所述同步数据中的视频流数据;
所述客户端在三维场景中所述实时服务对象相应的位置弹出视频窗口,将所述视频流数据进行解码并在所述视频窗口中显示。
本发明实施例第三方面提供了一种服务器,包括:
对象缓存模块,用于缓存三维地理信息系统GIS实时渲染列表中各服务对象;
获取模块,用于获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
检索模块,用于按照所述获取模块获取的实时数据检索所述对象缓存模块缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
处理模块,用于根据所述获取模块获取的实时数据对所述检索模块检索出的实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
消息发送模块,用于发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述处理模块得到的实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示。
结合本发明实施例的第三方面,本发明实施例第三方面的第一种实现方式中,所述当所述实时数据为操作相关数据时,所述处理模块具体用于,按照所述获取模块获取的操作相关数据更改所述检索模块检索出的实时服务对象,得到所述实时服务对象的同步数据。
结合本发明实施例的第三方面,本发明实施例第三方面的第二种实现方式中,当所述实时数据为实时采集的数据时,所述服务器还包括:
渲染保存模块,用于按照预置方案对所述实时采集的数据进行专题渲染,保存渲染材料数据,所述渲染材料数据用于表示进行所述专题渲染所需要的数据;
所述处理模块具体用于,创建所述检索模块检索出的实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述渲染保存模块保存的渲染材料数据。
结合本发明实施例的第三方面,本发明实施例第三方面的第三种实现方式中,当所述实时数据为实时的视频流数据时,所述服务器还包括:
数据缓存模块,用于缓存所述视频流数据;
所述处理模块具体用于,创建所述检索模块检索出的实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述数据缓存模块缓存的视频流数据。
本发明实施例第四方面提供了一种客户端,包括:
数据发送模块,用于发送实时数据到服务器;
同步读取模块,用于当接收到所述服务器发送的同步消息时,读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
同步显示模块,用于按照所述同步读取模块读取的同步数据对所述实时服务对象进行同步显示。
结合本发明实施例的第四方面,本发明实施例第四方面的第一种实现方式中,当所述实时数据为操作相关数据时,所述数据发送模块具体用于,当对三维场景中服务对象进行操作时,发送操作相关数据到所述服务器;
所述同步显示模块具体包括:
操作解析单元,用于解析所述同步读取模块读取的同步数据,得到所述实时服务对象的操作相关数据;
操作更新单元,用于按照所述操作解析单元解析出的操作相关数据对所述实时服务对象同步更新操作结果。
结合本发明实施例的第四方面,本发明实施例第四方面的第二种实现方式中,当所述实时数据为实时采集的数据时,所述数据发送模块具体用于,当实时采集数据时,发送实时采集的数据到所述服务器;
所述同步显示模块具体包括:
第一对象解析单元,用于解析所述同步读取模块读取的同步数据中的实时服务对象;
加载单元,用于加载所述同步读取模块读取的同步数据中的渲染材料数据,所述渲染材料数据用于表示进行专题渲染所需要的数据;
渲染更新单元,用于使用所述加载单元加载的渲染材料数据对所述第一对象解析单元解析出的实时服务对象进行渲染更新。
结合本发明实施例的第四方面,本发明实施例第四方面的第三种实现方式中,当所述实时数据为实时的视频流时,所述同步显示模块具体包括:
第二对象解析单元,用于解析所述同步读取模块读取的同步数据中的实时服务对象;
数据读取单元,用于读取所述同步读取模块读取的同步数据中的视频流数据;
视频显示单元,用于在三维场景中所述第二对象解析单元解析出的实时服务对象相应的位置弹出视频窗口,将所述数据读取单元读取的视频流数据进行解码并在所述视频窗口中显示。
从以上技术方案可以看出,本发明实施例具有以下优点:本发明实施例中服务器先缓存三维GIS实时渲染列表中各服务对象,然后获取第一客户端的实时数据,按照该实时数据检索缓存的服务对象,得到实时服务对象,按照该实时数据对实时服务对象进行相应处理,得到实时服务对象的同步数据,发送同步消息给第二客户端,使得第二客户端读取实时服务对象的同步数据,按照实时服务对象的同步数据对该实时服务对象进行同步显示,这样各客户端先将数据发送给服务器,再由服务器统一处理后,以服务对象为单位触发各客户端的同步,避免了过多的同步指令导致网络堵塞而不同步的问题,且以服务器为中心触发同步,避免了多个客户端之间的数据传输,直接读取同一同步数据,保证了多端的同步显示。
附图说明
图1为本发明实施例中显示同步的方法一个流程示意图;
图2为本发明实施例中显示同步的方法另一个流程示意图;
图3为本发明实施例中显示同步的方法另一个流程示意图;
图4为本发明实施例中显示同步的方法另一个流程示意图;
图5为本发明实施例中显示同步的方法另一个流程示意图;
图6为本发明实施例中显示同步的方法另一个流程示意图;
图7为本发明实施例中显示同步的方法另一个流程示意图;
图8为本发明实施例中显示同步的方法另一个流程示意图;
图9为本发明实施例中服务器一个结构示意图;
图10为本发明实施例中客户端一个结构示意图;
图11为本发明实施例中客户端另一个结构示意图;
图12为本发明实施例中服务器另一个结构示意图;
图13为本发明实施例中客户端另一个结构示意图;
图14为本发明实施例中服务器另一个结构示意图;
图15为本发明实施例中客户端另一个结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,尽管在本发明实施例中可能采用术语第一、第二等来描述各个客户端,但客户端不应限于这些术语。这些术语仅用来将客户端彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一客户端也可以被称为第二客户端,类似地,第二客户端也可以被称为第一客户端;同样的,第二客户端也可以被称为第三客户端等等,本发明实施例对此不做限定。
下面分别从服务器与客户端两个执行主体的角度对本发明实施例中显示同步的方法进行描述:
一、服务器的操作:
请参阅图1,本发明实施例中显示同步的方法一个实施例包括:
101、服务器缓存三维GIS实时渲染列表中各服务对象;
当需要对三维GIS进行同步显示时,服务器缓存三维GIS实时渲染列表中各服务对象。
可以理解的是,服务器还可以缓存实时渲染列表中其它在后续处理过程中需要用到的数据,进一步的,服务器也可以缓存三维GIS实时渲染列表的所有数据,此处不做限定。
102、服务器获取第一客户端的实时数据;
服务器缓存三维GIS实时渲染列表中各服务对象后,获取第一客户端的实时数据,该第一客户端为与服务器连接的客户端,该实时数据用于表示客户端中实时变化的数据,例如修改的数据或新增的数据或删除数据等,此处不作限定。
103、服务器按照该实时数据检索缓存的服务对象,得到实时服务对象;
服务器获取到第一客户端的实时数据后,按照该实时数据检索缓存的服务对象,得到实时服务对象,该实时服务对象为该实时数据在服务器缓存的各服务对象中对应的服务对象。
可以理解的是,服务器按照实时数据检索缓存的服务对象的方式有很多,例如可以先按照实时数据查找预置对象映射表,得到该实时数据对应的服务对象的对象标识,然后再按照该对象标识检索缓存的服务对象,得到实时服务对象,也可以直接按照该实时数据进行检索,此处不作限定。
104、服务器根据该实时数据对实时服务对象进行相应处理,得到实时服务对象的同步数据;
服务器检索到实时服务对象后,按照该实时数据对实施服务对象进行相应处理,得到实时服务对象的同步数据。
105、服务器发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据。
服务器得到实时服务对象的同步数据后,发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据,按照该实时服务对象的同步数据对该实时服务对象进行同步显示,该第二客户端为与服务器连接的与第一客户端不同的其他客户端。
可以理解的是,发送同步消息给第二客户端之前,可以先检索记录有与服务器相连的客户端的连接会话列表,得到当前与服务器相连的第二客户端,然后服务器再通过会话发送同步消息给该第二客户端,服务器也可以直接读取当前与服务器相连的客户端,得到第二客户端,还可以通过其他方式发送同步消息给第二客户端,此处不作限定。
需要说明的是,第一客户端,第二客户端仅为了将客户端彼此区分开,若当前与服务器连接的客户端中有一个产生了实时数据,则可以认为这个客户端为第一客户端,那么其他的与该服务器连接的客户端均可以认为是第二客户端,进一步的,若当前有多个客户端同时产生了实时数据,可以将这多个客户端分别作为第一客户端进行处理。
本发明实施例中服务器先缓存三维GIS实时渲染列表中各服务对象,然后获取第一客户端的实时数据,按照该实时数据检索缓存的服务对象,得到实时服务对象,按照该实时数据对实时服务对象进行相应处理,得到实时服务对象的同步数据,发送同步消息给第二客户端,使得第二客户端读取实时服务对象的同步数据,按照实时服务对象的同步数据对该实时服务对象进行同步显示,这样各客户端先将数据发送给服务器,再由服务器统一处理后,以服务对象为单位触发各客户端的同步,避免了过多的同步指令导致网络堵塞而不同步的问题,且以服务器为中心触发同步,避免了多个客户端之间的数据传输,直接读取同一同步数据,保证了多端的同步显示。
二、客户端的操作:
请参阅图2,本发明实施例中显示同步的方法另一个实施例包括:
201、客户端发送实时数据到服务器;
当客户端中产生实时数据时,客户端发送实时数据到服务器,该实时数据用于表示客户端中实时变化的数据,例如修改的数据或新增的数据或删除的数据等,此处不作限定。
202、当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据;
当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据,该实时服务对象为与该服务器连接的其他客户端的实时数据对应的服务对象。
203、客户端按照该同步数据对该实时服务对象进行同步显示。
客户端读取到实时服务对象的同步数据后,按照该同步数据对该实时服务对象进行同步显示。
本发明实施例中,客户端发送实时数据到服务器,读取服务器中其他客户端的实时数据对应的服务对象的同步数据,按照该同步数据对该服务对象进行同步显示,这样避免了接收过多其他客户端发送的同步指令导致同步混乱的问题,只需要以服务对象为单位从服务器中读取同步数据进行同步显示,减少了数据传输的数据量,避免了因同步指令过多导致网络堵塞而不同步的问题。
上面实施例中,服务器根据实时数据对实时服务对象进行相应处理,在实际应用中,实时数据可以为多种,服务器可以根据不同的实时数据对实时服务对象进行不同的处理,下面以其中三种为例,分别从两个执行主体的角度对本发明实施例中显示同步的方法进行描述。
1、当实时数据为操作相关数据时。
一、服务器的操作:
请参阅图3,本发明实施例中显示同步的方法另一个实施例包括:
301、服务器缓存三维GIS实时渲染列表中各服务对象;
当需要对三维GIS进行同步显示时,服务器缓存三维GIS实时渲染列表中各服务对象。
可以理解的是,服务器还可以缓存实时渲染列表中其它在后续处理过程中需要用到的数据,进一步的,服务器也可以缓存三维GIS实时渲染列表的所有数据,此处不做限定。
302、服务器获取第一客户端的操作相关数据;
服务器缓存三维GIS实时渲染列表中各服务对象后,当第一客户端对三维场景中的服务对象进行操作后,服务器获取第一客户端的操作相关数据,该第一客户端为与服务器连接的客户端,该操作相关数据包括对三维场景进行操作的数据。
其中,该操作具体可以为增加,修改,删除或属性修改等,此处不作限定。
303、服务器按照该操作相关数据检索缓存的服务对象,得到实时服务对象;
服务器获取到第一客户端的操作相关数据后,按照该操作相关数据检索缓存的服务对象,得到实时服务对象,该实时服务对象为该操作相关数据在服务器缓存的各服务对象中对应的服务对象。
可以理解的是,服务器按照操作相关数据检索缓存的服务对象的方式有很多,例如可以先按照操作相关数据查找预置对象映射表,得到该操作相关数据对应的服务对象的对象标识,然后再按照该对象标识检索缓存的服务对象,得到实时服务对象,也可以直接读取该操作相关数据所操作的服务对象,此处不作限定。
304、服务器根据该操作相关数据更改所述实时服务对象,得到实时服务对象的同步数据;
服务器检索到实时服务对象后,按照该操作相关数据更改所述实时服务对象,得到实时服务对象的同步数据。
可以理解的是,该实时服务对象的同步数据即为按照该操作相关数据更改后的实时服务对象。
305、服务器发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据。
服务器得到实时服务对象的同步数据后,发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据,按照该实时服务对象的同步数据对该实时服务对象进行同步显示,该第二客户端为与服务器连接的与第一客户端不同的其他客户端。
可以理解的是,发送同步消息给第二客户端之前,可以先检索记录有与服务器相连的客户端的连接会话列表,得到当前与服务器相连的第二客户端,然后服务器再通过会话发送同步消息给该第二客户端,服务器也可以直接读取当前与服务器相连的客户端,得到第二客户端,还可以通过其他方式发送同步消息给第二客户端,此处不作限定。
需要说明的是,第一客户端,第二客户端仅为了将客户端彼此区分开,若当前与服务器连接的客户端中有一个产生了实时数据,则可以认为这个客户端为第一客户端,那么其他的与该服务器连接的客户端均可以认为是第二客户端,进一步的,若当前有多个客户端同时产生了实时数据,可以将这多个客户端分别作为第一客户端进行处理。
本发明实施例中,当实时数据为操作相关数据时,服务器可以按照该操作相关数据更改实时服务对象,然后再发送同步消息使得第二客户端对更改后的实时服务对象进行同步,这样使得一个客户端只需要将实时操作数据发送给服务器,便可以将操作后的服务对象同步显示到所有其他的客户端上,保证了多客户端的同步显示。
二、客户端的操作:
请参阅图4,本发明实施例中显示同步的方法另一个实施例包括:
401、当客户端对三维场景中服务对象进行操作时,客户端发送操作相关数据到服务器;
当客户端中产生实时数据时,客户端发送实时数据到服务器,该实时数据用于表示客户端中实时变化的数据,例如修改的数据或新增的数据或删除的数据等,此处不作限定。
402、当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据;
当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据,该实时服务对象为与该服务器连接的其他客户端的实时数据对应的服务对象。
403、客户端解析该同步数据,得到实时服务对象的操作相关数据;
客户端读取到实时服务对象的同步数据后,解析该同步数据,得到实时服务对象的操作相关数据。
404、客户端按照该操作相关数据对实时服务对象同步更新操作结果。
客户端得到实时服务对象的操作相关数据后,按照该操作相关数据对实时服务对象同步更新操作结果,使得客户端对该实时服务对象与其他客户端进行同步显示。
本发明实施例中,当实时数据为操作相关数据时,客户端读取同步数据后,解析该同步数据,得到实时服务对象的操作相关数据,再按照该操作相关数据对实时服务对象同步更新操作结果,保证了对实时服务对象与其他客户端的同步显示。
为便于理解,结合图2所示服务器的操作与图3所示客户端的操作,下面以一具体应用场景对本发明实施例中显示同步的方法进行具体描述:
服务器缓存所有三维GIS实时渲染列表的数据;
服务器生成渲染列表数据对应的关联数据;
当任一个客户端对三维场景数据进行增加,修改,删除或属性修改时,服务器通过预先建立的保存有操作与缓存服务的关联关系的对象映射表,找出客户端操作的服务对象对应的对象标识;
服务器通过对象标识,检索缓存的服务对象;
服务器按照客户端的操作更改服务器缓存的服务对象的数据;
服务器定位对象数据修改相关的事件;
服务器检索连接会话列表,得到与服务器相连的其他客户端;
服务器通过会话发送事件消息通知其他客户端,使得事件消息触发其他客户端读取缓存的服务对象;
其他客户端解析缓存的服务器对象,得到操作相关数据;
其他客户端按照该操作相关数据同步更新操作结果。
2、当实时数据为实时采集的数据时。
一、服务器的操作:
请参阅图5,本发明实施例中显示同步的方法另一个实施例包括:
501、服务器缓存三维GIS实时渲染列表中各服务对象;
当需要对三维GIS进行同步显示时,服务器缓存三维GIS实时渲染列表中各服务对象。
可以理解的是,服务器还可以缓存实时渲染列表中其它在后续处理过程中需要用到的数据,进一步的,服务器也可以缓存三维GIS实时渲染列表的所有数据,此处不做限定。
502、服务器获取第一客户端实时采集的数据;
服务器缓存三维GIS实时渲染列表中各服务对象后,获取第一客户端实时采集的数据,该第一客户端为与服务器连接的客户端。
503、服务器按照预置方案对该实时采集的数据进行专题渲染,保存渲染材料数据;
服务器获取到第一客户端实时采集的数据后,按照预置方案对该实时采集的数据进行专题渲染,保存渲染材料数据,该渲染材料数据用于表示进行专题渲染所需要的数据。
504、服务器按照该实时采集的数据检索缓存的服务对象,得到实时服务对象;
服务器获取到第一客户端实时采集的数据后,按照该实时采集的数据检索缓存的服务对象,得到实时服务对象,该实时服务对象为该实时采集的数据在服务器缓存的各服务对象中对应的服务对象。
可以理解的是,服务器按照实时采集的数据检索缓存的服务对象的方式有很多,例如可以先按照实时采集的数据查找预置对象映射表,得到该实时采集的数据对应的服务对象的对象标识,然后再按照该对象标识检索缓存的服务对象,得到实时服务对象,也可以直接按照该实时采集的数据进行检索,此处不作限定。
505、服务器创建该实时服务对象的数据列表,作为该实时服务对象的同步数据,该实时服务对象的数据列表中包括实时服务对象与渲染材料数据;
服务器保存渲染材料数据并检索到实时服务对象后,创建该实时服务对象的数据列表,作为该实时服务对象的同步数据,该实时服务对象的数据列表中包括实时服务对象与渲染材料数据。
506、服务器发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据。
服务器得到实时服务对象的同步数据后,发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据,按照该实时服务对象的同步数据对该实时服务对象进行同步显示,该第二客户端为与服务器连接的与第一客户端不同的其他客户端。
可以理解的是,发送同步消息给第二客户端之前,可以先检索记录有与服务器相连的客户端的连接会话列表,得到当前与服务器相连的第二客户端,然后服务器再通过会话发送同步消息给该第二客户端,服务器也可以直接读取当前与服务器相连的客户端,得到第二客户端,还可以通过其他方式发送同步消息给第二客户端,此处不作限定。
需要说明的是,第一客户端,第二客户端仅为了将客户端彼此区分开,若当前与服务器连接的客户端中有一个产生了实时数据,则可以认为这个客户端为第一客户端,那么其他的与该服务器连接的客户端均可以认为是第二客户端,进一步的,若当前有多个客户端同时产生了实时数据,可以将这多个客户端分别作为第一客户端进行处理。
本发明实施例中,当实时数据为实时采集的数据时,服务器按照预置规则对该实时采集的数据进行渲染,并保存渲染材料数据,检索到实时服务对象后,将该渲染材料数据与实时服务对象作为实时服务对象的同步数据,发送同步消息使得客户端对该实时服务对象的同步数据进行同步显示,保证了多个客户端渲染的同步。
二、客户端的操作:
请参阅图6,本发明实施例中显示同步的方法另一个实施例包括:
601、当客户端实时采集数据时,客户端发送实时采集的数据到服务器;
当客户端实时采集数据时,客户端发送实时采集的数据到服务器。
602、当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据;
当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据,该实时服务对象的同步数据包括实时服务对象与渲染材料数据,该实时服务对象为与该服务器连接的其他客户端的实时数据对应的服务对象。
603、客户端解析该同步数据中的实时服务对象;
客户端接收到实时服务对象的同步数据后,解析该同步数据中的实时服务对象。
604、客户端加载该同步数据中的渲染材料数据;
客户端接收到实时服务对象的同步数据后,加载该同步数据中的渲染材料数据。
605、客户端使用该渲染材料数据对该实时服务对象进行渲染更新。
客户端解析出实时服务对象,加载渲染材料数据后,使用该渲染材料数据对该实时服务对象进行渲染更新,使得在客户端上对该实时采集的数据与其他客户端同步显示。
本发明实施例中,当实时数据为实时采集的数据时,客户端解析同步数据中的实时服务对象,加载同步数据中的渲染材料数据,使用该渲染材料数据对该实时服务对象进行渲染更新,这样可以在该客户端对其他客户端实时采集的数据进行同步渲染显示,保证了多客户端的同步显示。
为便于理解,结合图5所示服务器的操作与图6所示客户端的操作,下面以一具体应用场景对本发明实施例中显示同步的方法进行具体描述:
服务器缓存所有三维GIS实时渲染列表的数据;
服务器生成渲染列表的数据对应的关联数据;
服务器获取客户端实时采集的数据;
服务器根据预置方案,对实时采集的数据进行专题渲染;
服务器保存专题渲染所需要的数据,所需要的数据包括风格属性,文件路径,渲染状态信息等;
服务器通过预先建立的保存有专题渲染与服务对象的关联关系的对象映射表,查找出对象标识;
服务器根据该对象标识检索缓存的服务对象;
服务器创建服务对象的数据列表,包括该服务对象以及专题渲染所需要的数据;
服务器定位服务对象的数据生成相关的事件;
服务器检索连接会话列表,得到与服务器相连的其他客户端;
服务器通过会话发送时间消息给其他客户端,触发其他客户端读取缓存的服务对象;
其他客户端解析缓存的服务对象;
其他客户端对渲染专题图所需要的数据进行加载;
其他客户端接收应用服务器的同步显示指令;
其他服务器根据服务对象的数据列表对专题图进行渲染更新。
3、当实时数据为实时的视频流数据时。
一、服务器的操作:
请参阅图7,本发明实施例中显示同步的方法另一个实施例包括:
701、服务器缓存三维GIS实时渲染列表中各服务对象;
当需要对三维GIS进行同步显示时,服务器缓存三维GIS实时渲染列表中各服务对象。
可以理解的是,服务器还可以缓存实时渲染列表中其它在后续处理过程中需要用到的数据,进一步的,服务器也可以缓存三维GIS实时渲染列表的所有数据,此处不做限定。
702、服务器获取第一客户端的实时的视频流数据;
服务器缓存三维GIS实时渲染列表中各服务对象后,获取第一客户端的实时的视频流数据。
703、服务器缓存该视频流数据;
服务器获取该实时的视频流数据后,缓存该视频流数据。
704、服务器按照该视频流数据检索缓存的服务对象,得到实时服务对象;
服务器缓存该视频流数据后,按照该视频流数据检索缓存的服务对象,得到实时服务对象,该实时服务对象为该操作相关数据在服务器缓存的各服务对象中对应的服务对象。
可以理解的是,服务器按照视频流数据检索缓存的服务对象的方式有很多,例如可以先按照视频流数据查找预置对象映射表,得到该视频流数据对应的服务对象的对象标识,然后再按照该对象标识检索缓存的服务对象,得到实时服务对象,也可以直接查找该视频流数据对应的的服务对象,此处不作限定。
705、服务器创建实时服务对象的数据列表,作为实时服务对象的同步数据,该实时服务对象的数据列表中包括该实时服务对象与该视频流数据;
服务器缓存该视频流数据并检索到实时服务对象后,创建实时服务对象的数据列表,作为实时服务对象的同步数据,该实时服务对象的数据列表中包括该实时服务对象与该视频流数据。
706、服务器发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据。
服务器得到实时服务对象的同步数据后,发送同步消息给第二客户端,该同步消息用于使第二客户端读取该实时服务对象的同步数据,按照该实时服务对象的同步数据对该实时服务对象进行同步显示,该第二客户端为与服务器连接的与第一客户端不同的其他客户端。
可以理解的是,发送同步消息给第二客户端之前,可以先检索记录有与服务器相连的客户端的连接会话列表,得到当前与服务器相连的第二客户端,然后服务器再通过会话发送同步消息给该第二客户端,服务器也可以直接读取当前与服务器相连的客户端,得到第二客户端,还可以通过其他方式发送同步消息给第二客户端,此处不作限定。
需要说明的是,第一客户端,第二客户端仅为了将客户端彼此区分开,若当前与服务器连接的客户端中有一个产生了实时数据,则可以认为这个客户端为第一客户端,那么其他的与该服务器连接的客户端均可以认为是第二客户端,进一步的,若当前有多个客户端同时产生了实时数据,可以将这多个客户端分别作为第一客户端进行处理。
本发明实施例中,当实时数据为实时的视频流数据时,服务器先缓存该视频流数据,再查找该视频流数据对应的实时服务对象,将该视频流数据与实时服务器对象作为该服务对象的同步数据,使得各客户端在相应的服务对象上显示该视频流数据,实现了多客户端对实时的视频流数据的同步显示。
二、客户端的操作:
请参阅图8,本发明实施例中显示同步的方法另一个实施例包括:
801、客户端发送实时的视频流数据到服务器;
当客户端显示实时的视频流数据时,客户端发送实时的视频流数据到服务器。
802、当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据;
当客户端接收到服务器发送的同步消息时,客户端读取该服务器中实时服务对象的同步数据,该实时服务对象的同步数据包括实时服务对象与缓存的视频流数据,该实时服务对象为与该服务器连接的其他客户端的实时数据对应的服务对象。
803、客户端解析该同步数据中的实时服务对象;
客户端接收到实时服务对象的同步数据后,解析该同步数据中的实时服务对象。
804、客户端读取该同步数据中的视频流数据;
客户端接收到实时服务对象的同步数据后,读取该同步数据中的视频流数据。
805、客户端在三维场景中该实时服务对象相应的位置弹出视频窗口,将视频流数据进行解码并在该视频窗口中显示。
客户端解析出实时服务对象,读取该同步数据中的视频流数据后,在三维场景中该实时服务对象相应的位置弹出视频窗口,将视频流数据进行解码并在该视频窗口中显示,使得在客户端上对该实时的视频流数据与其他客户端同步显示。
本发明实施例中,当实时数据为实时的视频流数据时,客户端解析同步数据中的实时服务对象,读取该同步数据中的视频流数据,在三维场景中该实时服务对象相应的位置弹出视频窗口,将视频流数据进行解码并在该视频窗口中显示,这样可以在该客户端上对其他客户端显示的实时的视频流数据进行同步显示,保证了多客户端的同步显示。
为便于理解,结合图7所示服务器的操作与图8所示客户端的操作,下面以一具体应用场景对本发明实施例中显示同步的方法进行具体描述:
服务器缓存所有三维GIS实时渲染列表的数据;
服务器生成渲染列表的数据对应的关联数据;
服务器获取客户端显示的实时的视频流数据;
服务器按照预置规则对该视频流进行分析,如果该视频流数据满足规则,则继续后续处理:
服务器检索该视频流数据的关联信息,信息包括地理位置与视频路径等;
服务器缓存该视频流数据以及关联信息;
服务器通过预先建立的保存有视频流数据与服务对象关联关系的对象映射表,查找到对象标识;
服务器通过该对象标识,检索缓存的服务对象;
服务器创建服务对象的数据列表,包括服务对象,缓存的视频流数据以及关联信息;
服务器通过会话发送时间消息通知其他客户端,触发其他客户端读取该服务对象;
其他客户端解析缓存的服务对象;
其他客户端根据缓存的视频流数据以及关联信息,读取出实时的视频流数据;
其他客户端根据服务对象,在指定的位置动态弹出视频窗口,对该实时的视频流数据进行解码并显示。
下面分别对本发明实施例中的服务器和客户端进行描述。
请参阅图9,本发明实施例中服务器一个实施例包括:
对象缓存模块901,用于缓存三维地理信息系统GIS实时渲染列表中各服务对象;
获取模块902,用于获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
检索模块903,用于按照所述获取模块902获取的实时数据检索所述对象缓存模块901缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
处理模块904,用于根据所述获取模块902获取的实时数据对所述检索模块903检索出的实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
消息发送模块905,用于发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述处理模块904得到的实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示。
本发明实施例中对象缓存模块901先缓存三维GIS实时渲染列表中各服务对象,然后获取模块902获取第一客户端的实时数据,检索模块903按照该实时数据检索缓存的服务对象,得到实时服务对象,处理模块904按照该实时数据对实时服务对象进行相应处理,得到实时服务对象的同步数据,消息发送模块905发送同步消息给第二客户端,使得第二客户端读取实时服务对象的同步数据,按照实时服务对象的同步数据对该实时服务对象进行同步显示,这样各客户端先将数据发送给服务器,再由服务器统一处理后,以服务对象为单位触发各客户端的同步,避免了过多的同步指令导致网络堵塞而不同步的问题,且以服务器为中心触发同步,避免了多个客户端之间的数据传输,直接读取同一同步数据,保证了多端的同步显示。
请参阅图10,本发明实施例中客户端一个实施例包括:
数据发送模块1001,用于发送实时数据到服务器;
同步读取模块1002,用于当接收到所述服务器发送的同步消息时,读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
同步显示模块1003,用于按照所述同步读取模块1002读取的同步数据对所述实时服务对象进行同步显示。
本发明实施例中,数据发送模块1001发送实时数据到服务器,同步读取模块1002读取服务器中其他客户端的实时数据对应的服务对象的同步数据,同步显示模块1003按照该同步数据对该服务对象进行同步显示,这样避免了接收过多其他客户端发送的同步指令导致同步混乱的问题,只需要以服务对象为单位从服务器中读取同步数据进行同步显示,减少了数据传输的数据量,避免了因同步指令过多导致网络堵塞而不同步的问题。
上面实施例中,处理模块904根据实时数据对实时服务对象进行相应处理,在实际应用中,实时数据可以为多种,处理模块904可以根据不同的实时数据对实时服务对象进行不同的处理,下面以其中三种为例,分别对本发明实施例中的服务器和客户端进行描述。
1、当实时数据为操作相关数据时。
下面对本发明实施例中的服务器进行描述,请参阅图9,本发明实施例中服务器另一个实施例包括:
对象缓存模块901,用于缓存三维地理信息系统GIS实时渲染列表中各服务对象;
获取模块902,用于获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
检索模块903,用于按照所述获取模块902获取的实时数据检索所述对象缓存模块901缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
处理模块904,用于根据所述获取模块902获取的实时数据对所述检索模块903检索出的实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
消息发送模块905,用于发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述处理模块904得到的实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示;
本实施例中,该处理模块904具体用于按照所述获取模块902获取的操作相关数据更改所述检索模块903检索出的实时服务对象,得到所述实时服务对象的同步数据。
本发明实施例中,当实时数据为操作相关数据时,处理模块904可以按照该操作相关数据更改实时服务对象,然后消息发送模块905再发送同步消息使得第二客户端对更改后的实时服务对象进行同步,这样使得一个客户端只需要将实时操作数据发送给服务器,便可以将操作后的服务对象同步显示到所有其他的客户端上,保证了多客户端的同步显示。
下面对本发明实施例中的客户端进行描述,请参阅图11,本发明实施例中客户端另一个实施例包括:
数据发送模块1101,用于发送实时数据到服务器;
同步读取模块1102,用于当接收到所述服务器发送的同步消息时,读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
同步显示模块1103,用于按照所述同步读取模块1102读取的同步数据对所述实时服务对象进行同步显示;
本实施例中,该数据发送模块1101具体用于,当对三维场景中服务对象进行操作时,发送操作相关数据到所述服务器;
所述同步显示模块1103具体包括:
操作解析单元11031,用于解析所述同步读取模块1102读取的同步数据,得到所述实时服务对象的操作相关数据;
操作更新单元11032,用于按照所述操作解析单元11031解析出的操作相关数据对所述实时服务对象同步更新操作结果。
本发明实施例中,当实时数据为操作相关数据时,同步读取模块1102读取同步数据后,操作解析单元11031解析该同步数据,得到实时服务对象的操作相关数据,操作更新单元11032再按照该操作相关数据对实时服务对象同步更新操作结果,保证了对实时服务对象与其他客户端的同步显示。
为了便于理解上述实施例,下面结合图9所示服务器与图11所示客户端中各个模块在一个具体应用场景中的交互过程进行说明:
对象缓存模块901缓存所有三维GIS实时渲染列表的数据;
服务器生成渲染列表数据对应的关联数据;
获取模块902获取到任一个客户端对三维场景数据进行增加,修改,删除或属性修改的数据;
检索模块903通过预先建立的保存有操作与缓存服务的关联关系的对象映射表,找出客户端操作的服务对象对应的对象标识;
检索模块903通过对象标识,检索缓存的服务对象;
处理模块904按照客户端的操作更改服务器缓存的服务对象的数据;
服务器定位对象数据修改相关的事件;
服务器检索连接会话列表,得到与服务器相连的其他客户端;
消息发送模块905通过会话发送事件消息通知其他客户端,使得事件消息触发同步读取模块1102读取缓存的服务对象;
同步显示模块1103解析缓存的服务器对象,得到操作相关数据;
同步显示模块1103按照该操作相关数据同步更新操作结果。
2、当实时数据为实时采集的数据时。
下面对本发明实施例中的服务器进行描述,请参阅图12,本发明实施例中服务器另一个实施例包括:
对象缓存模块1201,用于缓存三维地理信息系统GIS实时渲染列表中各服务对象;
获取模块1202,用于获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
检索模块1203,用于按照所述获取模块1202获取的实时数据检索所述对象缓存模块1201缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
处理模块1204,用于根据所述获取模块1202获取的实时数据对所述检索模块1203检索出的实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
消息发送模块1205,用于发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述处理模块1204得到的实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示;
本实施例中,该服务器还包括:
渲染保存模块1206,用于按照预置方案对所述获取模块1202获取到的实时采集的数据进行专题渲染,保存渲染材料数据,所述渲染材料数据用于表示进行所述专题渲染所需要的数据;
所述处理模块1204具体用于,创建所述检索模块1203检索出的实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述渲染保存模块1206保存的渲染材料数据。
本发明实施例中,当实时数据为实时采集的数据时,渲染保存模块1206按照预置规则对该实时采集的数据进行渲染,并保存渲染材料数据,检索模块1203检索到实时服务对象后,处理模块1204将该渲染材料数据与实时服务对象作为实时服务对象的同步数据,消息发送模块1205发送同步消息使得客户端对该实时服务对象的同步数据进行同步显示,保证了多个客户端渲染的同步。
下面对本发明实施例中的客户端进行描述,请参阅图13,本发明实施例中客户端另一个实施例包括:
数据发送模块1301,用于发送实时数据到服务器;
同步读取模块1302,用于当接收到所述服务器发送的同步消息时,读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
同步显示模块1303,用于按照所述同步读取模块1302读取的同步数据对所述实时服务对象进行同步显示;
本实施例中,该数据发送模块1301具体用于,当实时采集数据时,发送实时采集的数据到所述服务器;
所述同步显示模块1303具体包括:
第一对象解析单元13031,用于解析所述同步读取模块1302读取的同步数据中的实时服务对象;
加载单元13032,用于加载所述同步读取模块1302读取的同步数据中的渲染材料数据,所述渲染材料数据用于表示进行专题渲染所需要的数据;
渲染更新单元13033,用于使用所述加载单元13032加载的渲染材料数据对所述第一对象解析单元13032解析出的实时服务对象进行渲染更新。
本发明实施例中,当实时数据为实时采集的数据时,第一对象解析单元13031解析同步数据中的实时服务对象,加载单元13032加载同步数据中的渲染材料数据,渲染更新单元13033使用该渲染材料数据对该实时服务对象进行渲染更新,这样可以在该客户端对其他客户端实时采集的数据进行同步渲染显示,保证了多客户端的同步显示。
为了便于理解上述实施例,下面结合图12所示服务器与图13所示客户端中各个模块在一个具体应用场景中的交互过程进行说明:
对象缓存模块1201缓存所有三维GIS实时渲染列表的数据;
服务器生成渲染列表的数据对应的关联数据;
获取模块1202获取客户端实时采集的数据;
渲染保存模块1206根据预置方案,对实时采集的数据进行专题渲染;
渲染保存模块1206保存专题渲染所需要的数据,所需要的数据包括风格属性,文件路径,渲染状态信息等;
检索模块1203通过预先建立的保存有专题渲染与服务对象的关联关系的对象映射表,查找出对象标识;
检索模块1203根据该对象标识检索缓存的服务对象;
处理模块1204创建服务对象的数据列表,包括该服务对象以及专题渲染所需要的数据;
服务器定位服务对象的数据生成相关的事件;
服务器检索连接会话列表,得到与服务器相连的其他客户端;
消息发送模块1205通过会话发送时间消息给其他客户端,触发其他客户端读取缓存的服务对象;
第一对象解析单元13031解析缓存的服务对象;
加载单元13032对渲染专题图所需要的数据进行加载;
渲染更新单元13033接收应用服务器的同步显示指令;
渲染更新单元13033根据服务对象的数据列表对专题图进行渲染更新。
3、当所述实时数据为实时的视频流时。
下面对本发明实施例中的服务器进行描述,请参阅图14,本发明实施例中服务器另一个实施例包括:
对象缓存模块1401,用于缓存三维地理信息系统GIS实时渲染列表中各服务对象;
获取模块1402,用于获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
检索模块1403,用于按照所述获取模块1402获取的实时数据检索所述对象缓存模块1401缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
处理模块1404,用于根据所述获取模块1402获取的实时数据对所述检索模块1403检索出的实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
消息发送模块1405,用于发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述处理模块1404得到的实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示;
本实施例中,该服务器还包括:
数据缓存模块1406,用于缓存所述获取模块1402获取的视频流数据;
所述处理模块1404具体用于,创建所述检索模块1403检索出的实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述数据缓存模块1406缓存的视频流数据。
本发明实施例中,当实时数据为实时的视频流数据时,数据缓存模块1406先缓存该视频流数据,检索模块1403再查找该视频流数据对应的实时服务对象,处理模块1404将该视频流数据与实时服务器对象作为该服务对象的同步数据,使得各客户端在相应的服务对象上显示该视频流数据,实现了多客户端对实时的视频流数据的同步显示。
下面对本发明实施例中的客户端进行描述,请参阅图15,本发明实施例中服务器另一个实施例包括:
数据发送模块1501,用于发送实时数据到服务器;
同步读取模块1502,用于当接收到所述服务器发送的同步消息时,读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
同步显示模块1503,用于按照所述同步读取模块1502读取的同步数据对所述实时服务对象进行同步显示;
本实施例中,该同步显示模块1503具体包括:
第二对象解析单元15031,用于解析所述同步读取模块1502读取的同步数据中的实时服务对象;
数据读取单元15032,用于读取所述同步读取模块1502读取的同步数据中的视频流数据;
视频显示单元15033,用于在三维场景中所述第二对象解析单元15032解析出的实时服务对象相应的位置弹出视频窗口,将所述数据读取单元15032读取的视频流数据进行解码并在所述视频窗口中显示。
本发明实施例中,当实时数据为实时的视频流数据时,第二对象解析单元15031解析同步数据中的实时服务对象,数据读取单元15032读取该同步数据中的视频流数据,视频显示单元15033在三维场景中该实时服务对象相应的位置弹出视频窗口,将视频流数据进行解码并在该视频窗口中显示,这样可以在该客户端上对其他客户端显示的实时的视频流数据进行同步显示,保证了多客户端的同步显示。
为了便于理解上述实施例,下面结合图14所示服务器与图15所示客户端中各个模块在一个具体应用场景中的交互过程进行说明:
对象缓存模块1401缓存所有三维GIS实时渲染列表的数据;
服务器生成渲染列表的数据对应的关联数据;
获取模块1402获取客户端显示的实时的视频流数据;
服务器按照预置规则对该视频流进行分析,如果该视频流数据满足规则,则继续后续处理:
服务器检索该视频流数据的关联信息,信息包括地理位置与视频路径等;
数据缓存模块1406缓存该视频流数据以及关联信息;
检索模块1403通过预先建立的保存有视频流数据与服务对象关联关系的对象映射表,查找到对象标识;
检索模块1403通过该对象标识,检索缓存的服务对象;
处理模块1404创建服务对象的数据列表,包括服务对象,缓存的视频流数据以及关联信息;
服务器通过会话发送时间消息通知其他客户端,触发其他客户端读取该服务对象;
第二对象解析单元15031解析缓存的服务对象;
数据读取单元15032根据缓存的视频流数据以及关联信息,读取出实时的视频流数据;
视频显示单元15033根据服务对象,在指定的位置动态弹出视频窗口,对该实时的视频流数据进行解码并显示。
下面对本发明实施例中的显示同步系统进行描述。本发明实施例中显示同步系统一个实施例包括:
图9,图12或图14中任一个所示的服务器和图10,图11,图13或图15中任一个所示的客户端。
其中,客户端的数量至少为两个。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种显示同步的方法,其特征在于,包括:
服务器缓存三维地理信息系统GIS实时渲染列表中各服务对象;
所述服务器获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
所述服务器按照所述实时数据检索缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
所述服务器根据所述实时数据对所述实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
所述服务器发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示。
2.根据权利要求1所述的方法,其特征在于,当所述实时数据为操作相关数据时,
所述服务器根据所述实时数据对所述实时服务对象进行相应处理包括:
所述服务器按照所述操作相关数据更改所述实时服务对象。
3.根据权利要求1所述的方法,其特征在于,当所述实时数据为实时采集的数据时,
所述服务器按照所述实时数据检索缓存的服务对象的步骤之前还包括:
所述服务器按照预置方案对所述实时采集的数据进行专题渲染,保存渲染材料数据,所述渲染材料数据用于表示进行所述专题渲染所需要的数据;
所述服务器根据所述实时数据对所述实时服务对象进行相应处理,得到所述实时服务对象的同步数据具体包括:
所述服务器创建所述实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述渲染材料数据。
4.根据权利要求1所述的方法,其特征在于,当所述实时数据为实时的视频流数据时,
所述服务器按照所述实时数据检索缓存的服务对象的步骤之前还包括:
所述服务器缓存所述视频流数据;
所述服务器根据所述实时数据对所述实时服务对象进行相应处理,得到所述实时服务对象的同步数据具体包括:
所述服务器创建所述实时服务对象的数据列表,作为所述实时服务对象的同步数据,所述实时服务对象的数据列表中包括所述实时服务对象与所述视频流数据。
5.一种显示同步的方法,其特征在于,包括:
客户端发送实时数据到服务器;
当所述客户端接收到所述服务器发送的同步消息时,所述客户端读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
所述客户端按照所述同步数据对所述实时服务对象进行同步显示。
6.根据权利要求5所述的方法,其特征在于,当所述实时数据为操作相关数据时,
所述客户端发送实时数据到服务器包括:
当所述客户端对三维场景中服务对象进行操作时,发送操作相关数据到所述服务器;
所述客户端按照所述同步数据对所述实时服务对象进行同步显示包括:
所述客户端解析所述同步数据,得到所述实时服务对象的操作相关数据;
所述客户端按照所述操作相关数据对所述实时服务对象同步更新操作结果。
7.根据权利要求5所述的方法,其特征在于,当所述实时数据为实时采集的数据时,
所述客户端发送实时数据到服务器包括:
当所述客户端实时采集数据时,发送实时采集的数据到所述服务器;
所述客户端按照所述同步数据对所述实时服务对象进行同步显示包括:
所述客户端解析所述同步数据中的实时服务对象;
所述客户端加载所述同步数据中的渲染材料数据,所述渲染材料数据用于表示进行专题渲染所需要的数据;
所述客户端使用所述渲染材料数据对所述实时服务对象进行渲染更新。
8.根据权利要求5所述的方法,其特征在于,当所述实时数据为实时的视频流时,所述客户端按照所述同步数据对所述实时服务对象进行同步显示包括:
所述客户端解析所述同步数据中的实时服务对象;
所述客户端读取所述同步数据中的视频流数据;
所述客户端在三维场景中所述实时服务对象相应的位置弹出视频窗口,将所述视频流数据进行解码并在所述视频窗口中显示。
9.一种服务器,其特征在于,包括:
对象缓存模块,用于缓存三维地理信息系统GIS实时渲染列表中各服务对象;
获取模块,用于获取第一客户端的实时数据,所述第一客户端为与所述服务器连接的客户端;
检索模块,用于按照所述获取模块获取的实时数据检索所述对象缓存模块缓存的服务对象,得到实时服务对象,所述实时服务对象为所述实时数据对应的服务对象;
处理模块,用于根据所述获取模块获取的实时数据对所述检索模块检索出的实时服务对象进行相应处理,得到所述实时服务对象的同步数据;
消息发送模块,用于发送同步消息给第二客户端,所述第二客户端为与所述服务器连接的与所述第一客户端不同的其他客户端,所述同步消息用于使得所述第二客户端读取所述处理模块得到的实时服务对象的同步数据,按照所述实时服务对象的同步数据对所述实时服务对象进行同步显示。
10.一种客户端,其特征在于,包括:
数据发送模块,用于发送实时数据到服务器;
同步读取模块,用于当接收到所述服务器发送的同步消息时,读取所述服务器中实时服务对象的同步数据,所述实时服务对象为与所述服务器连接的其他客户端的实时数据对应的服务对象;
同步显示模块,用于按照所述同步读取模块读取的同步数据对所述实时服务对象进行同步显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410228138.7A CN103973816A (zh) | 2014-05-27 | 2014-05-27 | 显示同步的方法、服务器以及客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410228138.7A CN103973816A (zh) | 2014-05-27 | 2014-05-27 | 显示同步的方法、服务器以及客户端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103973816A true CN103973816A (zh) | 2014-08-06 |
Family
ID=51242849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410228138.7A Pending CN103973816A (zh) | 2014-05-27 | 2014-05-27 | 显示同步的方法、服务器以及客户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103973816A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791390A (zh) * | 2016-01-21 | 2016-07-20 | 华为技术有限公司 | 数据传输方法、装置及系统 |
CN112565818A (zh) * | 2020-11-30 | 2021-03-26 | 中国矿业大学(北京) | 二三维一体化的操作站平台构建方法和电子设备 |
CN113438328A (zh) * | 2021-08-30 | 2021-09-24 | 成都丰硕智能数字科技有限公司 | 一种低延迟终端同步系统及方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413164A (zh) * | 2011-08-31 | 2012-04-11 | 北京华电万通科技有限公司 | 一种基于Web的三维场景可视化编辑装置和方法 |
CN102496130A (zh) * | 2011-11-15 | 2012-06-13 | 王家庆 | 一种高效运营出租车的实时移动商务系统 |
CN102957748A (zh) * | 2012-11-07 | 2013-03-06 | 广东威创视讯科技股份有限公司 | 三维场景动态更新方法和系统 |
CN103401941A (zh) * | 2013-08-09 | 2013-11-20 | 广东威创视讯科技股份有限公司 | 一种gis场景信息处理方法、系统、节点机和服务端 |
CN103428264A (zh) * | 2013-06-27 | 2013-12-04 | 华为软件技术有限公司 | 数据同步的方法、设备及系统 |
US20130325932A1 (en) * | 2012-06-05 | 2013-12-05 | Hon Hai Precision Industry Co., Ltd. | Electronic device and method for storing distributed documents |
CN103700133A (zh) * | 2013-12-20 | 2014-04-02 | 广东威创视讯科技股份有限公司 | 三维场景分布式渲染同步刷新方法和系统 |
-
2014
- 2014-05-27 CN CN201410228138.7A patent/CN103973816A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413164A (zh) * | 2011-08-31 | 2012-04-11 | 北京华电万通科技有限公司 | 一种基于Web的三维场景可视化编辑装置和方法 |
CN102496130A (zh) * | 2011-11-15 | 2012-06-13 | 王家庆 | 一种高效运营出租车的实时移动商务系统 |
US20130325932A1 (en) * | 2012-06-05 | 2013-12-05 | Hon Hai Precision Industry Co., Ltd. | Electronic device and method for storing distributed documents |
CN102957748A (zh) * | 2012-11-07 | 2013-03-06 | 广东威创视讯科技股份有限公司 | 三维场景动态更新方法和系统 |
CN103428264A (zh) * | 2013-06-27 | 2013-12-04 | 华为软件技术有限公司 | 数据同步的方法、设备及系统 |
CN103401941A (zh) * | 2013-08-09 | 2013-11-20 | 广东威创视讯科技股份有限公司 | 一种gis场景信息处理方法、系统、节点机和服务端 |
CN103700133A (zh) * | 2013-12-20 | 2014-04-02 | 广东威创视讯科技股份有限公司 | 三维场景分布式渲染同步刷新方法和系统 |
Non-Patent Citations (1)
Title |
---|
聂晋: "基于GIS的分布式互动图标标注及地图显示控制技术", 《科技传播》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791390A (zh) * | 2016-01-21 | 2016-07-20 | 华为技术有限公司 | 数据传输方法、装置及系统 |
CN112565818A (zh) * | 2020-11-30 | 2021-03-26 | 中国矿业大学(北京) | 二三维一体化的操作站平台构建方法和电子设备 |
CN112565818B (zh) * | 2020-11-30 | 2022-01-11 | 中国矿业大学(北京) | 二三维一体化的操作站平台构建方法和电子设备 |
CN113438328A (zh) * | 2021-08-30 | 2021-09-24 | 成都丰硕智能数字科技有限公司 | 一种低延迟终端同步系统及方法 |
CN113438328B (zh) * | 2021-08-30 | 2021-12-21 | 成都丰硕智能数字科技有限公司 | 一种低延迟终端同步系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9904694B2 (en) | NoSQL relational database (RDB) data movement | |
CN106909595B (zh) | 一种数据迁移方法及装置 | |
CN105843895B (zh) | 基于Ehcache的数据查询及同步方法,装置及系统 | |
CN103279496A (zh) | 一种终端及关联信息的显示方法 | |
CN105025319A (zh) | 一种视频推送方法和装置 | |
CN103995855A (zh) | 存储数据的方法和装置 | |
CN103034566A (zh) | 虚拟机还原的方法和装置 | |
CN103973816A (zh) | 显示同步的方法、服务器以及客户端 | |
CN106709066B (zh) | 数据同步方法及装置 | |
CN103457825A (zh) | 实现即时消息通信的方法、装置和系统 | |
CN103716056A (zh) | 数据压缩方法、数据解压缩方法和设备 | |
CN105549936A (zh) | 数据表的显示方法和装置 | |
CN105630792A (zh) | 一种信息显示、推送方法及装置 | |
CN105975100B (zh) | 输入法中表情包的拓展方法和装置 | |
CN103678578A (zh) | 一种数据可视化处理方法、服务器及数据可视化处理系统 | |
CN110750659B (zh) | 媒体资源动态显示方法、装置及存储介质 | |
CN103401941A (zh) | 一种gis场景信息处理方法、系统、节点机和服务端 | |
CN107908625A (zh) | 一种pdf文档内容原位置多语言翻译方法 | |
CN103838861A (zh) | 一种基于三维gis动态显示信息的方法和显示系统 | |
CN105159749A (zh) | 一种云终端重定向本地磁盘到虚拟机的方法及系统 | |
CN104808953A (zh) | 控制数据存储的方法、装置及移动终端 | |
CN105069139A (zh) | 文件访问方法和文件访问装置以及服务器 | |
CN103440255A (zh) | 地图显示方法及装置 | |
CN103902608A (zh) | 一种监控网页图片并进行压缩的方法和装置 | |
WO2015197216A1 (en) | Method for processing a video scene and corresponding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140806 |