一种实现产业动态图层自适应叠加切片地图的方法及系统转让专利

申请号 : CN201610495217.3

文献号 : CN106202233B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 洛佳明张同义周永利马述杰刘治国赵恒胜庄同光高明乾王小鹏

申请人 : 泰华智慧产业集团股份有限公司

摘要 :

本发明公开了一种实现产业动态图层自适应叠加切片地图的方法及系统,获取系统运行的设备的dpi作为算法参数;获取地图的坐标系;根据地图的坐标系获取地图的基本单位,如果是投影坐标系,那单位就是米;如果是地理坐标系,单位就是度;根据地图的基本单位选择相应的比例尺与分辨率换算公式,算出相应比例尺的分辨率;将各级比例尺的分辨率算出来后重新配置地图的比例尺结构,然后再加载叠加地图。本发明可应用于所有地理信息系统,避免了地图图层数据不显示的问题,降低了返工率,从而提高了开发效率,也提升了系统可靠性,避免了因为地图数据显示不全而造成的某些功能模块的严重bug。

权利要求 :

1.一种实现产业动态图层自适应叠加切片地图的方法,其特征是,包括以下步骤:获取系统运行的设备的dpi作为算法参数;

获取地图的坐标系;

根据地图的坐标系获取地图的基本单位,如果是投影坐标系,则单位就是米;如果是地理坐标系,则单位就是度;

根据地图的基本单位选择相应的比例尺与分辨率换算公式,算出相应比例尺的分辨率;

叠加同源切片地图或者不同源切片地图时自动适应比例尺等级,将各级比例尺的分辨率算出来后重新配置地图的比例尺结构,利用gis javascriptAPI的map类初始化地图的时候,比例尺等级作为map的参数,使得加载后的地图遵循设定的比例尺等级,然后再加载叠加地图,避免了因为地图数据显示不全而造成的某些功能模块的严重bug;

地图的坐标系是根据控件gis javascriptAPI获取从地图服务调取地图的坐标系;

根据控件gis javascriptAPI的空间参考参数,判断坐标系类型;

不同的dpi对应的地图的合适的显示比例尺等级不一样,地图比例尺的设定要根据不同的dpi动态设定。

2.如权利要求1所述的一种实现产业动态图层自适应叠加切片地图的方法,其特征是,如果单位是米,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi。

3.如权利要求2所述的一种实现产业动态图层自适应叠加切片地图的方法,其特征是,如果单位是度,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi/111194.872221777。

4.一种实现产业动态图层自适应叠加切片地图的系统,其特征是,包括:Dpi获取单元,获取系统运行的设备的dpi作为算法参数;

地图的坐标系获取单元,获取地图的坐标系;

地图的基本单位判断单元,根据地图的坐标系获取地图的基本单位,如果是投影坐标系,那单位就是米;如果是地理坐标系,单位就是度;

分辨率计算单元,根据地图的基本单位选择相应的比例尺与分辨率换算公式,算出相应比例尺的分辨率;

比例尺结构重新配置单元,叠加同源切片地图或者不同源切片地图时自动适应比例尺等级,将各级比例尺的分辨率算出来后重新配置地图的比例尺结构,利用gis javascriptAPI的map类初始化地图的时候,比例尺等级作为map的参数,使得加载后的地图遵循设定的比例尺等级,然后再加载叠加地图,避免了因为地图数据显示不全而造成的某些功能模块的严重bug;

地图的坐标系获取单元中,地图的坐标系是根据控件gis javascriptAPI获取从地图服务调取地图的坐标系;

地图的基本单位判断单元中,根据控件gis javascriptAPI的空间参考参数,判断坐标系类型;

不同的dpi对应的地图的合适的显示比例尺等级不一样,地图比例尺的设定要根据不同的dpi动态设定。

5.如权利要求4所述的一种实现产业动态图层自适应叠加切片地图的系统,其特征是,分辨率计算单元中,如果单位是米,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi。

6.如权利要求5所述的一种实现产业动态图层自适应叠加切片地图的系统,其特征是,分辨率计算单元中,如果单位是度,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi/111194.872221777。

说明书 :

一种实现产业动态图层自适应叠加切片地图的方法及系统

技术领域

[0001] 本发明涉及地图叠加技术领域,具体涉及一种实现产业动态图层自适应叠加切片地图的方法及系统。

背景技术

