避免重复加载动态缓存图形数据的系统及方法技术方案

技术编号:12807087 阅读:102 留言:0更新日期:2016-02-03 21:13
本发明专利技术提供了一种避免重复请求加载动态缓存图形数据的系统,包括应用程序端的P集合维护单元、Q集合维护单元、边界比对单元以及图形加载单元,其中:所述P集合维护单元,用于创建P元素集合并向该P元素集合中添加P元素;所述Q集合维护单元,用于创建Q元素集合并在执行交互操作时向所述Q元素集合中添加Q元素;所述边界比对单元,用于将所有Q元素分别与每一P元素进行比对;所述图形加载单元,用于向服务器端发送加载Q元素集合中所有Q元素对应的矩形区域内图形数据的请求。本发明专利技术还提供一种对应的方法。本发明专利技术通过将欲请求的图形数据集之矩形边界与先前已请求并缓存的图形数据集之矩形边界分别比对,避免重复加载图形数据的操作发生。

【技术实现步骤摘要】

本专利技术涉及空间信息图形化处理领域,更具体地说,涉及一种。
技术介绍
C/S、B/S架构的空间信息图形化处理系统中,应用端(客户端或浏览器端)显示的图形数据均存放于服务器端,应用端软件运行时需通过各种方式向服务器提出图形数据加载请求,由服务器完成相应服务。对于大规模应用系统来说,不同的图形数据加载方案将直接影响应用端用户的交互操作效率。目前常见的应用端(数据请求侧)数据加载方案基本可分为静态加载法与动态加载法,前者的典型代表有“整体预先加载法”(简称“整体预装法”),后者的典型代表是“局部即时加载法”(简称“局部即装法”)。“整体预装法”是在系统应用端启动时完成对全部应用程序所需图形数据的加载作业。即,预先设定用户交互操作全过程可能涉及的图形数据范围,并在应用端启动时进行一次性装入,以保证用户有最佳的交互操作效率。“局部即装法”则与“整体预装法”相反。在系统应用端启动时不进行图形数据预装作业,而是在有交互操作发生时,由应用端向服务器端发出动态加载请求。此时,服务器端将围绕交互操作发生位置,组织若干局部区域数据提供给应用端,应用端接收到这些局部图形数据后将其在本地缓存。然而,在“整体预装法”中,系统无法判断应用端实际交互操作所需图形数据的空间范围边界,因而往往需要尽可能扩大预装数据空间范围,并且系统启动时往往需要较长的数据预装时间。此外,当定义的预装数据空间范围超出应用端设备内存最大容量时,该方法将无法完成数据预装。“局部即装法”是一种基于离散化数据组织、在应用端交互操作中不断重复进行图形数据动态加载的方法。然而,“局部即装法”的图形数据加载操作在交互时进行,因此存在等待图形数据加载的问题,这将影响到应用端交互操作的操作感受,具体表现为:当应用端向服务器端提出图形数据加载请求时,需等待数据加载完成,致使交互操作会产生迟滞感觉,而当系统中应用端并发请求数量较大时,会对服务器端及传输网络形成更大的处理和传输压力,因而应用端交互操作等待数据加载的现象会更加严重;此外,为了部分缓解动态加载造成的操作迟滞感,许多系统采用了“扩大加载数据范围”的策略(基于“大部分交互操作均发生于连续空间范围之内”的判断),力图将经常性“迟滞”转化为间歇性“迟滞”,以改善交互操作感受,这就使该方法会出现应用端加载多余数据或重复请求加载相同范围数据的现象,给服务器端及网络作业增加了不必要的压力,因而会无谓降低大系统(应用端数量多达数十甚至数百)的整体运行效率。
技术实现思路
本专利技术要解决的技术问题在于,针对上述“整体预装法”图形加载时间长、“局部即装法”交互操作存在迟滞的问题,提供一种。本专利技术解决上述技术问题的技术方案是,提供一种避免重复加载动态缓存图形数据的系统,包括应用程序端的P集合维护单元、Q集合维护单元、边界比对单元以及图形加载单元,其中:所述p集合维护单元,用于创建P元素集合并向该P元素集合中添加多个P元素,每一所述P元素对应一个已请求并缓存图形数据集的矩形边界;所述Q集合维护单元,用于创建Q元素集合并在执行交互操作时向所述Q元素集合中添加一个或多个Q元素,每一所述Q元素对应一个当前交互操作产生的欲请求图形数据集的矩形边界;所述边界比对单元,用于将所述Q元素集合中的所有Q元素分别与P元素集合中的每一 P元素进行比对,并在Q元素被P元素集合中的任一 P元素完全覆盖时将该Q元素从Q元素集合中删除、在Q元素被P元素集合中的任一 P元素部分覆盖时将该Q元素被覆盖的部分裁去并将裁剪后的结果分割为一个或多个新的Q元素与P元素集合中的所有未比对P元素进行比对;所述图形加载单元,用于在比对完成后所述Q元素集合非空时向服务器端发送加载Q元素集合中所有Q元素对应的矩形区域内图形数据的请求。在本专利技术所述的避免重复加载动态缓存图形数据的系统中,所述边界比对单元包括元素获取子单元、元素裁剪子单元、元素删除子单元,其中:所述元素获取子单元,用于从所述Q元素集合中获取一个未比对的Q元素,在未获取到对应的Q元素且Q元素集合非空时使图形加载单元加载Q元素集合中当前所有Q元素对应的矩形区域内图形数据;所述元素裁剪子单元,用于在所述q元素被p元素集合中的任一 P元素部分覆盖时,将所述Q元素被P元素覆盖的部分裁去并根据裁剪后的结果生成一个或多个新的Q元素存储到Q元素集合中;所述元素删除子单元,用于在所述Q元素被P元素集合中的任一P元素完全覆盖时将所述Q元素从Q元素集合中删除。在本专利技术所述的避免重复加载动态缓存图形数据的系统中,所述P集合维护单元在所述图形加载单元加载图形数据成功后,将对应Q元素作为新的P元素添加到P元素集入口 ο在本专利技术所述的避免重复加载动态缓存图形数据的系统中,所述Q集合维护单元在所述Q元素集合中所有Q元素对应的矩形区域内图形数据都加载成功且生成新的Ρ元素后将Q元素集合清空。本专利技术还提供一种避免重复加载动态缓存图形数据的方法,包括以下步骤:(a)创建P元素集合,该P元素集合包括多个P元素且每一所述P元素对应一个已请求并缓存的图形数据集的矩形边界;(b)创建Q元素集合,并在执行交互操作时向所述Q元素集合中添加一个或多个Q元素,每一所述Q元素对应一个当前交互操作产生的欲请求加载图形数据集的矩形边界;(c)将所述Q元素集合中的所有Q元素分别与P元素集合中的每一 P元素进行比对,并在Q元素被P元素集合中的任一 P元素完全覆盖时将该Q元素从Q元素集合中删除、在Q元素被P元素集合中的任一 P元素部分覆盖时将该Q元素被覆盖的部分裁去并将裁剪后的结果分割为一个或多个新的Q元素与P元素集合中所有未比对的P元素进行比对;(d)在所述Q元素集合非空时向服务器端发送加载Q元素集合中所有Q元素对应的矩形区域内图形数据的请求。在本专利技术所述的避免重复加载动态缓存图形数据的方法中,所述步骤(c)包括:(cl)从所述Q元素集合中获取一个未比对Q元素,在未获取到对应的Q元素且Q元素集合非空时执行步骤(d),否则执行步骤(c2);(c2)将所述Q元素与P元素集合中的所有P元素依次进行比对,并在该Q元素被P元素集合中的任一 P元素完全覆盖时执行步骤(c3)、在Q元素被P元素集合中的任一 P元素部分覆盖时执行步骤(c4)、否则执行步骤(c5);(c3)将所述Q元素从Q元素集合中删除,并执行步骤(cl);(c4)将所述Q元素被P元素元素覆盖的部分裁去并根据裁剪后的结果生成一个或多个新的Q元素存入Q元素集合中,然后执行步骤(cl);(c5)将所述Q元素标记为已比对,并执行步骤(cl)。在本专利技术所述的避免重复加载动态缓存图形数据的方法中,所述步骤(d)还包括:Q元素对应的矩形区域内图形数据加载成功后,将该Q元素添加到P元素集合中,使该Q元素成为新的P元素。在本专利技术所述的避免重复加载动态缓存图形数据的方法中,所述步骤(d)之后还包括:在所述Q元素集合中所有Q元素对应的矩形区域内图形数据都加载成功且生成新的P元素后将Q元素集合清空。本专利技术的,通过将欲请求的图形数据集矩形边界与先前已请求并缓存的图形数据集矩形边界分别比对,从而降低了整体比对的复杂度,提高了图形数据的加载效率。【附图说明】图1是本专利技术避免重复加载动态缓存图形数据的系统实施例的示意图。图2是图1中边界比对单元的具体本文档来自技高网
...

【技术保护点】
一种避免重复加载动态缓存图形数据的系统,其特征在于,包括应用程序端的P集合维护单元、Q集合维护单元、边界比对单元以及图形加载单元,其中:所述P集合维护单元,用于创建P元素集合并向该P元素集合中添加多个P元素,每一所述P元素对应一个已请求并缓存图形数据集的矩形边界;所述Q集合维护单元,用于创建Q元素集合并在执行交互操作时向所述Q元素集合中添加一个或多个Q元素,每一所述Q元素对应一个当前交互操作产生的欲请求图形数据集的矩形边界;所述边界比对单元,用于将所述Q元素集合中的所有Q元素分别与P元素集合中的每一P元素进行比对,并在Q元素被P元素集合中的任一P元素完全覆盖时将该Q元素从Q元素集合中删除、在Q元素被P元素集合中的任一P元素部分覆盖时将该Q元素被覆盖的部分裁去并将裁剪后的结果分割为一个或多个新的Q元素与P元素集合中所有未比对的P元素进行比对;所述图形加载单元,用于在比对完成后所述Q元素集合非空时向服务器端发送加载Q元素集合中所有Q元素对应的矩形区域内图形数据的请求。

【技术特征摘要】

【专利技术属性】
技术研发人员:吕珂李毅
申请(专利权)人:深圳市雅都软件股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1