CN108256127A - 一种可定制样式的气象地图系统 - Google Patents
一种可定制样式的气象地图系统 Download PDFInfo
- Publication number
- CN108256127A CN108256127A CN201810181833.0A CN201810181833A CN108256127A CN 108256127 A CN108256127 A CN 108256127A CN 201810181833 A CN201810181833 A CN 201810181833A CN 108256127 A CN108256127 A CN 108256127A
- Authority
- CN
- China
- Prior art keywords
- map
- tile
- data
- module
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
- Instructional Devices (AREA)
Abstract
本发明公开一种可定制样式的气象地图系统,服务器端提供实时读取并解析气象数据,并将其生成空间矢量数据,根据客户端提供的地图样式xml描述文件,生成大图,并将大图切割成规格的瓦片;将瓦片按照TMS规则统一组织和瓦片文件压缩,并详细记录所有日志;客户端提供地图样式设置,将样式设置描述成xml文件发送给服务器,从服务器获取瓦片数据,提供地图浏览和交互;客户端和服务器之间的通信采用当下流行的高效率的ZeroMq消息队列,并对瓦片数据收发进行MD5效验,保证数据收发完整无误。
Description
技术领域
本发明属于气象领域,具体涉及一种可定制样式的气象地图系统。
背景技术
随着科技的发展,信息化已经在各个方面拥有着越发重要的地位。信息化给人类带来的方便,使我们的生活发生了翻天覆地的改变。进入21世纪以后,信息化的建设进一步引起世界各国的重视。信息化作用在信息化管理方面表现尤为突出。信息化管理的优点有:节约人力,操作方便,简单易学,快速实现,避免错误等。其中气象领域的信息化的重要性也越来越突出,对展示丰富的气象地理信息以及对自然灾害作出合理的预测都很有意义。
气象信息往往是建立在地理信息之上,在地理信息上显示气象信息就是气象地图。气象地图首先需要搭建基础地图,地图数据通常体量较大,需要充足的带宽和数据渲染能力,这就催生了瓦片地图系统(TMS,Tile Map System)。因为生成、获取和显示多张小图片,比操作一张大图片要容易和高效得多。TMS的理念是:在服务端把地图渲染成图片,客户端根据视窗大小、移动位置、缩放等级等信息去调用服务器图片来显示。瓦片地图金字塔模型是一种多分辨率层次模型,从瓦片金字塔的底层到顶层,分辨率越来越低,但表示的地理范围不变。首先确定地图服务平台所要提供的缩放级别的数量N,把缩放级别最低、地图比例尺最大的地图图片作为金字塔的底层,即第0层,并对其进行分块,从地图图片的左上角开始,从左至右、从上到下进行切割,分割成相同大小(比如256x256像素)的正方形地图瓦片,形成第0层瓦片矩阵。在第0层地图图片的基础上,按每2x2像素合成为一个像素的方法生成第1层地图图片,并对其进行分块,分割成与下一层相同大小的正方形地图瓦片,形成第1层瓦片矩阵。采用同样的方法生成第2层瓦片矩阵……如此下去,直到第(N-1)层,构成整个瓦片金字塔。
气象地图在搭建好基础地图后,还需要在地图上标注气象符号。气象符号是直观表达气象要素的一种可视化工具,在实际应用中,主要变现为天气现象符号和云状符号,作为传递气象信息的手段之一,在气象信息的处理、实况显示和传递中起着不可替代的作用。气象符号由不同形状和大小的图形组成,在实况显示的相应区域呈现天气现象和云状。目前,行业中广泛使用的各种气象资料实时处理和显示软件对气象符号的图形化显示大多是基于计算机程序语言中的绘图函数实现的,灵活性、维护性和扩展性不高。由美国ESRI公司开发的ArcGIS中也提供了气象符号字体库,安装到Windows系统中的Font文件夹后,可以作为普通字体被系统调用。但在其提供的气象符号库中,可用的符号数量无法满足我国气象业务的需求,在使用中经常带来很多的不便,因此有必要制作出一套更加全面的气象符号库。本系统采用代数的方法进行气象符号库的制作,这种符号化的方法是把符号的制作和调用、显示完全分开,首先使用绘图软件和字体编辑器制作气象符号库,然后将生成的TrueType字体进行安装,由系统调用。
气象地图区别于一般的地图,不仅能显示气象符号,还能支持多种地图样式以及改变地图样式。比如某一区域将降暴雨,就需要将该区域用红色显示表示预警。要实现这种可定制地图样式的需求,就需要定义一套描述地图渲染样式的特征属性,本系统采用xml格式来定义地图的样式属性,这些属性主要包括地图的图层结构、每层图层上点线面的属性等。选用了Mapnik地图渲染引擎,Mapnik是一个开源的C++编写的GIS工具包,它可以把数据形式的地图,包含一些地理对象,如地图、图层、数据源、特征和地理几何等,通过一个xml样式表的定义,渲染成位图格式。通过改变xml样式表,来达到定制地图样式的目的。
整个气象地图系统采用C/S构架。服务器层用于地图自定义样式生成,气象符号的可视化,瓦片生成工具。客户层用于地图的浏览,交互。数据层用于存储地图资源数据和地图瓦片数据。且瓦片系统特性决定了对大范围的地图快速缩放交互,浏览细节等特点。整个系统集成了解析气象数据,生成空间矢量数据,解析地图样式,生成地图样式统一描述文件,渲染大图,气象符号渲染,瓦片切割,瓦片统一组织调用,地图浏览交互,文件压缩与解压缩,客户端与服务器通信等一整套功能,涉及到对空间矢量数据操作,对栅格数据操作,数据通信等。目的在于方便气象工作相关人员使用浏览地图,进行快速交互响应,且能对气象信息实时查看追踪,对自然灾害作出监视预测。系统具有很好的普适性,方便其他领域根据需要进行二次开发。
发明内容
本发明提供一种可定制样式的气象地图系统,方便气象工作相关人员使用浏览地图,进行快速交互响应,且能对气象信息实时查看追踪,对自然灾害作出监视预测,提高了工作效率,减少人力开支。
本系统包括客户端和服务器端。包含解析气象数据模块,生成空间矢量数据模块,解析地图样式模块,生成地图样式统一描述文件模块,渲染大图模块,气象符号渲染模块,瓦片切割模块,瓦片统一组织调用模块,地图浏览交互模块,文件压缩与解压缩模块,客户端与服务器通信模块,日志系统模块。
服务器端提供实时读取并解析气象数据,并将其生成空间矢量数据,空间矢量数据采用两种格式:Shape File和JSON。根据客户端提供的地图样式xml描述文件,生成大图,并将大图切割成规格的瓦片。将瓦片按照TMS规则统一组织和瓦片文件压缩,并详细记录所有日志。
客户端提供地图样式设置,将样式设置描述成xml文件发送给服务器。从服务器获取瓦片数据,提供地图浏览和交互。
客户端和服务器之间的通信采用当下流行的高效率的ZeroMq消息队列,并对瓦片数据收发进行MD5效验,保证数据收发完整无误。
附图说明
图1为本系统的结构原理图。
具体实施方式
如图1所示,气象地图的客户端主要包括地图样式设置、地图浏览、缩放交互、查看详情等功能。气象地图的服务器主要包括生成地图、气象符号可视化、系统工具模块。数据层包括空间矢量数据和地图瓦片数据。
一、样式设置将地图的所有特征用一个xml文件描述,地图的图层结构就是xml的树状结构,每一个图层又包含了一个地理数据源及多个风格,风格包含多个规则,一个规则可以包含多种符号,不同的符号包含不同的属性设置,以线(LineSymbolizer)为例,包含stroke(颜色)、stroke-width(宽度)、透明度(stroke-opacity)、线相交处模式(stroke-linejoin)、线头模式(stroke-linecap)、线段绘制迭代间隔(stroke-dasharray)等。一个基本的地图样式描述xml如下:
客户端将这个地图样式xml文件发送给服务器,服务器由这个xml来生成这个样式的地图,实现可定制样式的需求。
二、按照《国家地理信息公共服务平台电子地图数据规范》第6.4章规定的瓦片数据组织方式,将瓦片以缩放等级、行号、列号进行组织存储。地图浏览时,用户通过鼠标滑轮滚动,来切换地图的缩放等级,并进行相应瓦片的调用。缩放等级越大,需要调度的瓦片就越多,而用户的显示屏幕尺寸是固定的。为了适应这一特点,进行快速瓦片调度,构架起“场景—视图—项”的通用模型。“场景”即指当前缩放等级下所有瓦片拼接成的大图,“视图”即指用户显示屏幕区域,“项”即指当前缩放等级的一张张瓦片地图。在用户浏览地图时,当切换到缩放等级的“场景”很大,大于“视图”,也就是说用户屏幕“装”不下这整个地图时,就没有必要一次性把“场景”中的“项”都显示出来,只需要把“视图”中的“项”显示出来,把“场景”中的“项”缓存它们的索引。当用户拖动屏幕查看其它区域的地图位置时,也就是改变“视图”位置,就查找“场景”缓存的索引,把“视图”区域内的“项”显示出来。用户切换缩放等级,就清空缓存的索引,建立新等级下“场景”的索引。这样的一个机制,在满足地图浏览要求的前提下,有效的减轻了系统的处理任务量,提高了交互响应速度。
三、查看详细地理信息,获取瓦片系统缩放等级和平面坐标,并由此计算出对应的经纬度坐标,将经纬度坐标发送给服务器,服务器去查询这个经纬度坐标下的地理信息回复给客服端。
相关公式:
Lon=Scene_x÷(tile_size×pow(2,zoom_level))×360-180;
Lat=90-Scene_y÷(tile_size×pow(2,zoom_level))×180;
Scene_x=(Lon+180)÷360×(tile_size×pow(2,zoom_level));
Scene_y=(90-Lat)÷180×(tile_size×pow(2,zoom_level));
四、渲染地图采用了Mapnik地图引擎,Mapnik是一个开源的Python/C++地图渲染引擎,他的功能是把数据形式的地图,包含一些地理对象,如地图、层、数据源、特征和地理几何等,通过一个样式表的定义,渲染成位图格式,用来提供GIS服务。一个最基本的地图渲染API调用例子如下:
mapnik::Map m(256,256);
mapnik::load_map(m,"path/to/file.xml");
m.zoom_all();
mapnik::image_rgba8im(256,256);
mapnik::agg_renderer<mapnik::image_rgba8>ren(m,im);
ren.apply();
mapnik::save_to_file(im,"the_image.png");
五、生成空间矢量数据,空间矢量数据采用两种格式:ShapeFile和GeoJSON。ShapeFile文件是描述空间数据的几何和属性特征的非拓扑实体矢量数据结构的一种格式,由ESRI公司开发。一个ShapeFile文件至少包含三个文件:主文件(*.shp)存储地理要素的几何图形;索引文件(*.shx)存储图形要素与属性信息索引;dBase表文件(*.dbf)存储要素信息属性的dBase表。ShapeFile适合表达以线、面、几何集合为主的数据,所以系统中将地理数据统一用ShapeFile。系统调用了C编写的开源的Shapelib库,将气象数据转换为ShapeFile数据。GeoJSON是一种对各种地理数据结构进行编码的格式,基于Javascript对象表示法的地理空间信息数据交换格式。GeoJSON对象可以表示几何、特征或者特征集合。GeoJSON格式空间矢量数据方便编辑,适合表达以点为主的数据,所以系统中将气象数据统一用GeoJSON。
六、气象符号的图形化显示,系统使用了Font Creator软件制作了气象符号字体。每个符号都有名称和电码,名称描述了天气现象,电码是这个符号的索引。解析气象要素数据,将实际的气象要素数字转换成相对应的符号电码。程序自动根据电码去查找字体库得到字体符号,将符号渲染出来。
七、瓦片的组织,所有缩放层级下的瓦片构成了一个瓦片金字塔模型。缩放层级0包含1张瓦片,缩放层级1包含4张瓦片,缩放层级2包含16张瓦片,以此类推。按照《国家地理信息公共服务平台电子地图数据规范》第6.4章规定的瓦片数据组织方式,将瓦片以缩放等级、行号、列号进行组织存储。每个地图瓦片可分成四级目录:第一级为瓦片总目录,第二级为瓦片缩放等级,第三级为瓦片所在行号,第四级为瓦片块,瓦片以列号命名。这样瓦片以位置信息作为存储位置索引,直观方便,便于快速调用。
八、系统中的切片工具,将大图根据缩放层级来切割成多个瓦片。系统采用了GDI+图形库来操作png格式的图片的裁剪。
九、系统中的文件压缩工具,将瓦片文件压缩和解压缩,方便服务器向客户端发送瓦片数据。系统用C++封装了ZipLib库,能高效地处理文件压缩和解压缩操作。
十、客户端和服务器之间的通信,采用了当下流行且高效的ZeroMq消息队列。ZeroMq将消息通信分成四种模型,分别是一对一结对模型(Exclusive-Pair)、请求回应模型(Request-Reply)、发布订阅模型(Publish-Subscribe)、推拉模型(Push-Pull)。系统主要用到了推拉模型,因为瓦片数据较大,推拉模型能很好的进行并行任务处理,提高了传输效率。在每一次瓦片数据传输完成后,将进行MD5效验,保证数据的完整性和正确性。
Claims (2)
1.一种可定制样式的气象地图系统,其特征在于,包括:解析气象数据模块,生成空间矢量数据模块、解析地图样式模块、生成地图样式统一描述文件模块、渲染大图模块,气象符号渲染模块、瓦片切割模块、瓦片统一组织调用模块、地图浏览交互模块,文件压缩与解压缩模块、客户端与服务器通信模块、日志系统模块,其中,
服务器端提供实时读取并解析气象数据,并将其生成空间矢量数据,根据客户端提供的地图样式xml描述文件,生成大图,并将大图切割成规格的瓦片;将瓦片按照TMS规则统一组织和瓦片文件压缩,并详细记录所有日志;
客户端提供地图样式设置,将样式设置描述成xml文件发送给服务器,从服务器获取瓦片数据,提供地图浏览和交互;
客户端和服务器之间的通信采用当下流行的高效率的ZeroMq消息队列,并对瓦片数据收发进行MD5效验,保证数据收发完整无误。
2.如权利要求1所述的可定制样式的气象地图系统,其特征在于,空间矢量数据采用两种格式:ShapeFile和GeoJSON;
ShapeFile文件是描述空间数据的几何和属性特征的非拓扑实体矢量数据结构格式,一个ShapeFile文件至少包含三个文件:主文件(*.shp)存储地理要素的几何图形;索引文件(*.shx)存储图形要素与属性信息索引;dBase表文件(*.dbf)存储要素信息属性的dBase表;
GeoJSON为对各种地理数据结构进行编码的格式,基于Javascript对象表示法的地理空间信息数据交换格式,GeoJSON对象可以表示几何、特征或者特征集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810181833.0A CN108256127A (zh) | 2018-03-06 | 2018-03-06 | 一种可定制样式的气象地图系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810181833.0A CN108256127A (zh) | 2018-03-06 | 2018-03-06 | 一种可定制样式的气象地图系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108256127A true CN108256127A (zh) | 2018-07-06 |
Family
ID=62745776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810181833.0A Pending CN108256127A (zh) | 2018-03-06 | 2018-03-06 | 一种可定制样式的气象地图系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108256127A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245206A (zh) * | 2019-06-20 | 2019-09-17 | 腾讯科技(深圳)有限公司 | 地图样式的获取方法、装置、服务器、终端及存储介质 |
CN110457408A (zh) * | 2019-06-24 | 2019-11-15 | 平安国际智慧城市科技股份有限公司 | 个性化地图下载方法、装置、设备及存储介质 |
CN113190418A (zh) * | 2021-07-01 | 2021-07-30 | 奇安信科技集团股份有限公司 | 日志接收方法、装置、电子设备及存储介质 |
CN113553532A (zh) * | 2021-09-22 | 2021-10-26 | 青岛恒天翼信息科技有限公司 | 一种基于气象数据解析和渲染的综合展示系统 |
CN113761101A (zh) * | 2021-10-13 | 2021-12-07 | 史原东 | 一种矢量瓦片电子地图自定义配图系统及方法 |
CN114090937A (zh) * | 2021-11-29 | 2022-02-25 | 重庆市地理信息和遥感应用中心 | 一种城市空间特征区域自动划分系统 |
CN114625992A (zh) * | 2022-03-14 | 2022-06-14 | 国家气象信息中心(中国气象局气象数据中心) | 一种百兆级气象网络数据的可视化方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010016528A (ko) * | 2000-12-18 | 2001-03-05 | 이봉규 | Gis 기반의 도로 기상 정보 제공 방법 및 시스템 |
CN103744999A (zh) * | 2014-01-23 | 2014-04-23 | 中国人民解放军国防科学技术大学 | 基于层次划分存储结构的空间矢量数据在线交互制图方法 |
CN106373176A (zh) * | 2016-09-23 | 2017-02-01 | 上海图聚智能科技股份有限公司 | 通过lua配置地图样式的方法 |
CN106682104A (zh) * | 2016-12-05 | 2017-05-17 | 中国科学院遥感与数字地球研究所 | 一种基于Web的空间数据专题图动态定制方法 |
-
2018
- 2018-03-06 CN CN201810181833.0A patent/CN108256127A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010016528A (ko) * | 2000-12-18 | 2001-03-05 | 이봉규 | Gis 기반의 도로 기상 정보 제공 방법 및 시스템 |
CN103744999A (zh) * | 2014-01-23 | 2014-04-23 | 中国人民解放军国防科学技术大学 | 基于层次划分存储结构的空间矢量数据在线交互制图方法 |
CN106373176A (zh) * | 2016-09-23 | 2017-02-01 | 上海图聚智能科技股份有限公司 | 通过lua配置地图样式的方法 |
CN106682104A (zh) * | 2016-12-05 | 2017-05-17 | 中国科学院遥感与数字地球研究所 | 一种基于Web的空间数据专题图动态定制方法 |
Non-Patent Citations (2)
Title |
---|
尹振良: "青海省气象灾情评估预警地理信息系统设计与实现", 《中国优秀硕士学位论文全文数据库 基础科学辑》 * |
田庆等: "《ArcGIS地理信息系统详解》", 31 May 2014, 北京希望电子出版社 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110245206A (zh) * | 2019-06-20 | 2019-09-17 | 腾讯科技(深圳)有限公司 | 地图样式的获取方法、装置、服务器、终端及存储介质 |
CN110245206B (zh) * | 2019-06-20 | 2023-08-25 | 腾讯科技(深圳)有限公司 | 地图样式的获取方法、装置、服务器、终端及存储介质 |
CN110457408A (zh) * | 2019-06-24 | 2019-11-15 | 平安国际智慧城市科技股份有限公司 | 个性化地图下载方法、装置、设备及存储介质 |
CN113190418A (zh) * | 2021-07-01 | 2021-07-30 | 奇安信科技集团股份有限公司 | 日志接收方法、装置、电子设备及存储介质 |
CN113553532A (zh) * | 2021-09-22 | 2021-10-26 | 青岛恒天翼信息科技有限公司 | 一种基于气象数据解析和渲染的综合展示系统 |
CN113553532B (zh) * | 2021-09-22 | 2021-12-28 | 青岛恒天翼信息科技有限公司 | 一种基于气象数据解析和渲染的综合展示系统 |
CN113761101A (zh) * | 2021-10-13 | 2021-12-07 | 史原东 | 一种矢量瓦片电子地图自定义配图系统及方法 |
CN114090937A (zh) * | 2021-11-29 | 2022-02-25 | 重庆市地理信息和遥感应用中心 | 一种城市空间特征区域自动划分系统 |
CN114625992A (zh) * | 2022-03-14 | 2022-06-14 | 国家气象信息中心(中国气象局气象数据中心) | 一种百兆级气象网络数据的可视化方法及系统 |
CN114625992B (zh) * | 2022-03-14 | 2022-11-22 | 国家气象信息中心(中国气象局气象数据中心) | 一种百兆级气象网络数据的可视化方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108256127A (zh) | 一种可定制样式的气象地图系统 | |
CN105069020B (zh) | 自然资源数据三维可视化方法和系统 | |
CN110751696B (zh) | 将BIM模型数据转化为glTF数据的方法、装置、设备及介质 | |
CN103019682B (zh) | 一种通过自定义图形组合在svg中展示数据的方法 | |
CN110503718B (zh) | 三维工程模型轻量化显示方法 | |
Ruzinoor et al. | A review on 3D terrain visualization of GIS data: techniques and software | |
CN104317842A (zh) | 基于地理信息技术智能数据提取生成专题图引擎 | |
CN113032513A (zh) | 一种针对空间地理数据的切片方法及渲染方法 | |
CN112817651A (zh) | 一种基于Canvas画布的图形生成方法及系统 | |
CN114862999A (zh) | 一种打点渲染方法、装置、设备及存储介质 | |
CN111553129A (zh) | 一种基于canvas的svg与echarts图形融合方法 | |
CN104166715A (zh) | VxWorks平台电子海图引擎 | |
CN104317972B (zh) | 一种动态图层感应方法及系统 | |
CN116912361A (zh) | 基于mapbox-gl的3D注记编辑方法及系统 | |
CN113495933A (zh) | 一种矢量瓦片显示方法及系统 | |
CN112287497A (zh) | 基于osg的三维电网潮流图可视化方法 | |
CN104616099A (zh) | 一种电网潮流数据对比与分析的图形展示方法 | |
US11978160B2 (en) | GPU-based digital map tile generation method and system | |
CN115691772A (zh) | 运营可视化系统及相应计算机设备和存储介质 | |
CN113240786B (zh) | 一种视频点云渲染方法、装置、电子设备及存储介质 | |
CN116107972A (zh) | 一种轻量级的海洋标量场可视化方法 | |
Li et al. | A Framework for Interactive Online 3D Visualization of Electric Information | |
CN112184874A (zh) | 一种轻量化三维模型高性能图形标记、进度模拟及导航方法 | |
CN108829934B (zh) | 一种高频电力流数据可视化系统 | |
CN113449061A (zh) | 基于5g网络的建筑智能化运维云平台系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180706 |
|
RJ01 | Rejection of invention patent application after publication |