[0002] 地图,是根据一定的数学法则,使用制图语言,通过制图综合在一定载体上,表达地球上各种事物的空间分布、联系及时间中的发展变化状态绘制的图形。随着科技的进步,地图的概念是不断发展变化的,如将地图看成是“反映自然和社会现象的形象、符号模型”,地图是“空间信息的载体”、“空间信息的传递通道”等。
[0003] 传统地图的载体多为纸张,随着科技的发展出现了电子地图等多种载体。而地理信息系统就是把地理信息存储到计算机里,制成电子地图,使人们通过计算机迅速查询到目标。比如应用这种技术可以制成城市电子地图,我们在查询公共汽车路线时,只需输入起点和终点的名称,就可以查询出相关车次,并获取沿途经过的道路和换乘车站等地理信息。地理信息系统实用价值巨大,可以广泛应用于城市用地规划、交通规则、自然资源保护、水气管道及灾害监测和预防等领域,已逐渐成为信息产业的重要组成部分。
[0004] 地理信息系统中最重要的就是地图数据,各个图层叠加显示不同要素数据。地图数据的准确性是地理信息系统价值体现的保障。系统中调取的是gis平台发布的地图服务。
[0005] 所谓地图服务,就是利用具有地理空间位置信息的数据制作地图,其中将地图定义为地理数据可视的表现,地图本身并不是数据。地图通常以图像格式表达,例如PNG,GIF或是JPEG,有时候也表达为基于矢量图形,如可缩放矢量图形(SVG)或是网络电脑图形元件等格式(W而不CGM)。
[0006] 根据OGC规范,地图服务是专门提供共享地图数据的服务,负责根据客户程序的请求,提供地图图像、指定坐标点的要素信息、以及地图服务的功能说明信息。
[0007] 为了提高地图服务响应速度,一般都将更新周期较长的图层发布切片服务。切片服务是采用地图数据切片发布的策略,即预生成一定规格的地图切片缓存在服务器,用于响应客户端的地图请求,可以提高地图显示速度。但有些实时更新的数据图层要用动态图层服务。所谓动态服务则是在每一次请求提供地图时都需要服务器渲染一次地图,具有更高的灵活性。这就不可避免的会有动态服务与切片服务叠加的情况。
[0008] 现有的技术都是直接叠加,但是存在以下缺陷:
[0009] 1.动态图层与切片地图服务叠加,动态图层的比例尺会受切片地图比例尺限制,因而容易丢失比例尺等级,造成图层数据显示不全。
[0010] 2.不同分辨率的屏幕下,比如电脑和平板及手机,DPI不同,会造成比例尺显示误差,造成图层数据显示不全。所谓DPI,就是每英寸像素数,可以反映屏幕的清晰度。

发明内容

[0011] 为解决现有技术存在的不足,本发明公开了一种实现产业动态图层自适应叠加切片地图的方法及系统,本发明采用具体的算法使得地图在叠加同源切片地图或者不同源切片地图时都不受切片比例尺限制,自动适应比例尺等级,保证所有图层数据都能在地图上显示。
[0012] 为实现上述目的,本发明的具体方案如下:
[0013] 一种实现产业动态图层自适应叠加切片地图的方法,包括以下步骤:
[0014] 获取系统运行的设备的dpi作为算法参数;
[0015] 获取地图的坐标系;
[0016] 根据地图的坐标系获取地图的基本单位,如果是投影坐标系,则单位就是米;如果是地理坐标系,则单位就是度;
[0017] 不同的地图单位对应不同的分辨率换算公式。如果单位是米,换算公式是分辨率resolution=比例尺*0.0254000508/dpi。如果单位是度,换算公式是分辨率resolution=比例尺*0.0254000508/dpi/111194.872221777。根据地图的基本单位选择相应的比例尺与分辨率换算公式,算出相应比例尺的分辨率;
[0018] 将各级比例尺的分辨率算出来后重新配置地图的比例尺结构,然后再加载叠加地图。
[0019] 进一步的,运行的设备的dpi为与屏幕分辨率以及地图比例尺的换算公式的参数。
[0020] 进一步的,地图的坐标系是根据控件gis javascriptAPI获取从地图服务调取地图的坐标系。gis javascriptAPI,是指根据javascript技术实现的调用服务接口的一组脚本。各个gis平台均有自己的javascriptAPI,是提供给地理信息系统开发者的开发语言工具包。
[0021] 进一步的,根据控件gis javascriptAPI的空间参考参数,判断坐标系类型。
[0022] 进一步的,如果单位是米,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi。
[0023] 进一步的,如果单位是度,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi/111194.872221777。
[0024] 一种实现产业动态图层自适应叠加切片地图的系统,包括:
[0025] Dpi获取单元,获取系统运行的设备的dpi作为算法参数;
[0026] 地图的坐标系获取单元,获取地图的坐标系;
[0027] 地图的基本单位判断单元,根据地图的坐标系获取地图的基本单位,如果是投影坐标系,那单位就是米;如果是地理坐标系,单位就是度;
[0028] 分辨率计算单元,根据地图的基本单位选择相应的比例尺与分辨率换算公式,算出相应比例尺的分辨率;
[0029] 比例尺结构重新配置单元,将各级比例尺的分辨率算出来后重新配置地图的比例尺结构,然后再加载叠加地图。
[0030] 进一步的,地图的坐标系获取单元中,地图的坐标系是根据控件gis javascriptAPI获取从地图服务调取地图的坐标系。
[0031] 进一步的,地图的基本单位判断单元中,根据控件gis javascriptAPI的空间参考参数,判断坐标系类型。
[0032] 进一步的,分辨率计算单元中,如果单位是米,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:分辨率resolution=比例尺*0.0254000508/dpi。
[0033] 进一步的,分辨率计算单元中,如果单位是度,根据比例尺与分辨率换算公式,算出相应比例尺的分辨率,换算公式是:
[0034] 分辨率resolution=比例尺*0.0254000508/dpi/111194.872221777。
[0035] 本发明的有益效果:
[0036] 本发明可应用于所有地理信息系统,避免了地图图层数据不显示的问题,降低了返工率,从而提高了开发效率,也提升了系统可靠性,避免了因为地图数据显示不全而造成的某些功能模块的严重bug。因为地图是地理信息系统非常重要的部分,地图数据的精确与否直接关系到系统的价值,因此本发明是一种保证地图数据合理显示的技术,从而也是提升系统可靠性的重要技术。

附图说明

[0037] 图1本发明的流程图。具体实施方式:
[0038] 下面结合附图对本发明进行详细说明:
[0039] 本发明体现到地理信息系统中就是工具类方法实现。
[0040] 因为DPI与分辨率以及地图比例尺有换算关系。如果单位是米,换算公式是resolution=比例尺*0.0254000508/dpi。如果单位是度,换算公式是resolution=比例尺*0.0254000508/dpi/111194.872221777。不同的DPI对应的地图的合适的显示比例尺等级是不一样的,所以地图比例尺的设定要根据不同的DPI进行动态设定,才能保证地图数据在展示的时候不产生bug。
[0041] 如图1所示,首先通过程序算法,利用windowAPI提供的程序方法(如果是移动端,则利用移动端系统API接口提供的方法),获取系统运行的设备(电脑或者移动端)的dpi作为dpi与屏幕分辨率以及地图比例尺的换算公式的参数。然后根据gis javascriptAPI获取从地图服务调取地图的坐标系,并根据坐标系获取地图单位。根据gis javascriptAPI的空间参考参数,判断坐标系类型,如果是投影坐标系,那单位就是米;如果是地理坐标系,单位就是度。然后根据比例尺与分辨率换算公式,算出相应比例尺的分辨率。如果单位是米,换算公式是resolution=比例尺*0.0254000508/dpi。如果单位是度,换算公式是resolution=比例尺*0.0254000508/dpi/111194.872221777。然后将各级比例尺的resolution算出来后重新配置地图的比例尺结构,利用gis javascriptAPI的map类初始化地图的时候,比例尺等级作为map的参数,使得加载后的地图遵循设定的比例尺级数。然后再加载叠加地图,就可以避免地图比例尺不匹配而导致图层数据不显示的情况。
[0042] 本发明还涉及一种实现产业动态图层自适应叠加切片地图的系统,包括:
[0043] Dpi获取单元,获取系统运行的设备的dpi作为算法参数;
[0044] 地图的坐标系获取单元,获取地图的坐标系;
[0045] 地图的基本单位判断单元,根据地图的坐标系获取地图的基本单位,如果是投影坐标系,那单位就是米;如果是地理坐标系,单位就是度;
[0046] 分辨率计算单元,根据地图的基本单位选择相应的比例尺与分辨率换算公式,算出相应比例尺的分辨率;
[0047] 比例尺结构重新配置单元,将各级比例尺的分辨率算出来后重新配置地图的比例尺结构,然后再加载叠加地图。
[0048] 上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。