CN110597941B - 一种地图显示方法与系统 - Google Patents
一种地图显示方法与系统 Download PDFInfo
- Publication number
- CN110597941B CN110597941B CN201910855255.9A CN201910855255A CN110597941B CN 110597941 B CN110597941 B CN 110597941B CN 201910855255 A CN201910855255 A CN 201910855255A CN 110597941 B CN110597941 B CN 110597941B
- Authority
- CN
- China
- Prior art keywords
- map
- target
- layer
- component
- display
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012545 processing Methods 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000009877 rendering Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 7
- 238000004806 packaging method and process Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Instructional Devices (AREA)
- Navigation (AREA)
Abstract
本申请提供了一种地图显示方法与系统,涉及导航技术领域。该地图显示方法应用于终端设备,终端设备上安装有应用程序,应用程序的架构包括业务层、组件层以及地图引擎层;通过利用地图引擎层接收服务器发送的数据信息,其中,数据信息包括地图矢量瓦片与目标矢量瓦片,然后利用组件层对目标矢量瓦片进行解析,以获取目标矢量瓦片的标识信息与目标数据,再利用业务层依据标识信息配置目标数据的显示类型,最后利用组件层依据地图矢量瓦片生成目标地图,并将目标数据按显示类型叠加于目标地图上进行显示。本申请提供的地图显示方法与系统具有能够依据自己的需求定制化目标数据的显示类型,进而使得目标数据的显示样式满足用户的需求。
Description
技术领域
本申请涉及导航技术领域,具体而言,涉及一种地图显示方法与系统。
背景技术
目前,随着导航技术的逐渐进步,越来越多的用户在出门时均依靠导航软件进行导航。
随着移动互联网的发展,人们在出行方面有更多的需求,所以地图APP也不断在丰富其功能设计,其中不仅用于展示路线、导航,还用于展示POI(Point of Interest,兴趣点),如景点POI、餐饮POI、酒店POI等。
现有技术中使用地图引擎的编程接口将POI添加进地图并显示出来,但地图引擎对POI的显示样式有很大限制,只能在几种常见的样式中选择:图标、图标+文字,图标只能是静态图片,不支持动态图片。因POI本身可以非常灵活多变,所以只能使用这几种常见样式已无法满足用户需求。
发明内容
本申请的目的在于提供一种地图显示方法,以解决现有技术中POI的显示样式无法满足用户需求的问题。
本申请的另一目的在于提供一种地图显示系统,以解决现有技术中POI的显示样式无法满足用户需求的问题。
为了实现上述目的,本申请实施例采用的技术方案如下:
一方面,本申请实施例提供了一种地图显示方法,应用于终端设备,所述终端与一服务器通信连接,且所述终端设备上安装有应用程序,所述应用程序的架构包括业务层、组件层以及地图引擎层;所述方法包括:
利用所述地图引擎层接收所述服务器发送的数据信息,其中,所述数据信息包括地图矢量瓦片与目标矢量瓦片;
利用所述组件层对所述目标矢量瓦片进行解析,以获取所述目标矢量瓦片的标识信息与目标数据;
利用所述业务层依据所述标识信息配置所述目标数据的显示类型;
利用所述地图引擎层依据所述地图矢量瓦片生成目标地图,利用所述组件层将所述目标数据按所述显示类型叠加于所述目标地图上进行显示。
另一方面,本申请实施例还提供了一种地图显示系统,所述地图显示系统包括终端设备与服务器,所述终端设备与所述服务器通信连接,且所述终端设备上安装有应用程序,所述应用程序的架构包括业务层、组件层以及地图引擎层;其中,
所述地图引擎层用于接收所述服务器发送的数据信息,其中,所述数据信息包括地图矢量瓦片与目标矢量瓦片;
所述组件层用于对所述目标矢量瓦片进行解析,以获取所述目标矢量瓦片的标识信息与目标数据;
所述业务层用于依据所述标识信息配置所述目标数据的显示类型;
所述地图引擎层用于依据所述地图矢量瓦片生成目标地图,所述组件层用于将所述目标数据按所述显示类型叠加于所述目标地图上进行显示。
相对于现有技术,本申请实施例所提供的地图显示方法与系统具有以下有益效果:
本申请提供了一种地图显示方法与系统,该地图显示方法应用于终端设备,终端与一服务器通信连接,且终端设备上安装有应用程序,应用程序的架构包括业务层、组件层以及地图引擎层;通过利用地图引擎层接收服务器发送的数据信息,其中,数据信息包括地图矢量瓦片与目标矢量瓦片,然后利用组件层对目标矢量瓦片进行解析,以获取目标矢量瓦片的标识信息与目标数据,再利用业务层依据标识信息配置目标数据的显示类型,最后利用地图引擎层依据地图矢量瓦片生成目标地图,同时利用组件层将目标数据按显示类型叠加于目标地图上进行显示。由于本申请提供的应用层的架构中增加了组件层,使得对于数据的处理通过组件层实现,并通过业务层配置目标数据显示类型,再通过组件层进行显示。用户能够依据自己的需求定制化目标数据的显示类型,进而使得目标数据的显示样式满足用户的需求。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
图1为本申请实施例提供的地图显示系统的交互示意图。
图2为本申请实施例提供的终端设备的架构示意图。
图3为本申请实施例提供的地图显示方法的流程图。
图中:100-地图显示系统;110-终端设备;111-地图引擎层;112-组件层;113-业务层;120-服务器;130-第一数据库;140-第二数据库。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本申请的描述中,需要说明的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
在本申请的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
第一实施例
移动端地图应用(下简称地图APP),是一种主要提供基于地图服务的出行APP,例如百度地图、高德地图、探途离线地图、谷歌地图等。
其中,地图APP最初主要以提供路线导航为主,但随着移动互联网的发展,人们在出行方面有更多的需求,所以地图APP也不断在丰富其功能设计。目前的地图APP不仅用于展示路线、导航,还可用于展示POI,如景点POI、餐饮POI、酒店POI等。其中,POI是可以非常多样化的,一方面,样式不同,即不同类型的POI有不同的表示,如一个图标,或图标+文字,或图标+文字+多个可点击的按钮;另一方面,POI的形态不同,可以是静态的,也可是动态的,比如会动的图标,例:天气POI,表示某个地点在下着雨,一个下雨的动态图标。
用户能够在地图上检索和查看POI,进一步的,通过点击POI,来获取此POI的详细信息,或进行交互完成某一任务。例如,用户从地图找到某个酒店的POI,电机该POI,地图会弹出关于此酒店POI的详细信息,包括但不限于该酒店的介绍、价格、预订电话和入口,用户可在其信息界面上直接预订。
为了实现该效果,目前地图APP的设计大体可划分为上下两层:业务层和地图引擎层。其中,地图引擎层负责地图数据的加载、显示、能让用户进行地图缩放、地图移动等操作,地图上的POI被点击时的事件通知。业务层负责实现实际的功能,面向用户一种或多种具体的需求。比如酒店预订功能,或机票比价功能,或景点门票预订等。
当需要展示某种类型的POI时,业务层向服务器请求POI数据列表,请求时带上当前屏幕所显示的地图区域(下简称屏幕地图区域),服务器只返回屏幕地图区域内的POI数据列表,业务层通过调用地图引擎提供的编程接口(专称:API),将POI数据添加进地图,并指定每个POI的样式,从而实现在地图上显示POI的效果。
当用户移动或缩放地图时,需要刷新POI。业务层首先将添加过的POI数据移除,通过调用地图引擎提供的编程接口完成,然后重复上述步骤显示新的POI。业务层监听地图引擎的点击事件,若接收POI被点击的事件,业务层判断是哪个POI,然后弹出针对此POI进行设计的详情页面。
目前提供的地图显示方法存在以下问题:
1、通过地图引擎的编程接口,将POI和路线添加进地图进行显示的方法,只能在数据量小的情况下使用,主要原因为数据量大时容易导致内存占用超出系统限制从而导致APP崩溃。2、业务层对此类需求的开发,目前没有标准,也没有现成支持可复用的开发框架。3、地图引擎并非用于开发“图形用户界面”,因此没有界面布局相关的设计和支持,故不能对POI的显示格式进行自由定制。
有鉴于此,本申请提供了一种地图显示方法,应用于终端设备110,该终端设备110上安装有应用程序,应用程序的架构包括业务层113、组件层112以及地图引擎层111。通过本申请的提供的地图显示方法,能够实现按照用户需求进行POI显示的效果,提升用户体验感。
其中,终端设备110设备可以为用户的手机、电脑、可穿戴设备等电子终端设备110,并且在电子终端设备110上安装有地图APP。与传统的业务层113、地图引擎层111的APP架构不同,本申请提供的APP架构采用业务层113、组件层112以及地图引擎层111,该组件层112内可包括不同的组件,以实现组件层112的不同功能。通过将POI的业务进行组件化,并且提供了编程框架,进而能够实现业务组件跨平台、方便集成一级可共享的目的。
下面对地图显示方法进行的具体说明:
S101,利用地图引擎层响应一目标地点信息。
可以理解地,当用户需要查找一目标地点的地图时,首先需要在APP的搜索框内输入目标地点,对应的,地图引擎层111此时能够响应该请求指令,即获取用户的目标地点信息。
例如,当用户输入广州后,地图引擎层111能够获取用户输入的目标地点信息为广州,然后进行相应位置地图的显示。
当然地,作为本申请的另一种可能的实现方式,当用户并未在搜索框内输入目标地点时,则地图引擎层111默认用户搜索的为当前位置的地图。例如,当用户启动该APP时,此时用户并未输入任何信息,地图引擎层111则默认目标地点信息为当前位置。如通过获取当前GPS定位装置的定位信息的方式确定目标地点信息。
作为一种可选的实现方式,本申请提供地图引擎层111采用mapbox。
S102,利用地图引擎层将目标地点信息发送至服务器。
本申请中,当用户打开APP后,终端设备110与服务器120之间实现通信连接,能够进行数据的交互,其中,当地图引擎层111获取目标地址信息后,会将目标地址信息发送至服务器120,以请求相关数据。
S103,利用地图引擎层接收服务器发送的数据信息,其中,数据信息包括地图矢量瓦片与目标矢量瓦片。
目前主流的地图引擎层111都使用一种称为矢量瓦片的技术来加载地图数据,矢量瓦片是一种地图数据格式,一个瓦片对应地图某一块区域的数据,当用户浏览地图时,地图引擎层111通常只需要加载屏幕地图区域所涉及的瓦片即可,当用户不断移动地图时,地图引擎会自己加载屏幕地图区域涉及瓦片,同时也会将屏幕外的之前加载过的瓦片移除掉,这样就保证了内存不会一直增加。
本申请中,服务器120接收到地图引擎层111发送的目标地址信息后,会依据该目标地址信息获取反馈对应的数据信息给地图引擎层111,以使地图引擎层111能够实现地图与POI数据的显示。
与现有的地图显示方法不同的是,本申请中,POI数据会被转换为矢量瓦片格式存储于服务器120的数据库中,即作为本申请一种可能的实现方式,本申请提供的服务器120,对应两个数据库,其中一个为地图矢量瓦片数据库,用于存储地图矢量瓦片;另一个数据库为POI矢量瓦片数据库,用于存储POI矢量瓦片,以实现对POI数据的管理。其中,POI数据上传至POI矢量瓦片数据库的格式采用KML标准格式。
其中,POI矢量瓦片数据库允许具体业务开发者上传业务需要的POI数据,可以很大量,可包含全世界范围的,同时,上传后的POI数据会被转成矢量瓦片格式,存储于POI矢量瓦片数据库中。同时在APP端,为地图引擎层111增加多一个矢量瓦片来源,指向服务器120的POI矢量瓦片数据库,所以当用户浏览地图时,对于屏幕地图区域,地图引擎会从已配置的瓦片源(包含增加的POI矢量瓦片数据库)同时获取瓦片,最终将所有源的瓦片加载进地图。使得当业务的POI数据(当前屏幕地图范围的)被加载进地图时,组件层112会查询得到,然后会逐个传给此POI数据所属的具体业务并进行处理,从而得到此POI的定制样式。
即可以理解的,当服务器120接收到目标地点信息后,会依据该目标地点信息从地图矢量瓦片数据库与POI矢量瓦片数据库分别获取地图矢量瓦片与目标矢量瓦片,并将地图矢量瓦片与目标矢量瓦片同时发送至地图引擎层111。其中,目标矢量瓦片即为POI矢量瓦片。
并且,说明的是,本申请所述地图显示方法对于地图与POI数据的显示仅为举例,当然地,本申请提供的显示方法也可应用于其它场景,例如,在地图上显示路线,此时服务器120对应设置有地图矢量瓦片数据库与路线矢量瓦片数据库,且地图引擎层111即可获取地图矢量瓦片与路线矢量瓦片,本申请对此并不做任何限定。
S104,利用组件层对目标矢量瓦片进行解析,以获取目标矢量瓦片的标识信息与目标数据。
当地图引擎层111接收到服务器120反馈的地图矢量瓦片与目标矢量瓦片后,会将目标矢量瓦片均传输至组件层112进行处理。
作为本申请的一种实现方式,组件层112可包括收发组件,该收发组件能够接收地图引擎层111发送的目标矢量瓦片,即POI矢量瓦片。
因此本申请提供的地图显示方法利用组件层112实现对POI矢量瓦片的处理。
当组件层112接收到POI矢量瓦片后,会对POI矢量瓦片进行解析,从而获取该POI矢量瓦片对应的标识信息与目标数据。
作为本申请可选的实现方式,组件层112还可包括解析组件,通过解析组件能够实现对目标矢量瓦片的解析。例如,地图引擎层111接收到服务器120发送的POI矢量瓦片可能为数据包的形式,解析组件即可对该数据包进行解析。
为了实现将POI添加到地图上,本申请采用的策略为在地图之上,叠加了一个透明视窗,这个透明视窗由GUI编程库渲染的,所以POI定制样式可以直接显示在这个透明视窗上,但这种显示的位置是基于屏幕坐标系的。
其中,POI本来是跟着地图走的,地图移动和缩放时,POI都要一直显示在它所对应的经纬度在地图上的位置,简单而言POI是基于经纬度显示的,因此目标矢量瓦片包括标识信息与目标数据以及其对应的经纬度信息,并进一步通过组件层112将经纬度信息转换成屏幕坐标信息。
其中,可以理解的,POI的标识信息即为用于识别每个POI类型的信息,目标数据即指该POI的具体数据,例如具体名称等。
作为本申请可能的实现方式,标识信息可以为ID号,通过该ID号,能够确定该POI的具体类型。
所以我们增加了一个“经纬度转屏幕坐标”的组件,一旦地图发生移动或缩放,POI数据的经纬度就会被转为屏幕坐标,组件层112就能将POI显示在正确的位置上。
S105,利用分发组件将不同数据信息分发至不同的组件或业务层进行处理,其中,将标识信息与目标数据分发至业务层,将经纬度信息分发至坐标转换组件。
作为本申请一种可选的实现方式,组件层112中还包括分发组件,当分发组件获取数据后,会将数据对应的分发至相应的处理组件中,例如,为了显示POI,组件层112还包括有图像渲染组件,在组件层112获取POI矢量瓦片后,会将POI矢量瓦片分发至解析组件中进行解析,当解析组件从POI矢量瓦片中解析出标识信息、目标数据以及经纬度信息后,会相应的将数据分发至不同的组件。
其中,分发组件会将经纬度信息分发至专门处理坐标信息的组件,同时,分发组件还会将标识信息与目标数据发送至收发组件,并通过收发组件将标识信息与目标数据发送至业务层113。以实现对数据的处理。
S106,利用业务层依据标识信息配置目标数据的显示类型。
为了确定POI显示的样式,业务层113在接收到组件层112发送的标识信息与目标数据后,会依据标识信息配置目标数据的显示类型。
下面举例进行说明,例如,当某个POI为电影院时,且该电影院的名称为“ABC电影院”,且该电影院正在上映的影片为“abc”,则对应的,此时其标识信息可能为“1”,目标数据包括“ABC电影院”以及“abc”,当业务层113获取信息后,可以依据该标识信息以及预设定的协议确定该POI为电影院,其显示类型可以为一段胶片,即该POI显示的图标为一段胶片,当然地,用户也可以自己配置显示类型,例如将电影院的显示类型配置为一座房子,即该POI显示的图标为一座房子。
由于对于业务层113而言,其仅需要提供对应的POI样式,因此用户能够更加方便且自由的配置POI的现实样式,更能满足用户的需求。
S107,利用地图引擎层依据地图矢量瓦片显示目标地图。
可以理解地,当地图引擎层获取地图矢量瓦片后,可直接依据地图矢量瓦片进行目标地图的显示。
需要说明的是,S107与S104-S106之间并无先后顺序。
S108,利用坐标转换组件将经纬度信息转换为屏幕坐标。
作为本申请一种可能的实现方式,为了直接将POI的坐标转换为屏幕坐标,组件层112中还包括坐标转换组件,其中,当坐标转换组件接收到某个POI对应的经纬度信息后,会将该经纬度信息转换为屏幕坐标。
例如,当用户搜索广州的地图时,对应的,在经度为115.12526777385709,纬度为31.34221594653492的位置设置有一电影院,则组件层112对POI矢量瓦片解析后,能够获取的该POI的经纬度信息为(115.12526777385709,31.34221594653492)。同时,坐标转换组件在获取了该经纬度信息后,会按照当前的转换规则将经纬度信息转换为当前屏幕的坐标,例如转换后的屏幕坐标为(100,100),该坐标为图像渲染组件能够直接使用的屏幕坐标在终端屏幕的对应位置显示该POI图标,进而将POI显示在正确的位置上。
S109,利用组件层将目标数据按显示类型叠加于目标地图上进行显示。
在获取了地图的矢量瓦片后,组件层112会生成用户搜索的目标位置的地图,组件层112在地图之上,叠加了一个透明视窗,这个透明视窗就是由GUI编程库渲染的,所以POI定制样式可以直接显示在这个透明视窗上,作为一种可选的实现方式,本申请提供的GUI编程库采用flutter,其支持在安卓或ios系统下使用,实现了两个系统之间的通用性。
为了实现POI的显示,组件层112还可包括图像渲染组件,可以理解地,图像渲染组件即为GUI处理组件,本申请利用地图引擎层显示目标地图后,当图像渲染组件接收到业务层113发送的业务层113确定的显示类型,及坐标转换组件转换后屏幕坐标后,即可将POI按目标类型显示于地图的固定位置上。
例如,在广州地图上,包括一电影院POI,该电影院POI位于广州的中心位置,且其POI显示类型采用胶片的形式,通过本申请的图像渲染组件,能够在地图引擎层将广州地图进行显示的同时,将该POI显示于广州地图的中心位置,并且用户在观看时,可看到该POI显示的图标为一段胶片。
S110,当利用组件层监听到地图引擎的点击事件时,通过组件层将与点击事件关联的标识信息、目标数据发送至业务层。
在地图显示后,由于用户可能点击该POI,以直接在界面上获取该POI具体的内容,例如,当POI为一电影院时,用户需要在点击该POI后,获取该电影院的详细资料,例如目前正在上映的影片,订票通道等。
为了实现上述功能,在本申请中,组件层112还能能够监听地图引擎层111的点击事件,使得用户在点击POI时,组件层112能够确定用户点击了某个POI。
其中,可以理解的,地图引擎层111实际能够响应在屏幕上某个区域被点击,同时,当组件层112接收到屏幕被点击后,依据被点击的屏幕坐标,能够确定被具体被用户点击的POI。此时则表示用户想要了解该POI的详细信息。
当组件层112确定了被点击的POI后,会将与该点击事件关联的POI的标识信息、目标数据发送至业务层113,并通过业务层113对数据进行封装后进行展示。
S111,利用业务层依据标识信息对目标数据进行封装。
当业务层113对接收到标识信息与目标数据后,首先会依据标识信息确定该POI的封装方式,例如采用地图显示界面的一半区域用于显示POI的详情页,或采用整个屏幕界面显示POI的详情页。进而按照该封装方式对目标数据进行封装。使得对所有基于POI业务,抽象成了由组件层112统一的处理模式,即POI数据加载、指定POI样式、响应POI点击、展示POI详情页均通过组件层112完成,而业务层113只需要提供POI样式,以及POI详情页。
S112,利用组件层对封装后的目标数据进行显示。
当业务层113将POI的详情页封装完成后,业务层113会将封装后的数据再次发送给组件层112,然后由组件层112对封装后的数据进行显示,例如组件沉重采用图像渲染组件进行数POI详情页的显示。
此时,用户能够看到该POI的详情页,例如具体的订票窗口等。
并且,需要说明的是,本申请提供的组件层112采用跨平台编程框架。即组件层112的编程框架能够同时适用于安卓平台或IOS平台,实现平台之间的通用性。
通过将基于POI的业务处理进行插件化(即通过组件层112设置多个组件对POI进行不同处理),并提供了编程框架,实现了业务插件跨平台、方便集成、可共享的目的。
同时,可以理解的,本申请提供的地图显示方法,不但解决了POI样式无法满足用户需求的问题,同时由于将大量的POI转换成矢量瓦片,使得业务层仅需要执行对于显示类型以及POI详情页的确定,因此,即使面向数量较大的POI,也能将核实的POI加载到当前屏幕地图上进行显示,实现了大数量级POI的显示。
第二实施例
请再次参阅图1,本申请实施例还提供了一种地图显示系统100,该地图显示系统包括终端与服务器120,终端设备110上安装有应用程序,应用程序的架构包括业务层113、组件层112以及地图引擎层111,其中,地图引擎层111用于接收服务器120发送的数据信息,其中,数据信息包括地图矢量瓦片与目标矢量瓦片,组件层112用于对目标矢量瓦片进行解析,以获取目标矢量瓦片的标识信息与目标数据,业务层113用于依据标识信息配置目标数据的显示类型,地图引擎层111用于依据地图矢量瓦片生成目标地图,组件层112用于将目标数据按显示类型叠加于目标地图上进行显示。
并且,在本实施例中,地图显示系统100还包括第一数据库130与第二数据库140,第一数据库130与第二数据库140均与服务器120通信连接,其中,第一数据库130用于存储地图矢量瓦片,第二数据库140用于存储目标矢量瓦片。
同时,组件层112还用于当监听到地图引擎的点击事件时,将与点击事件关联的标识信息、目标数据发送至业务层113,业务层113用于依据标识信息对目标数据进行封装,组件层112用于对封装后的目标数据进行显示。
综上所述,本申请提供了一种地图显示方法与系统,该地图显示方法应用于终端设备,终端与一服务器通信连接,且终端设备上安装有应用程序,应用程序的架构包括业务层、组件层以及地图引擎层;通过利用地图引擎层接收服务器发送的数据信息,其中,数据信息包括地图矢量瓦片与目标矢量瓦片,然后利用组件层对目标矢量瓦片进行解析,以获取目标矢量瓦片的标识信息与目标数据,再利用业务层依据标识信息配置目标数据的显示类型,最后利用地图引擎层依据地图矢量瓦片生成目标地图,同时利用组件层将目标数据按显示类型叠加于目标地图上进行显示。由于本申请提供的应用层的架构中增加了组件层,使得对于数据的处理通过组件层实现,并通过业务层配置目标数据显示类型,再通过组件层进行显示。用户能够依据自己的需求定制化目标数据的显示类型,进而使得目标数据的显示样式满足用户的需求。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
Claims (8)
1.一种地图显示方法,其特征在于,应用于终端设备,所述终端与一服务器通信连接,且所述终端设备上安装有应用程序,所述应用程序的架构包括业务层、组件层以及地图引擎层;所述方法包括:
利用所述地图引擎层接收所述服务器发送的数据信息,其中,所述数据信息包括地图矢量瓦片与目标矢量瓦片;
利用所述组件层对所述目标矢量瓦片进行解析,以获取所述目标矢量瓦片的标识信息与目标数据;
利用所述业务层依据所述标识信息配置所述目标数据的显示类型;
利用所述地图引擎层依据所述地图矢量瓦片生成目标地图,利用所述组件层将所述目标数据按所述显示类型叠加于所述目标地图上进行显示;其中,
所述组件层包括坐标转换组件与图像渲染组件,在所述利用所述组件层对所述目标矢量瓦片进行解析的步骤之后,获取的信息还包括经纬度信息;所述利用所述组件层依据所述地图矢量瓦片生成目标地图,并将所述目标数据按所述显示类型叠加于所述目标地图上进行显示的步骤包括:
利用所述图像渲染组件依据所述地图矢量瓦片显示目标地图;
利用所述坐标转换组件将所述经纬度信息转换为屏幕坐标;
利用所述图像渲染组件依据所述屏幕坐标将目标数据按所述显示类型叠加于所述地图上进行显示;
在所述利用所述地图引擎依据所述地图矢量瓦片生成目标地图,利用所述组件层将所述目标数据按所述显示类型叠加于所述目标地图上进行显示的步骤之后,所述地图显示方法还包括:
当利用组件层监听到所述地图引擎的点击事件时,通过所述组件层将与所述点击事件关联的所述标识信息、所述目标数据发送至所述业务层;
利用所述业务层依据所述标识信息对所述目标数据进行封装;其中,所述业务层删除原有的POI,并显示新的POI;
利用所述组件层对封装后的目标数据进行显示。
2.如权利要求1所述的地图显示方法,其特征在于,所述组件层还包括解析组件,所述利用所述组件层对所述目标矢量瓦片进行解析的步骤包括:
利用所述解析组件对所述目标矢量瓦片进行解析,以获取所述目标矢量瓦片携带的标识信息、目标数据以及经纬度信息。
3.如权利要求2所述的地图显示方法,其特征在于,所述组件层还包括分发组件,在所述利用所述组件层对所述目标矢量瓦片进行解析的步骤之后,所述地图显示方法还包括:
利用所述分发组件将不同数据信息分发至不同的组件或业务层进行处理,其中,将所述标识信息与所述目标数据分发至业务层,将所述经纬度信息分发至坐标转换组件。
4.如权利要求1所述的地图显示方法,其特征在于,所述组件层采用跨平台编程框架。
5.如权利要求1所述的地图显示方法,其特征在于,所述标识信息包括ID号。
6.一种地图显示系统,其特征在于,所述地图显示系统包括终端设备与服务器,所述终端设备用于执行如权利要求1至5任一项所述的地图显示方法,所述终端设备与所述服务器通信连接,且所述终端设备上安装有应用程序,所述应用程序的架构包括业务层、组件层以及地图引擎层;其中,
所述地图引擎层用于接收所述服务器发送的数据信息,其中,所述数据信息包括地图矢量瓦片与目标矢量瓦片;
所述组件层用于对所述目标矢量瓦片进行解析,以获取所述目标矢量瓦片的标识信息与目标数据;
所述业务层用于依据所述标识信息配置所述目标数据的显示类型;
所述地图引擎层用于依据所述地图矢量瓦片生成目标地图,所述组件层用于将所述目标数据按所述显示类型叠加于所述目标地图上进行显示。
7.如权利要求6所述的地图显示系统,其特征在于,所述地图显示系统还包括第一数据库与第二数据库,所述第一数据库与所述第二数据库均与所述服务器通信连接,其中,
所述第一数据库用于存储地图矢量瓦片,所述第二数据库用于存储目标矢量瓦片。
8.如权利要求6所述的地图显示系统,其特征在于,所述组件层还用于当监听到所述地图引擎的点击事件时,将与所述点击事件关联的所述标识信息、所述目标数据发送至所述业务层;
所述业务层用于依据所述标识信息对所述目标数据进行封装;
所述组件层用于对封装后的目标数据进行显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910855255.9A CN110597941B (zh) | 2019-09-11 | 2019-09-11 | 一种地图显示方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910855255.9A CN110597941B (zh) | 2019-09-11 | 2019-09-11 | 一种地图显示方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110597941A CN110597941A (zh) | 2019-12-20 |
CN110597941B true CN110597941B (zh) | 2023-12-29 |
Family
ID=68858739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910855255.9A Active CN110597941B (zh) | 2019-09-11 | 2019-09-11 | 一种地图显示方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110597941B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651536A (zh) * | 2020-04-28 | 2020-09-11 | 平安医疗健康管理股份有限公司 | 数据处理方法及装置 |
CN112714148A (zh) * | 2020-11-10 | 2021-04-27 | 海尔数字科技(青岛)有限公司 | 一种界面配置方法、装置、设备及介质 |
CN114625814A (zh) * | 2020-12-11 | 2022-06-14 | 成都鼎桥通信技术有限公司 | 图标显示方法、装置及电子设备 |
CN112632207A (zh) * | 2020-12-25 | 2021-04-09 | 江西裕丰智能农业科技有限公司 | 一种在安卓系统加载瓦片图层的方法 |
CN112966062B (zh) * | 2021-03-12 | 2023-04-07 | 平安国际智慧城市科技股份有限公司 | 地图加载方法、系统和计算机设备 |
CN113688174A (zh) * | 2021-08-19 | 2021-11-23 | 北京鼎普科技股份有限公司 | 一种基于地图实时数据统计展示的方法 |
CN115080779A (zh) * | 2022-05-11 | 2022-09-20 | 中科星图股份有限公司 | 基于网页数字地球的矢量瓦片绘制方法、装置和设备 |
CN115080679B (zh) * | 2022-07-19 | 2023-06-06 | 苏州万店掌网络科技有限公司 | 一种地图组件封装方法、装置、设备及介质 |
CN116736971B (zh) * | 2022-10-17 | 2024-07-23 | 荣耀终端有限公司 | 一种地图数据处理方法、地图显示方法及设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040083338A (ko) * | 2003-03-19 | 2004-10-01 | 팅크웨어(주) | 이동 통신 단말기를 이용한 네비게이션 시스템 및 방법 |
CN101390140A (zh) * | 2006-02-27 | 2009-03-18 | 株式会社纳维泰 | 地图显示系统、poi检索条件的输入方法及poi向导显示方法以及终端装置 |
CN104933057A (zh) * | 2014-03-18 | 2015-09-23 | 北京图盟科技有限公司 | 一种地图服务提供方法及装置 |
CN107066472A (zh) * | 2016-11-30 | 2017-08-18 | 阿里巴巴集团控股有限公司 | 地图显示方法及系统、终端及地图服务器 |
CN107423445A (zh) * | 2017-08-10 | 2017-12-01 | 腾讯科技(深圳)有限公司 | 一种地图数据处理方法、装置及存储介质 |
CN107656962A (zh) * | 2017-08-09 | 2018-02-02 | 百度在线网络技术(北京)有限公司 | 电子地图中的全景显示方法、服务器及计算机可读介质 |
CN108509239A (zh) * | 2018-03-07 | 2018-09-07 | 斑马网络技术有限公司 | 图层显示方法、装置、电子设备及存储介质 |
CN109002452A (zh) * | 2017-06-07 | 2018-12-14 | 杭州海康威视系统技术有限公司 | 地图瓦片更新方法、装置及计算机可读存储介质 |
CN109741436A (zh) * | 2018-12-04 | 2019-05-10 | 北京世纪高通科技有限公司 | 一种渲染矢量数据的方法及装置 |
CN110209756A (zh) * | 2019-06-17 | 2019-09-06 | 广东电网有限责任公司清远供电局 | 一种输电运维的地图交互方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286021B2 (en) * | 2012-06-22 | 2016-03-15 | Google Inc. | Displaying map layers in order |
-
2019
- 2019-09-11 CN CN201910855255.9A patent/CN110597941B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040083338A (ko) * | 2003-03-19 | 2004-10-01 | 팅크웨어(주) | 이동 통신 단말기를 이용한 네비게이션 시스템 및 방법 |
CN101390140A (zh) * | 2006-02-27 | 2009-03-18 | 株式会社纳维泰 | 地图显示系统、poi检索条件的输入方法及poi向导显示方法以及终端装置 |
CN104933057A (zh) * | 2014-03-18 | 2015-09-23 | 北京图盟科技有限公司 | 一种地图服务提供方法及装置 |
CN107066472A (zh) * | 2016-11-30 | 2017-08-18 | 阿里巴巴集团控股有限公司 | 地图显示方法及系统、终端及地图服务器 |
CN109002452A (zh) * | 2017-06-07 | 2018-12-14 | 杭州海康威视系统技术有限公司 | 地图瓦片更新方法、装置及计算机可读存储介质 |
CN107656962A (zh) * | 2017-08-09 | 2018-02-02 | 百度在线网络技术(北京)有限公司 | 电子地图中的全景显示方法、服务器及计算机可读介质 |
CN107423445A (zh) * | 2017-08-10 | 2017-12-01 | 腾讯科技(深圳)有限公司 | 一种地图数据处理方法、装置及存储介质 |
CN108509239A (zh) * | 2018-03-07 | 2018-09-07 | 斑马网络技术有限公司 | 图层显示方法、装置、电子设备及存储介质 |
CN109741436A (zh) * | 2018-12-04 | 2019-05-10 | 北京世纪高通科技有限公司 | 一种渲染矢量数据的方法及装置 |
CN110209756A (zh) * | 2019-06-17 | 2019-09-06 | 广东电网有限责任公司清远供电局 | 一种输电运维的地图交互方法及系统 |
Non-Patent Citations (2)
Title |
---|
基于浏览器的矢量数据可视化系统;王楠;封雷;;计算机与现代化(01);48-54 * |
矢量瓦片支持下的在线交互可视化工具设计与实现;宋磊;霍亮;方敏;鲍鹏;王锐;王金地;;测绘通报(04);133-138 * |
Also Published As
Publication number | Publication date |
---|---|
CN110597941A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110597941B (zh) | 一种地图显示方法与系统 | |
US11521499B2 (en) | Interactive and customizable flight planning tool | |
CN108509239B (zh) | 图层显示方法、装置、电子设备及存储介质 | |
JP5334911B2 (ja) | 3次元地図画像生成プログラムおよび3次元地図画像生成システム | |
TWI393860B (zh) | 藉由辨識網頁資訊來導覽地理位置的方法與系統 | |
WO2016180023A1 (zh) | 展示、提供地图数据的方法、终端、服务器和计算机设备 | |
CN102754097A (zh) | 用于呈现内容的第一人世界视图的方法和装置 | |
CN103069370A (zh) | 用于在增强现实中自动地生成建议的信息层的方法、装置和计算机程序产品 | |
US20140253557A1 (en) | User-based map manufacturing apparatus | |
JP2014135026A (ja) | 表示システム、サーバ、端末装置、表示方法およびプログラム | |
JP5289379B2 (ja) | 地図表示装置、方法、プログラム及び地図表示サーバ | |
CN107229386A (zh) | 容纳多路点路由的导航应用编程接口 | |
WO2006107039A1 (ja) | 検索サーバ | |
CN112035209A (zh) | 地图数据处理方法、装置、设备及计算机存储介质 | |
JP2004085779A (ja) | 電子地図上で空間情報を描画する方法及びコンピュータ・プログラム | |
CN107229461A (zh) | 导航应用编程接口 | |
Bertolotto et al. | Bus catcher: A context sensitive prototype system for public transportation users | |
Deidda et al. | An example of a tourist location-based service (LBS) with open-source software | |
KR101754304B1 (ko) | Poi별 특화된 정보 서비스를 제공하는 방법 및 시스템 | |
KR20120133875A (ko) | 지도기반의 다층 구조를 갖는 웹페이지 메뉴 컨트롤을 위한 사용자 인터페이스 제공방법 및 그 시스템 | |
JP2003296522A (ja) | 行動予定管理サーバ及びシステム並びにプログラム | |
JP2003169358A (ja) | 情報提供システム、情報提供方法、携帯端末装置、基地局装置およびサーバ | |
KR101434961B1 (ko) | 위치 기반 어플리케이션을 개발하는 방법 및 장치 | |
Deidda et al. | A tourist location based service (lbs) for the Cagliari city | |
Thota | Programming MapPoint in. NET: Creating Location-Based Applications |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |