CN115544186A - 地图显示方法、装置与终端设备 - Google Patents
地图显示方法、装置与终端设备 Download PDFInfo
- Publication number
- CN115544186A CN115544186A CN202110739759.1A CN202110739759A CN115544186A CN 115544186 A CN115544186 A CN 115544186A CN 202110739759 A CN202110739759 A CN 202110739759A CN 115544186 A CN115544186 A CN 115544186A
- Authority
- CN
- China
- Prior art keywords
- tile
- sub
- map
- screen
- level
- 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
- 238000000034 method Methods 0.000 title claims abstract description 99
- 238000009877 rendering Methods 0.000 claims abstract description 70
- 230000006870 function Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 34
- 230000008569 process Effects 0.000 description 28
- 230000006854 communication Effects 0.000 description 26
- 238000004891 communication Methods 0.000 description 25
- 238000005516 engineering process Methods 0.000 description 23
- 230000000694 effects Effects 0.000 description 18
- 238000012545 processing Methods 0.000 description 15
- 238000007726 management method Methods 0.000 description 11
- 238000010295 mobile communication Methods 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 8
- 238000012360 testing method Methods 0.000 description 7
- 230000005236 sound signal Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
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
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3664—Details of the user input interface, e.g. buttons, knobs or sliders, including those provided on a touch screen; remote controllers; input using gestures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3667—Display of a road map
- G01C21/367—Details, e.g. road map scale, orientation, zooming, illumination, level of detail, scrolling of road map or positioning of current position marker
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/56—Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Instructional Devices (AREA)
- User Interface Of Digital Computer (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
Abstract
本申请提供一种地图显示方法、装置与终端设备,涉及地图显示技术领域,其中,该方法包括显示第一界面,第一界面显示第一地图区域;接收用户的第一操作;响应于第一操作,显示第二界面。第二界面包括多个子屏幕区域,多个子屏幕区域包括第一子屏幕区域和位于第一子屏幕区域上方的第二子屏幕区域;第一子屏幕区域中的瓦片为第一瓦片,第二子屏幕区域中的瓦片为第二瓦片,第二瓦片的层级小于第一瓦片的层级。本申请提供的技术方案可以降低显示3D地图所需的流量、功耗和渲染开销。
Description
技术领域
本申请涉及电子地图技术领域,尤其涉及一种地图显示方法、装置与终端设备。
背景技术
电子地图可以为人们提供兴趣点(point of interest,POI)查询、导航和路径规划等服务,是人们日常生活中重要的应用软件之一。其中,三维(three dimensional,3D)地图能够从三维立体的角度展现建筑物和道路等地图元素,更加真实的还原现实世界,因而受到了众多用户的青睐。
用户在使用3D地图时,可以通过倾斜地图平面,使地图展示更大的视野范围,从而用户可以看到更远方的地图。但是,地图展示视野增大,会使展示的地图数据量呈指数增长,这样流量、功耗和渲染开销等指标也会随之增加。
发明内容
有鉴于此,本申请提供一种地图显示方法、装置与终端设备,用于降低展示3D地图所需的流量、功耗和渲染开销。
为了实现上述目的,第一方面,本申请实施例提供一种地图显示方法,应用于终端设备,包括:
显示第一界面,第一界面显示第一地图区域;
接收用户的第一操作;
响应于所述第一操作,显示第二界面,第二界面包括多个子屏幕区域,多个所述子屏幕区域包括第一子屏幕区域和位于所述第一子屏幕区域上方的第二子屏幕区域;
所述第一子屏幕区域中的瓦片为第一瓦片,第二子屏幕区域中的瓦片为第二瓦片,所述第二瓦片的层级小于所述第一瓦片的层级。
其中,第一地图区域显示的地图可以是2D地图或3D地图。
本实施例提供的地图显示方法,在显示地图时,可以在各子屏幕区域中加载显示不同层级的瓦片,其中,上方的子屏幕区域中的瓦片的层级小于下方的子屏幕区域中的瓦片的层级,这样可以有效的降低地图远处区域所需的地图数据量,因而可以降低流量、功耗和渲染开销,进而可以使终端设备能够支持各种大小视野的3D地图展示需求,而且,该方案也能够向用户展示远处的地图数据,因而也可以提升用户的使用体验。
在第一方面的一种可能的实施方式中,所述第二界面为导航界面或显示非导航地图的界面。
在第一方面的一种可能的实施方式中,所述第一操作包括下列中的至少一种操作:开启导航模式的操作、改变地图平面的倾斜角的手势操作、对目标控件的点击操作、地图缩放操作和地图平移操作。
在第一方面的一种可能的实施方式中,所述第二界面中包括第一物体,当所述第一物体全部位于所述第一子屏幕区域中时,显示所述第一物体对应的3D模型;
当所述第一物体的第一部分位于所述第一子屏幕区域,第二部分位于所述第二子屏幕区域时,显示所述第一部分对应的3D模型,不显示所述第二部分对应的3D模型;
当所述第一物体全部移动至所述第二子屏幕区域中时,不显示所述第一物体对应的3D模型。
通过上述实施方式,可以使第一物体在从第一子屏幕区域移动到第二子屏幕区域的过程中,在视觉上可以呈现出3D模型在经过第一子屏幕区域与第二子屏幕区域之间的分界线时逐渐消失的效果,这样可以提升用户的视觉体验。
在第一方面的一种可能的实施方式中,所述第一地图区域中的瓦片为第三瓦片,所述第一瓦片的层级等于所述第三瓦片的层级。
其中,第一地图区域中显示的第三瓦片可以是2D地图。
在第一方面的一种可能的实施方式中,所述第二瓦片中不包括3D模型。这样第二子屏幕区域中不显示3D模型,从而可以进一步减少所需的地图数据量。
在第一方面的一种可能的实施方式中,所述第一瓦片中包括3D模型。
在第一方面的一种可能的实施方式中,所述方法还包括:
响应于用户的第二操作,开启或关闭多层级显示模式,其中,在多层级显示模式下地图显示区域能够显示多个层级的瓦片。
通过上述实施方式,可以使用户开启或关闭多层级显示模式,从而可以提高地图显示的灵活性,进而可以提升用户体验。
在第一方面的一种可能的实施方式中,所述方法还包括:
响应于用户的第三操作,启动或关闭在非导航模式下关闭多层级显示模式的功能,其中,在多层级显示模式下地图显示区域能够显示多个层级的瓦片。
通过上述实施方式,可以使用户自由选择是否在非导航模式下关闭多层级显示模式,从而可以提高地图显示的灵活性,进而可以提升用户体验。
在第一方面的一种可能的实施方式中,所述响应于所述第一操作,显示第二界面,包括:
响应于所述第一操作,在所述第二界面待显示的地图平面的倾斜角大于或等于目标角度的情况下,显示所述第二界面。
上述实施方式中,在待显示的地图平面的倾斜角大于或等于目标角度的情况下,采用多层级显示模式显示地图,这样可以在保证终端开销的情况下进一步提升用户体验。
在第一方面的一种可能的实施方式中,所述响应于所述第一操作,显示第二界面,包括:
响应于所述第一操作,对屏幕的地图显示区域进行划分,得到所述多个子屏幕区域;
获取第一瓦片和第二瓦片;
根据各所述第一瓦片和各所述第二瓦片,渲染并显示第二界面。
在第一方面的一种可能的实施方式中,所述获取第一瓦片和第二瓦片,包括:
确定所述第一瓦片的标识和所述第二瓦片的标识;
根据所述第一瓦片的标识和所述第二瓦片的标识,获取所述第一瓦片和所述第二瓦片。
在第一方面的一种可能的实施方式中,所述确定所述第一瓦片的标识和所述第二瓦片的标识,包括:
根据待显示的目标层级确定所述地图显示区域待显示的地理范围;
根据所述地图显示区域待显示的地理范围,确定所述第一子屏幕区域待显示的地理范围和所述第二子屏幕区域待显示的地理范围;
根据所述目标层级确定所述第一瓦片的层级和所述第二瓦片的层级,其中,所述第一瓦片的层级等于所述目标层级;
根据第一子屏幕区域待显示的地理范围和所述第一瓦片的层级,确定所述第一瓦片的标识;
根据第二子屏幕区域待显示的地理范围和所述第二瓦片的层级,确定所述第二瓦片的标识。
在第一方面的一种可能的实施方式中,所述获取所述第一瓦片和所述第二瓦片,包括:
向服务器发送瓦片请求,所述瓦片请求中携带所述第一瓦片的标识和/或所述第二瓦片的标识;
接收所述服务器返回的所述标识对应的瓦片。
在第一方面的一种可能的实施方式中,所述第一子屏幕区域的面积大于所述第二子屏幕区域的面积。这样可以为用户展示较大范围的高层级瓦片,从而便于用户更好的获取地图信息。
在第一方面的一种可能的实施方式中,所述多个子屏幕区域还包括第三子屏幕区域,所述第三子屏幕区域位于所述第一子屏幕区域与所述第二子屏幕区域之间;
所述第三子屏幕区域中的瓦片为第四瓦片,所述第四瓦片的层级小于所述第一瓦片的层级,且大于所述第二瓦片的层级。
其中,第三子屏幕区域可以是一个或多个。
上述实施方式中,终端设备在显示地图时,可以根据需求划分更多的子屏幕区域,从而可以提高地图显示的灵活性。
第二方面,本申请实施例提供一种终端设备,包括:存储器和处理器,存储器用于存储计算机程序;处理器用于在调用计算机程序时执行上述第一方面或第一方面的任一实施方式所述的方法。
第三方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面或第一方面的任一实施方式所述的方法。
第四方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面或第一方面的任一实施方式所述的方法。
第五方面,本申请实施例提供一种芯片系统,包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现上述第一方面或第一方面的任一实施方式所述的方法。其中,所述芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
图1为本申请实施例提供的一种地图显示界面示意图;
图2为本申请实施例提供的另一种地图显示界面示意图;
图3为本申请实施例提供的地图服务系统示意图;
图4为本申请实施例提供的瓦片金字塔模型示意图;
图5为本申请实施例提供的瓦片坐标示意图;
图6为本申请实施例提供的地图元素与几何元素类型的对应关系示意图;
图7为本申请实施例提供的一种地图显示方法的流程示意图;
图8为本申请实施例提供的一种用户界面示意图;
图9为本申请实施例提供的另一种用户界面示意图;
图10为本申请实施例提供的一种瓦片加载流程示意图;
图11为本申请实施例提供的子屏幕区域划分结果示意图;
图12为本申请实施例提供的瓦片确定流程示意图;
图13为本申请实施例提供的一种地图显示效果示意图;
图14为本申请实施例提供的另一种地图显示效果示意图;
图15为本申请实施例提供的一种瓦片显示效果示意图;
图16为本申请实施例提供的另一种瓦片显示效果示意图;
图17为本申请实施例提供的渲染模型示意图;
图18为本申请实施例提供的一种渲染原理示意图;
图19为本申请实施例提供的一种模块交互示意图;
图20为本申请实施例提供的另一种渲染原理示意图;
图21为本申请实施例提供的另一种模块交互示意图;
图22-图23为本申请实施例提供的又一些渲染原理示意图;
图24为本申请实施例提供的另一种地图显示方法的流程示意图;
图25为本申请实施例提供的另一种瓦片加载流程示意图;
图26为本申请实施例提供的又一种地图显示效果示意图;
图27为本申请实施例提供的又一种瓦片显示效果示意图;
图28为本申请实施例提供的地图显示装置的结构示意图;
图29为本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。本申请实施例的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
电子地图在展示地图时,一般都是实时下载所需的地图数据,然后进行渲染和显示。电子地图展示的地图的丰富程度与地图数据量息息相关,地图数据量越大,终端设备的流量消耗就越大,同时也需要更多的渲染开销,这样终端设备的功耗也就越大。
目前的电子地图大多都可以同时提供二维(two dimensional,2D)地图和3D地图,其中,在展示3D地图时,地图平面的倾斜角越大,地图所展示的视野越大,即用户可以看到地图更远的地方。随之而来的是需要更大的地图数据量,这样就会产生更大的流量、功耗和渲染开销。
为了降低展示3D地图时所需的流量、功耗和渲染开销,参见图1,一种相关的技术方案是减小地图平面的倾斜角,使地图远处区域(即视野尽头处)不用加载更多的地图数据,以减小所需的地图数据量。其中,图1中的(a)示出了非导航模式下的一种3D地图显示界面,在非导航模式下,用户可以通过相关操作(比如双指下滑操作)增大地图平面的倾斜角,以增大地图展示的视野,但是用户可改变的最大倾斜角被限制在一个较小的角度;图1中的(a)示出了导航模式下的一种3D地图显示界面,如图1中的(b)所示,在导航模式下,电子地图在导航过程中自动采用较小的地图平面倾斜角,来减小所需的地图数据量。
参见图2,另一种相关的技术方案是在地图平面的倾斜角达到一定角度时,地图远处区域用天空颜色替代,使远处区域不用加载更多的地图瓦片数据,以减小所需的地图数据量。
上述这两种方案,第一种方案在减小地图平面倾斜角的同时,也牺牲了一定的视野展示,而视野展示在地图使用中十分重要,尤其是在导航中,大的视野有助于用户了解前方更多的路况信息,因此低视野会影响用户的使用体验。第二种方案用天空颜色替代远处的地图信息,用户就无法看到远处的地图数据,这样也会影响用户的使用体验。
基于此,本申请实施例提供一种地图显示方法,主要通过在地图展示的过程中,对屏幕的地图显示区域进行划分,让展示近处地图的下部分屏幕区域加载目标层级的地图瓦片数据,展示远处地图的上部分屏幕区域加载比目标层级低的地图瓦片数据,来降低流量、功耗和渲染开销的同时,使电子地图可以有更大的视野展示和更好的使用体验。
首先介绍本申请实施例涉及的系统。请参阅图3,图3为本申请实施例提供的地图服务系统示意图,如图3所示,地图服务系统可以包括:终端设备100和服务器200。
其中,终端设备100可以为具有显示、运算和网络访问功能的电子设备,例如,终端设备100可以是手机、车载终端、智能穿戴设备或个人计算机等可展示地图的设备,其中,智能穿戴设备可以包括智能手表和智能眼镜等,个人计算机可以包括平板电脑、笔记本电脑和台式电脑等。图3中以终端设备100为手机为例进行示例性说明。
用户可以通过终端设备100上的与地图相关的应用程序(application,APP)、小程序或系统功能等软件使用地图功能,其中,与地图相关的APP可以包括各种地图APP、浏览器APP、游戏APP和定位APP等;小程序也可以包括各种地图小程序、浏览器小程序、游戏小程序和定位小程序等。为了便于说明,后续以地图APP为例示例性说明本申请的技术方案。
终端设备100上的地图相关软件可以通过展示的地图提供定位、POI查询、导航和路径规划等服务,其中,终端设备100展示的地图类型可以包括2D地图、3D地图、热力图、卫星图、地形图、室内地图、公交地图和自定义图层等。
服务器200用于提供地图数据,终端设备100可以从服务器200获取待显示的地图数据,然后进行渲染和显示。
具体地,服务器200中的地图数据可以是基于瓦片地图技术生成的一系列瓦片(tile),终端设备100可以根据所要显示的地理范围确定所需的瓦片,下载完成后进行渲染拼接,从而显示出一幅完整的地图。
其中,瓦片地图技术通过多尺度分级切割,将大尺寸的地图(例如世界地图)划分为一系列等尺寸(例如256*256像素)的地图切片,划分成的每一块地图切片称为瓦片(tile),这些瓦片形成如图4所示的金字塔模型。
瓦片金字塔模型是一种多分辨率层次模型,从瓦片金字塔模型的底层到顶层,分辨率越来越低,但表示的地理范围不变。以世界地图为例,除最底层之外,如图4所示,将任意一层的瓦片均划分为4个正方形的瓦片,可以形成该层瓦片的高一层瓦片,即瓦片的层级越高,组成世界地图的瓦片数越多,可以展示的地图越详细。瓦片金字塔模型所包含的瓦片层数可以根据所需的地图详细程度确定,例如,可以将世界地图划分为20个层级,图4中示例性的示出了顶部前三层的瓦片地图。
如图4所示,最小的瓦片层级为0,此时世界地图由一张瓦片组成;层级为1的瓦片地图包含4个瓦片,层级为2的瓦片地图包含16个瓦片,以此类推,层级为n的瓦片地图包含4n个瓦片。
每一层的瓦片构成一个瓦片矩阵,通过瓦片的层级号和行列号可以唯一确定一个瓦片。图5中示出了第2层的瓦片坐标示意图,如图5所示,可以以世界地图的左上角为原点,对每个瓦片进行编号,每个瓦片即具有所在层级的唯一坐标,其中,坐标x对应行号,坐标y对应列号;在编号时,也可以采用坐标z表示瓦片的层级,如图5中所示,第2层的各瓦片的坐标z的值则均为2。
可以理解的是,瓦片的编号方式不限于上述坐标方式,也可以采用其他方式,例如采用三位数字的方式表示,第1位数字可以表示层级,第2位数字可以表示瓦片的行号,第3为数字可以表示瓦片的列号。另外,瓦片坐标系的原点也不限于世界地图的左上角,也可以是世界地图的左下角或中心位置,本申请实施例对这些都不做特别限定。
瓦片由一组图层组成,每个图层包含一些几何要素。如图6所示,瓦片中的几何要素可以包括:点、线、面和3D模型,其中,点类型的几何要素描述的地图元素可以包括:POI、点云和热力图等,线类型的几何要素描述的地图元素可以包括:路网(包括公路、铁路等)、边界线和水系骨架等,面类型的几何要素描述的地图元素可以包括:区域、海洋和绿地等,3D模型类型的几何要素描述的地图元素可以包括3D建筑物和3D道路等。
不同层级的瓦片中包含的地图元素的几何要素类型可以不同,例如,低层级的瓦片中可以包含线类型和面类型的地图元素,高层级的瓦片中可以包括点、线、面和3D模型类型的地图元素。
本实施例中,终端设备100在展示2D地图时,可以根据屏幕上地图显示区域的大小、终端设备100的当前位置和待显示的地图瓦片层级(此处称为目标层级),确定待显示的地理范围,然后确定出该目标层级下能够覆盖该地理范围的瓦片的坐标,从服务器200下载所确定的瓦片坐标对应的瓦片,对下载的瓦片进行渲染后显示在地图显示区域。
3D地图包含的地图元素较多,且随着地图平面倾斜角的增大,所涉及的地理范围也更大,即所要显示的地图信息越多。为了降低所需的地图数据量,同时保证电子地图可以有更大的视野展示和更好的视觉体验,本实施例中,终端设备100在展示3D地图时,可以将屏幕上的地图显示区域划分成多个纵向排布的子屏幕区域,在不同的子屏幕区域展示不同层级的瓦片,其中,最下方的子屏幕区域中可以展示目标层级的瓦片地图,各子屏幕区域按照从下往上的顺序,所展示的瓦片的层级可以逐渐降低。
下面分别以划分的子屏幕区域包括两个和三个的情况为例,说明本申请的地图显示方法。
图7为本申请实施例提供的一种地图显示方法的流程示意图,如图7所示,该方法可以包括如下步骤:
步骤S110、终端设备检测用户的第一操作。
具体地,第一操作可以触发终端设备显示3D地图,终端设备可以在显示2D地图或3D地图的过程中,检测用户针对地图显示界面进行的第一操作。
当终端设备显示2D地图时,能够触发终端设备显示3D地图的第一操作可以是开启导航模式的操作,例如,用户在2D地图显示界面上选择完路线后点击“开始导航”控件,地图APP即进入导航模式,并自动采用3D地图进行导航。
第一操作也可以是预设的手势操作,比如用户可以在2D地图显示界面上通过多指触摸下滑或上滑操作改变地图平面的倾斜角,当待显示的地图平面的倾斜角大于0时,终端设备可以响应用户的操作,显示对应倾斜角的3D地图。
可以理解的是,预设的手势操作不限于上述多指触摸下滑操作和多指触摸上滑操作,其也可以是其他操作,比如也可以是隔空手势操作,本实施例对此不做特别限定。
第一操作也可以是用户在地图显示界面上进行的针对目标控件的点击操作,图8为本申请实施例提供的一种用户界面示意图,如图8中的(a)所示,地图显示界面上可以提供“图层选择”控件101,当地图显示界面上显示的是2D地图时,用户可以点击该控件;如图8中的(b)所示,地图显示界面上可以弹出“图层选择”控件101对应的侧边栏,侧边栏中包括地图类型选择栏,用户可以在弹出的地图类型选择栏中选择“3D地图”对应的控件102;如图8中的(c)所示,地图显示界面上显示的地图即从2D地图切换为3D地图;之后,如图8中的(c)和(d)所示,用户可以点击侧边栏之外的区域关闭侧边栏。
其中,地图类型选择栏中还可以包括其他地图类型的选项,比如图8中的(b)所示的卫星图;另外,“图层选择”控件101对应的侧边栏中还可以提供其他功能选项,比如图8中的(b)所示的显示栏中提供的“路况”控件和“收藏”控件等,其中,“路况”控件用于控制地图显示界面是否显示路况,“收藏”控件用于控制地图显示界面是否显示收藏地点;此外,“图层选择”控件101对应的界面不限于侧边栏,也可以是弹窗等形式。对于“图层选择”控件101对应的侧边栏中具体包含的地图类型的种类和功能选项的种类,以及“图层选择”控件101对应的界面,本实施例均不做特别限定。
当终端设备显示2D地图时,能够触发终端设备显示3D地图的第一操作也可以是上述预设的手势操作,比如用户可以在3D地图显示界面上通过多指触摸下滑或上滑操作改变地图平面的倾斜角,当待显示的地图平面的倾斜角大于0时,终端设备可以响应用户的操作,显示对应倾斜角的3D地图。
第一操作还可以是用户在3D地图显示界面上进行的地图缩放操作或地图平移操作。
需要说明的是,本申请实施例所述的用户输入的各种操作既可以是上述的手动输入操作,也可以语音指令输入操作,为了便于说明,本申请实施例中以手动输入操作为例进行示例性说明。
如前所述,本实施例中,可以在显示3D地图时,在地图显示区域中展示多个层级的瓦片,即在地图显示区域中采用多层级显示方式显示。为了满足用户的不同需求,本实施例中,可以提供多层级显示模式的开关功能,用户可以通过该功能开启或关闭多层级显示模式。
图9为本申请实施例提供的另一种用户界面示意图,如图9所示,在具体实现时,可以在地图设置界面中提供“多层级显示模式”的开关控件201,用户可以通过点击开关控件201选择开启或关闭多层级显示模式,即终端设备接收到用户对开关控件201的点击操作(此处称为第二操作)后,在多层级显示模式处于关闭状态的情况下,可以开启多层级显示模式;在多层级显示模式处于开启状态的情况下,可以关闭多层级显示模式。图9中示例性的示出了用户将多层级显示模式从关闭状态(参见图9中的(a))切换为开启状态(参见图9中的(b))的过程。
可以理解的是,“多层级显示模式”的开关功能的实现方式不限于上述开关控件201,也可以采用其他方式,比如可以采用两个单选控件实现,本实施例对此不做特别限定。
考虑到非导航模式下的地图数据量相对少些,为了更好的满足用户的不同需求,本实施例中,可以提供非导航模式下关闭多层级显示模式的开关功能。
具体实现时,如图9所示,可以在地图设置界面中提供“非导航时关闭多层级显示模式”的开关控件202,用户可以通过点击开关控件202(此处称为第三操作)选择是否在非导航模式下关闭多层级显示模式。图9中示例性的示出了用户将“非导航模式下关闭多层级显示模式”的功能从开启状态(参见图9中的(b))切换为关闭状态(参见图9中的(c))的过程。其中,当开关控件202处于开启状态时,表示不可以在非导航模式下采用多层级显示模式显示3D地图;当开关控件202处于关闭状态时,表示可以在非导航模式下采用多层级显示模式显示3D地图。
在一种可选的实施方式中,如图9中的(a)和(b)所示,开关控件202可以在开关控件201处于开启状态的情况下显示,在开关控件201处于关闭状态的情况下不显示。在显示开关控件202时,开关控件202可以如图9中的(b)所示的,默认处于关闭状态;也可以默认处于开启状态。
另外,该地图设置界面还可以包括其他地图设置选项,例如图9中所示的“地图显示字体”设置选项,用于控制地图显示界面是否显示“地图缩放按钮”的开关控件、“Wi-Fi下自动更新离线数据包”的开关控件等,本实施例对地图设置界面的内容不做特别限定。
可以理解的是,多层级显示模式开关功能和非导航模式下关闭多层级显示模式的开关功能的实现方式不限于上述设置开关控件的方式,也可以采用其他方式,比如可以采用手势识别方式,在检测到用户在地图显示界面上进行的第一目标手势操作(即第二操作)时,开启多层级显示模式;在检测到用户在地图显示界面上进行的第二目标手势操作(即第三操作)时,在非导航模式下关闭多层级显示模式。
在多层级显示模式开启的情况下,终端设备可以在显示3D地图时都采用多层级显示方式显示;考虑到地图平面的倾斜角较小时,所需的地图数据量相对较少,本实施例中,为了提升用户体验,可以在待显示的地图平面的倾斜角达到目标角度的情况下,采用多层级显示方式显示3D地图。
其中,目标角度可以根据实际需求设置,例如可以是10度,本实施例对此不做特别限定。
步骤S120、终端设备响应于第一操作,对屏幕的地图显示区域进行划分,得到第一子屏幕区域和位于第一子屏幕区域上方的第二子屏幕区域。
在采用多层级显示方式显示3D地图时,如上所述,可以在不同的子屏幕区域显示不同层级的瓦片。参见图10和图11中的(a),在划分子屏幕区域时,终端设备可以确定屏幕中地图显示区域的大小(此处示例性的为2400*1080像素),并确定区域划分比例(此处示例性的为1:3);然后根据该区域划分比例划分地图显示区域,如图11中的(b)所示,可以得到上下两部分子屏幕区域:第一子屏幕区域(1800*1080像素)和位于第一屏幕区域上方的第二子屏幕区域(600*1080像素)。
其中,地图显示区域可以是屏幕中的部分或全部区域,例如在分屏模式下,地图显示区域为其中一个分屏区域的大小。为了便于说明,本申请实施例中以地图显示区域为屏幕的全部区域为例进行示例性说明。
地图显示区域的大小可以用屏幕尺寸表示,也可以用图10和图11中所示的屏幕分辨率表示,本实施例对此不做特别限定。
区域划分比例可以是预先设置的固定比例,例如,区域划分比例可以预先设置为图10中所示的1:3或其他比例。
区域划分比例也可以根据地图显示区域的大小确定。在具体实现时,可以预先设置地图显示区域的大小与子屏幕区域划分数量之间的对应关系(称为第一对应关系),以及子屏幕区域划分数量与屏幕划分比例之间的对应关系(称为第二对应关系),然后根据这两个对应关系确定区域划分比例。
例如,第一对应关系中,每个子屏幕区域划分数量可以设置对应的地图显示区域的高度和宽度范围,对于较小的屏幕,地图显示区域对应比较小,此时可以划分两个子屏幕区域;对于较大的屏幕,地图显示区域对应比较大,此时可以划分三个或更多的子屏幕区域。图10和图11中是以子屏幕区域划分数量为两个为例进行示例性说明。
第二对应关系中,每个子屏幕区域划分数量对应的屏幕划分比例可以根据需要设置,例如图10中所示的,对于子屏幕区域包括两个的情况,上部分子屏幕区域与下部分子屏幕区域的大小之比(即屏幕划分比例)可以为1:3。
为了提高用户的使用体验,在划分子屏幕区域时,第一子屏幕区域的面积大于第二子屏幕区域的面积,这样可以为用户展示较大范围的高层级瓦片,从而便于用户更好的获取地图信息。
另外,在显示地图时,可以竖屏显示,也可以横屏显示;当竖屏显示时,如图10和图11中所示,第一子屏幕区域的大小为1800*1080像素,第二子屏幕区域的大小为600*1080像素;当横屏显示时,第一子屏幕区域的大小则为2400*810像素,第二子屏幕区域的大小则为2400*270像素。为了便于说明,本实施例中均以竖屏显示为例进行示例性说明。
步骤S130、终端设备确定第一子屏幕区域中待显示的第一瓦片的标识和第二子屏幕区域中待显示的第二瓦片的标识,第二瓦片的层级小于第一瓦片的层级。
在划分了子屏幕区域后,本实施例中,终端设备可以先确定每个子屏幕区域中待显示的瓦片,然后获取相关瓦片。其中,每个瓦片可以具有唯一的标识,终端设备在确定瓦片时,具体可以确定瓦片的标识。
具体地,在一些实施例中,如图12所示,终端设备确定每个子屏幕区域中待显示的瓦片(步骤S130)可以包括如下步骤:
步骤S131、确定地图显示区域待显示的第一地理范围。
在具体实现时,可以先确定待显示的目标层级和目标中心点坐标(即地图显示区域待显示的地理范围的中心点坐标);然后根据目标层级、目标中心点坐标和地图显示区域的大小,确定终端设备待显示的地理范围(即第一地理范围)。
其中,目标层级即为待显示的3D地图对应的2D地图的地图瓦片层级,即将待显示的3D地图切换为2D地图时,2D地图所显示的瓦片的层级。目标层级可以是预设的,也可以是根据用户的操作或预设的地图显示策略确定的,其中,在打开地图APP时,地图APP显示的首帧地图可以采用预设的层级作为目标层级;在用户进行缩放操作后,终端设备可以根据当前层级和用户的缩放操作确定目标层级;在导航过程中,终端设备可以根据终端设备的当前位置和预设的地图显示策略确定目标层级。
目标中心点坐标也即地图显示区域的中心点的地理位置坐标,其可以根据终端设备的当前位置、用户的操作或预设的地图显示策略确定。其中,在打开地图APP时,地图APP显示的首帧地图的目标中心点坐标可以是终端设备的当前位置;在用户进行地图移动操作后,终端设备可以根据当前的中心点坐标和用户的地图移动操作确定目标中心点坐标;在导航过程中,地图APP可以根据终端设备的当前位置、当前的中心点坐标和预设的地图显示策略确定目标中心点坐标。
以打开地图APP显示首帧地图为例,终端设备可以采用预设的层级(比如16级)作为目标层级,并将终端设备的当前位置作为目标中心点坐标,然后根据目标层级、目标中心点坐标和屏幕大小可以确定出第一地理范围。
其中,终端设备的当前位置可以采用经纬度或其他坐标表示方式表示,第一地理范围可以通过地图显示区域的四个顶点对应的地理位置坐标表示。
步骤S132、根据第一地理范围分别确定第一子屏幕区域和第二子屏幕区域待显示的第二地理范围。
在确定了整个地图显示区域对应的第一地理范围后,根据第一子屏幕区域和第二子屏幕区域的划分规则,即可确定出每个子屏幕区域待显示的地理范围(即第二地理范围)。例如,第二子屏幕区域与第一子屏幕区域的区域划分比例为1:3,相应的,第二子屏幕区域对应的第二地理范围与第一子屏幕区域对应的第二地理范围的大小之比即为1:3,即采用与子屏幕区域划分规则类似的方式将第一地理范围按照1:3的比例划分,即可得到第一子屏幕区域对应的第二地理范围与第二子屏幕区域对应的第二地理范围。
具体地,根据地图显示区域的四个顶点的地理位置坐标,可以确定出第一子屏幕区域和第二子屏幕区域之间的分界线两端的地理位置坐标,则第一子屏幕区域对应的第二地理范围可以通过地图显示区域下端的两个顶点和分界线的两个端点的地理位置坐标表示;第二子屏幕区域对应的第二地理范围可以通过地图显示区域上端的两个顶点和分界线的两个端点的地理位置坐标表示。
步骤S133、确定第一子屏幕区域待显示的瓦片的层级和第二子屏幕区域待显示的瓦片的层级。
在步骤S133中,确定各子屏幕区域对应的瓦片的层级时,第一子屏幕区域对应的瓦片的层级可以等于目标层级,该目标层级即为上述步骤S131中,第一地理范围对应的层级,例如图10中所示的16级;第二子屏幕区域对应的瓦片的层级可以比目标层级低若干个层级(此处称为第一预设层级),例如图10中所示的,第二子屏幕区域对应的瓦片的层级为14级,即第一预设层级为两级。
在一些实施例中,考虑到3D模型所需要的地图数据量会比较多,为了进一步减少所需的地图数据量,对于第二子屏幕区域,可以为其待显示的瓦片的层级设置一个上限级别,即第二子屏幕区域对应的瓦片的层级可以低于预设层级(此处称为第二预设层级),其中,第二预设层级对应的瓦片中包括3D模型,比第二预设层级低一个层级的瓦片中不包括3D模型。例如,在第一子屏幕区域对应的瓦片的层级为18级的情况下,假设第一预设层级为两级,第二预设层级为16级,根据规则第二子屏幕区域对应的瓦片的层级比第一子屏幕区域对应的瓦片的层级低两级,那么,第二子屏幕区域为16级,考虑到16级的瓦片包括3D模型,3D模型所需要的地图数据量会比较多;因此,第一子屏幕区域对应的瓦片的层级为18级的情况下,设置第二子屏幕区域为15级,15级的瓦片中不包括3D模型,因而可以减少地图数据量。
也就是说,在第一子屏幕区域对应的瓦片的层级小于18级的情况下,第二子屏幕区域对应的瓦片的层级比第一子屏幕区域对应的瓦片的层级低两级;在第一子屏幕区域对应的瓦片的层级大于或等于18级的情况下,第二子屏幕区域对应的瓦片的层级均为15级。为了便于说明,后续以第二预设层级为16级为例进行示例性说明,即瓦片的层级为16级以上时包括3D模型,低于16级时不包括3D模型。
步骤S134、对于每个子屏幕区域,根据该子屏幕区域对应的第二地理范围和待显示的瓦片的层级,确定该子屏幕区域中待显示的瓦片的标识。
基于瓦片划分规则,所述终端设备的APP中设置有对应的瓦片标识确定算法。在确定了每个子屏幕区域待显示的地理范围和瓦片的层级后,对于每个子屏幕区域,即可根据该子屏幕区域对应的第二地理范围、瓦片的层级和该瓦片标识确定算法,确定出能够覆盖该第二地理范围的瓦片的标识。其中,瓦片的标识可以是前述的采用瓦片坐标或其他编号方式编号的瓦片编号。
在具体实现时,对于每个子屏幕区域,终端设备可以根据该子屏幕区域对应的第二地理范围的四个顶点的地理位置坐标、该子屏幕区域待显示的瓦片的层级和瓦片标识确定算法,确定该四个顶点所在的瓦片(此处称为瓦片1)的标识;然后可以根据这四个瓦片1的标识确定出位于这四个瓦片之间的各个瓦片(此处称为瓦片2)的标识;合并瓦片1的标识和瓦片1之间的各个瓦片2的标识,即得到该子屏幕区域待显示的各个瓦片的标识。
可以理解的是,步骤S133与步骤S131之间没有严格的时序执行关系,步骤S133可以在步骤S131之后执行,也可以在步骤S131之前执行,还可以与步骤S131并行执行,本实施例对此不做特别限定。
S140、终端设备向服务器发送瓦片请求。
在确定了各子屏幕区域对应的瓦片的标识后,可以将各瓦片的标识都携带在瓦片请求中,然后向服务器发送该请求,以下载对应的瓦片。
其中,瓦片请求中还可以携带瓦片的其他信息,例如,可以携带瓦片的类型信息,该类型参数的值可以指示所请求的瓦片的几何元素类型,即在请求瓦片时,可以请求瓦片所包含的几何元素类型的全部或部分。
示例性的,瓦片请求为:“http://bj04maptest04.hwcloudtest.cn:9080/temp/terrainvector/V1?tileType=20&x={x}&y={y}&z={z}”,其中,“http://bj04maptest04.hwcloudtest.cn:9080/temp/terrainvector/V1”表示服务器地址,“tileType=20”表示上述类型参数,“x={x}&y={y}&z={z}”表示瓦片的标识。此处的类型参数tileType的值示例性的为20,表示请求瓦片所包含的点、线、面和3D模型,例如请求的瓦片的层级为16级,该瓦片中的几何要素包括点、线、面和3D模型,则tileType的值为20时,请求该瓦片中包含的所有点、线、面和3D模型。
可以理解的是,用户在使用地图APP的过程中,地图APP可以将最近下载的瓦片保存在本地缓存中,以便后续再次使用到该瓦片时可以快速获取到该瓦片。因此,在一些实施方式中,在确定了各子屏幕区域对应的瓦片的标识后,也可以先查看本地缓存中是否有对应的瓦片,对于缓存中存在的瓦片,可以无需向服务器请求,以节省数据流量,提高下载效率。例如,地图显示区域待显示的瓦片需要N个,缓存中存在N个瓦片中的M个瓦片,则在向服务器请求瓦片时,可以请求剩下N-M个瓦片。
步骤S150、终端设备接收服务器返回的各标识对应的瓦片。
服务器接收到瓦片请求后,可以根据瓦片请求中携带的瓦片的标识确定对应的瓦片,然后向终端设备返回各标识对应的瓦片;对应的,终端设备可以接收服务器返回的各标识对应的瓦片。
步骤S160、终端设备在第一子屏幕区域渲染显示第一瓦片,在第二子屏幕区域渲染显示第二瓦片。
具体地,在获取到各子屏幕区域对应的瓦片后,即可通过图形处理器(sraphicsprocessing unit,GPU)调用开放图形库(open graphics library,OpenGL)等渲染工具,在第一子屏幕区域渲染第一瓦片,在第二子屏幕区域渲染第二瓦片,然后将第一瓦片和第二瓦片显示在屏幕上的地图显示区域中。
图13中示出了在非导航模式下采用多层级显示方式前后的地图显示效果对比示意图,如图13中的(a),在不采用多层级显示方式显示3D地图时,地图远处区域加载的地图数据很多,特别是3D建筑物十分密集。如图13中的(b)所示,在采用多层级显示方式显示3D地图后,地图近处区域(对应第一子屏幕区域)显示的瓦片的层级不变,地图远处区域(对应第二子屏幕区域)显示的瓦片的层级降低,其中不包含3D建筑物。图14中示出了在导航模式下采用多层级显示方式后的地图显示效果示意图,如图14所示,在采用多层级显示方式显示3D地图后,地图远处区域(对应第二子屏幕区域)显示的瓦片的层级,低于地图近处区域(对应第一子屏幕区域)显示的瓦片的层级,其中不包含3D建筑物。这样终端设备所加载的地图数据大幅度减少,从而有效地降低了展示3D地图时所需的流量、功耗和渲染开销,这样也就可以使终端设备能够支持各种大小视野的3D地图展示需求,而且,也能够向用户展示远处的地图数据,因而也可以提升用户的使用体验。
本实施例中,获取到的每个子屏幕区域对应的瓦片所覆盖的地理范围通常大于该子屏幕区域待显示的地理范围,因此,在渲染时,第一子屏幕区域和第二子屏幕区域对应的瓦片则可能超过两者之间的分界线,即两子屏幕区域对应的瓦片所需的地图显示区域可能出现重叠的情况。对于这种情况,可以在重叠区域中显示第二子屏幕区域对应的瓦片,也可以在重叠区域中显示第一子屏幕区域对应的瓦片。
其中,在重叠区域中显示第一子屏幕区域对应的瓦片,高层级的瓦片对应的地图显示区域可以更大一些,这样可以在降低地图数据量的同时,为用户展示尽可能多的地图内容,因而可以提升一定的用户使用体验。
在具体实现时,可以采用OpenGL中的模板测试技术,按照自下而上的顺序渲染各子屏幕区域对应的瓦片;也可以不采用模板测试技术,即采用常规的重复绘制方式,按照自上而下的顺序渲染各子屏幕区域对应的瓦片,使重叠区域中显示第一子屏幕区域对应的瓦片。
其中,在采用常规的重复绘制方式时,若采用自上而下的顺序渲染各子屏幕区域对应的瓦片,即先渲染第二子屏幕区域对应的瓦片,再渲染第一子屏幕区域对应的瓦片,这样当第一子屏幕区域和第二子屏幕区域对应的瓦片的地图显示区域出现重叠时,第一子屏幕区域对应的瓦片可以覆盖在第二子屏幕区域对应的瓦片的上方,使得重叠区域中显示第一子屏幕区域对应的瓦片。
采用模板测试技术,可以灵活的控制待绘制图像(例如瓦片)的绘制内容。本实施例中,在绘制瓦片时,可以通过模板测试技术使得地图显示区域不进行瓦片的重复绘制工作,这样在采用自下而上的顺序渲染各子屏幕区域对应的瓦片时,即先渲染第一子屏幕区域对应的瓦片,再渲染第二子屏幕区域对应的瓦片,此时,如果第一子屏幕区域和第二子屏幕区域对应的瓦片的地图显示区域出现重叠,在绘制第二子屏幕区域对应的瓦片时,重叠区域已绘制有第一子屏幕区域对应的瓦片,不再重复绘制其他瓦片,因此,重叠区域中最终可以显示第一子屏幕区域对应的瓦片。
上述常规的重复绘制方式简单易行,基于模板测试技术的绘制方式可以减少绘制数据量,提升渲染效率,在具体实现时可以根据需要选择,本实施例对此不做特别限定。
基于按照自上而下的顺序渲染瓦片的方式,第一子屏幕区域对应的瓦片可能跨过第一子屏幕区域与第二子屏幕区域之间的分界线显示,对于跨分界线显示的瓦片(此处称为目标瓦片),例如,该目标瓦片的层级为16级,此时目标瓦片中有3D建筑物,该瓦片在地图显示界面中可能呈现如图15所示的显示效果。其中,目标瓦片可以包括多个,图15中以一个为例进行示例性说明。
参见图15,随着终端设备当前位置的移动,地图显示区域显示的地理范围会发生变化,在地图显示界面上即呈现出瓦片移动的效果。当第一子屏幕区域对应的目标瓦片从下往上移动时,如图15中的(a)和(b)所示,第二子屏幕区域中逐渐显示目标瓦片中的3D建筑物;如图15中的(c)所示,当目标瓦片完全移动到上方的第二子屏幕区域中时,第二子屏幕区域会加载显示对应的低层级瓦片,例如该低层级瓦片的层级为14级,此时该低层级瓦片中无3D建筑物,因此在第二子屏幕区域中会出现建筑物突然消失的情况。
为了改善这种情况,提升用户使用体验,本实施例中,当目标瓦片跨过所对应的第一子屏幕区域与上方相邻的第二子屏幕区域之间的分界线显示时,超过所跨分界线上方的部分可以不显示3D模型,如前所述,3D模型可以包括3D建筑物和3D道路等,本实施例中后续以3D建筑物为例进行示例性说明。
继续以图15中所示的目标瓦片为例,通过对目标瓦片采用分界线上下呈现不同内容的显示方式,如图16中的(a)和(b)所示,第一子屏幕区域对应的目标瓦片中超过分界线上方的部分不显示3D建筑物,因此,在目标瓦片从下往上移动的过程中,3D建筑物逐渐消失;如图16中的(c)所示,当目标瓦片完全移动到上方的第二子屏幕区域中时,第二子屏幕区域中加载显示对应的低层级瓦片,此时视觉上呈现的是目标瓦片中的3D建筑物在经过分界线时逐渐消失,这样用户的视觉体验会比较好。
为了实现上述显示效果,本实施例中,在渲染地图时,可以采用修改远截面的方式绘制瓦片中的地图元素。
具体地,OpenGL等渲染工具渲染图像时,采用投影变换技术将3D模型投影到屏幕上形成2D图像,实现在2D平面中对3D世界的呈现。其中,透视投影技术由于和人的视觉系统相似,目前多采用该技术进行图像绘制。
透视投影技术是模拟相机成像过程形成2D图像,通过一个虚拟的相机位置来调整绘制物体的坐标。具体地,如图17所示,透视投影技术使用棱锥作为视锥体,虚拟相机位于棱锥的锥顶(亦称为视点);该棱锥被前后两个截面(即远截面和近截面)截断,形成一个棱台,位于该棱台内的区域为可视区域,可视区域内的坐标会被投影在视平面上(即投影平面,一般取近截面),位于棱台之外的坐标将被裁剪掉。例如图17中所示的,用圆球表示的物体1和物体2位于可视区域内,会被投影在近截面上,即会显示在屏幕上;物体3位于可视区域外,不会出现在屏幕上。
图18示出了地图的渲染原理示意图,如图18所示,终端设备可以根据视点位置、相机视角、近截面、远截面、地图平面和地图平面的倾斜角,确定待绘制的地图数据;然后基于透视投影技术进行地图数据的投影和显示。
其中,视点位置即视点相对于地图平面的位置,根据待显示的目标层级可以确定视点到2D地图平面的距离L(即虚拟相机的高度),视点在2D地图平面上的投影与2D地图平面的中心点重合,据此可以确定出视点位置。其中,在绘制2D地图时,该2D地图平面即为待显示的2D地图的地图平面;在绘制3D地图时,该2D地图平面为待显示的3D地图对应的2D地图平面,即将待显示的3D地图切换为2D地图时,切换得到的2D地图对应的地图平面。
相机视角、近截面的位置和远截面的位置可以是预设的,近截面的位置具体可以用近截面到视点的距离表示,同理,远截面的位置可以用远截面到视点的距离表示。
地图平面包括地图显示区域待显示的瓦片。
在绘制2D地图时,地图平面的倾斜角即为0度;在绘制3D地图时,地图平面的倾斜角大于0度。
在上述步骤中,在获取到各子屏幕区域对应的瓦片后,即可通过图形处理器(sraphics processing unit,GPU)调用开放图形库(open graphics library,OpenGL)等渲染工具,将第一瓦片和第二瓦片显示在屏幕上的地图显示区域中,具体原理包括:
在获取到各子屏幕区域对应的瓦片数据后,同时,确定了所述瓦片用于绘制3D地图,在这种情况下,地图APP获取用于绘制3D地图的渲染参数,如图19中的(a)所示,并向渲染引擎(例如OpenGL渲染引擎)发送这些渲染参数,所述渲染参数可以包括:视点位置、相机视角、近截面的位置、远截面的位置、3D地图平面和3D地图平面的倾斜角(大于0度)。渲染引擎可以根据这些渲染参数,基于透视投影技术确定出对应的渲染指令,然后将渲染指令发送给GPU,使GPU可以根据该渲染指令渲染投影到近截面上的地图数据,其中,投影到近截面上的地图数据中包括近截面与远截面之间位于相机视角范围内(即可视区域内)的3D地图平面中的地图元素,不包括远截面后面(位于可视区域外)的3D地图平面中的地图元素。
在获取到各子屏幕区域对应的瓦片后,同时,确定了所述瓦片用于绘制2D地图,在这种情况下,地图APP获取用于绘制2D地图的渲染参数后,如图19中的(b)所示,地图APP可以向渲染引擎(例如OpenGL渲染引擎)发送这些渲染参数,所述渲染参数可以包括:视点位置、相机视角、近截面的位置、远截面的位置、2D地图平面和2D地图平面的倾斜角(为0度)。渲染引擎可以根据这些渲染参数,基于透视投影技术确定出对应的渲染指令,然后将渲染指令发送给GPU,使GPU可以根据该渲染指令渲染投影到近截面上的地图数据。其中,投影到近截面上的地图数据中包括近截面与远截面之间位于相机视角范围内(即可视区域内)的2D地图平面中的地图元素,不包括近截面与远截面之间位于相机视角范围外(即可视区域外)的2D地图平面中的地图元素。
基于上述原理,本实施例中,如图20所示,在绘制地图中的点、线、面元素时,可以按照确定的原始远截面的距离进行绘制;在绘制地图中的3D模型(例如3D建筑物)时,可以移近远截面至目标位置后进行绘制。
其中,目标位置位于从视点指向近截面上分界线位置(由于图为侧视图,因此,分界线表示为一个点)的射线与地图平面的交点处,所述目标位置在修改后的远截面上,实际上是在修改后的远截面和地图平面的相交位置处。图20中分界线位置示例性的位于近截面上部1/4处,即第二子屏幕区域与第一子屏幕区域的划分比例为1:3。
在图20的实施例中,当绘制第一子屏幕区域和第二子屏幕区域包括的瓦片的点、线、面数据时,如图21中的(a)所示,地图APP向渲染引擎发送的渲染参数可以包括:视点位置、相机视角、近截面的位置、原始远截面的位置、3D地图平面中的点线面数据(包括第一瓦片和第二瓦片中的点、线和/或面数据)和3D地图平面的倾斜角(具体为50°);渲染引擎可以根据这些渲染参数,基于透视投影技术确定出对应的渲染指令,然后将渲染指令发送给GPU,使GPU可以根据该渲染指令渲染投影到近截面上的地图数据,其中,投影到近截面上的地图数据中包括近截面与远截面之间位于相机视角范围内(即可视区域内)的3D地图平面中的点、线、面元素。
当绘制第一子屏幕区域和第二子屏幕区域包括的瓦片的3D模型数据时,如图21中的(b)所示,地图APP向渲染引擎发送的所述渲染参数可以包括:视点位置、相机视角、近截面的位置、修改后的远截面的位置、3D地图平面中的3D模型数据和3D地图平面的倾斜角(具体为50°);渲染引擎可以根据这些渲染参数,基于透视投影技术确定出对应的渲染指令,然后将渲染指令发送给GPU,使GPU可以根据该渲染指令渲染投影到近截面上的地图数据,其中,投影到近截面上的地图数据中不包括目标瓦片中位于修改后的远截面后面的3D模型。
如图20及图16中的(a)中所示,移近远截面至目标位置后,目标瓦片上的3D建筑物1和3D建筑物2靠近3D建筑物1的一部分(图20中用实线表示),位于近截面与远截面之间的可视区域内,可以被呈现在屏幕上;目标瓦片上的3D建筑物2靠近3D建筑物3的一部分和3D建筑物3(图20中用虚线表示),位于可视区域外,不会被呈现在屏幕上。在屏幕上的显示效果即为图16中的(a)所示的,分界线下方显示3D建筑物,分界线上方不显示3D建筑物。
图22示出了图20中的目标瓦片向上移动一段距离后的结果,其显示效果如图16中的(b)所示,目标瓦片中3D建筑物2向上移动到第二子屏幕区域中(即可视区域外),3D建筑物1移动到分界线上跨分界线显示。
可以理解的是,目标位置是基于分界线位置、视点到3D地图平面对应的2D地图平面的距离和3D地图平面的倾斜角等多种因素确定的,如图23所示,示例性的,分界线位置位于近截面上部2/5处,其他因素与图20中相同,则相比图20,图23中分界线位置下移,对应的,目标瓦片的位置更靠近地图显示区域下边缘,修改后的远截面在目标瓦片的3D地图平面上的位置(即目标位置)更靠近视点。
其中,如图23所示,分界线位置位于近截面上部2/5处,也即第二子屏幕区域与第一子屏幕区域的划分比例为2:3;3D地图平面的倾斜角示例性的为50°。
上面介绍了子屏幕区域包括两个的情况,下面介绍子屏幕区域包括三个的情况。
图24为本申请实施例提供的另一种地图显示方法的流程示意图,如图24所示,该方法可以包括如下步骤:
步骤S210、终端设备检测用户的第一操作。
该步骤与步骤S110类似,相关描述可以参见步骤S110,此处不再赘述。
步骤S220、终端设备响应于第一操作,对屏幕的地图显示区域进行划分,得到纵向排列的三个子屏幕区域。
参见图25,与步骤S120中类似,在划分子屏幕区域时,可以获取屏幕中地图显示区域的大小(此处示例性的为2400*1080像素),并确定区域划分比例(此处示例性的为1:1.5:5.5);然后根据该区域划分比例划分地图显示区域,得到纵向排列的三个子屏幕区域:下部的子屏幕区域1(1650*1080像素)、中部的子屏幕区域2(450*1080像素)和上部的子屏幕区域3(300*1080像素)。
为了提高用户的使用体验,在划分子屏幕区域时,各子屏幕区域按照从下往上的顺序面积可以逐渐减小,这样可以为用户展示较大范围的高层级瓦片,从而便于用户更好的获取地图信息。
该步骤中的其他内容与上述步骤S120类似,具体说明可以参考步骤S120中的相关描述,在此不再赘述。
步骤S230、终端设备确定每个子屏幕区域中待显示的瓦片的标识,各子屏幕区域按照从下往上的顺序,所对应的瓦片的层级逐渐降低。
与步骤S130类似,终端设备可以先确定每个子屏幕区域中待显示的瓦片的标识,然后获取相关瓦片。
具体地,终端设备在确定瓦片时,可以先确定地图显示区域待显示的第一地理范围,然后根据第一地理范围确定各子屏幕区域待显示的第二地理范围;另外,可以根据目标层级确定各个子屏幕区域待显示的瓦片的层级;最后,对于每个子屏幕区域,可以根据该子屏幕区域对应的第二地理范围和待显示的瓦片的层级,确定该子屏幕区域中待显示的瓦片的标识。
其中,在确定各子屏幕区域对应的瓦片的层级时,距离屏幕下方最近的子屏幕区域(即子屏幕区域1)对应的瓦片的层级可以等于目标层级,例如图25中所示的17级;相邻的两个子屏幕区域中,靠近屏幕上方的子屏幕区域对应的瓦片的层级可以比靠近屏幕下方的子屏幕区域对应的瓦片的层级低第一预设层级,例如图25中所示的,子屏幕区域2对应的瓦片的层级为16级,子屏幕区域3对应的瓦片的层级为15级,即第一预设层级为1级。
可以理解的是,每对相邻子屏幕区域对应的第一预设层级可以相同也可以不同,即子屏幕区域2与子屏幕区域1对应的瓦片层级之差,与子屏幕区域3与子屏幕区域2对应的瓦片层级之差也可以不同,图25中只是以相邻子屏幕区域之间的瓦片层级之差均为1进行示例性说明,其并非用于限定本申请。
另外,距离屏幕上方最近的子屏幕区域(即子屏幕区域3)对应的瓦片的层级可以低于第二预设层级,以进一步减少所需的地图数据量。
该步骤中的其他内容与上述步骤S120类似,具体说明可以参考步骤S120中的相关描述,在此不再赘述。
步骤S240、终端设备向服务器发送瓦片请求。
在确定了各子屏幕区域对应的瓦片的标识后,可以将各瓦片的标识都携带在瓦片请求中,然后向服务器发送该请求,以下载对应的瓦片。
其中,瓦片请求的相关说明可以参见步骤S140,此处不再赘述。
与步骤140类似,在确定了各子屏幕区域对应的瓦片的标识后,也可以先查看本地缓存中是否有对应的瓦片,对于缓存中存在的瓦片,可以无需向服务器请求,以节省数据流量,提高下载效率。
步骤S250、终端设备接收服务器返回的各标识对应的瓦片。
步骤S260、终端设备对获取的各瓦片进行渲染并显示在地图显示区域。
在获取到各子屏幕区域对应的瓦片中,即可通过GPU调用OpenGL等渲染工具,在各个子屏幕区域渲染对应的瓦片,然后显示在屏幕上的地图显示区域中。
图26中示出了地图显示级别比较低的情况下,采用多层级显示方式前后的地图显示效果对比示意图。如图26中的(a)所示,不采用多层级显示方式显示3D地图,地图显示区域显示同一层级的瓦片。如图26中的(b)所示,在采用多层级显示方式显示3D地图后,地图近处区域(对应子屏幕区域1)显示的瓦片的层级不变,地图远处区域(对应子屏幕区域2和子屏幕区域3)显示的瓦片的层级降低,显示的地图信息减少;且子屏幕区域3对应的瓦片的层级低于子屏幕区域3对应的瓦片的层级,所显示的地图信息少于子屏幕区域2中显示的地图信息。对应的,子屏幕区域2和子屏幕区域3中所加载的地图数据减少,从而降低了展示3D地图时所需的流量、功耗和渲染开销,这样也就可以使终端设备能够支持各种大小视野的3D地图展示需求,而且,也能够向用户展示远处的地图数据,因而也可以提升用户的使用体验。
与步骤S160中类似,当相邻的两个子屏幕区域对应的瓦片的地图显示区域出现重叠时,可以在重叠区域中显示两个子屏幕区域中靠近屏幕下方的子屏幕区域对应的瓦片。对应的,在渲染显示时,可以采用模板测试技术,按照自下而上的顺序渲染各子屏幕区域对应的瓦片;也可以不采用模板测试技术,按照自上而下的顺序渲染各子屏幕区域对应的瓦片。
在按照上述方式渲染瓦片时,当目标瓦片跨过所对应的子屏幕区域与上方相邻的子屏幕区域之间的分界线显示时,若该相邻的子屏幕区域对应的瓦片中不包括3D模型,则目标瓦片超过所跨分界线上方的部分不显示3D模型,以提升用户使用体验。
举例说明,如图27中的(a)所示,假设子屏幕区域1对应的瓦片为17级、子屏幕区域2对应的瓦片为16级、子屏幕区域3对应的瓦片为15级,子屏幕区域1对应的瓦片中和子屏幕区域1对应的瓦片中均包括3D模型,子屏幕区域3对应的瓦片中不包括3D模型。子屏幕区域1对应的瓦片A跨过子屏幕区域1与子屏幕区域2之间的分界线1显示时,瓦片A在分界线1上方的部分可以显示3D模型。子屏幕区域2对应的瓦片B跨过子屏幕区域2与子屏幕区域3之间的分界线2显示时,瓦片B在分界线2上方的部分不显示3D模型。如图27中的(b)所示,当瓦片A完全移动到上方的子屏幕区域2中后,子屏幕区域2中加载显示对应的低层级瓦片C;瓦片B完全移动到上方的子屏幕区域3中后,子屏幕区域3中加载显示对应的低层级瓦片D。其中,瓦片C为16级,包括3D模型;瓦片D为15级,不包括3D模型。
可以理解的是,子屏幕区域1对应的目标瓦片不限于上述瓦片A,子屏幕区域2对应的目标瓦片也不限于上述瓦片B,子屏幕区域1和子屏幕区域2对应的目标瓦片均可以包括多个,图27中只是以一个为例进行示例性说明,其并非用于限制本申请。
该步骤中的其他内容与上述步骤S160类似,具体说明可以参考步骤S160中的相关描述,在此不再赘述。
另外,对于子屏幕区域包括更多个的情况,其显示原理与子屏幕区域包括3个的情况类似,此处也不再赘述。
本领域技术人员可以理解,以上实施例是示例性的,并非用于限定本申请。在可能的情况下,以上步骤中的一个或者几个步骤的执行顺序可以进行调整,也可以进行选择性组合,得到一个或多个其他实施例。本领域技术人员可以根据需要从上述步骤中任意进行选择组合,凡是未脱离本申请方案实质的,都落入本申请的保护范围。
本实施例提供的地图显示方法,在地图展示的过程中,对屏幕的地图显示区域进行划分,在各子屏幕区域中加载显示不同层级的瓦片,其中,各子屏幕区域按照从下往上的顺序,所对应的瓦片的层级逐渐降低,这样可以有效的降低地图远处区域所需的地图数据量,因而可以降低流量、功耗和渲染开销,进而可以使终端设备能够支持各种大小视野的3D地图展示需求,而且,该方案也能够向用户展示远处的地图数据,因而也可以提升用户的使用体验。
基于同一构思,作为对上述方法的实现,本申请实施例提供了一种地图显示装置,该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。
图28为本申请实施例提供的地图显示装置的结构示意图,如图28所示,本实施例提供的装置可以包括:
显示模块210、输入模块220、处理模块230和通信模块240。
其中,显示模块210用于支持终端设备执行上述实施例中的界面显示操作和/或用于本文所描述的技术的其它过程。显示模块可以是触摸屏或其他硬件或硬件与软件的综合体。
输入模块220用于接收用户在终端设备的显示界面上的输入,如触摸输入、语音输入、手势输入等,输入模块用于支持终端设备执行上述实施例中接收用户的接听通话操作的步骤和/或用于本文所描述的技术的其它过程。输入模块可以是触摸屏或其他硬件或硬件与软件的综合体。
处理模块230用于支持终端设备执行上述实施例中的处理操作和/或用于本文所描述的技术的其它过程。
通信模块240用于支持终端设备执行上述实施例中与云端设备和其他终端设备之间的通信过程相关的操作和/或用于本文所描述的技术的其它过程。
本实施例提供的装置可以执行上述方法实施例,其实现原理与技术效果类似,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
基于同一构思,本申请实施例还提供一种终端设备,请参阅图29,图29为本申请实施例提供的终端设备的结构示意图。
终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
其中,传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(sraphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是终端设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(serail clock line,SCL)。I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信;该总线可以为双向通信总线,它将要传输的数据在串行通信与并行通信之间转换。MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件;MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serialinterface,DSI)等。GPIO接口可以通过软件配置,GPIO接口可以被配置为控制信号,也可被配置为数据信号。USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,MicroUSB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端设备100充电,也可以用于终端设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备100的结构限定。在本申请另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。
终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。
无线通信模块160可以提供应用在终端设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近场通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分同步码分多址(time division-synchronous code divisionmultiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GNSS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenithsatellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。显示屏194用于显示图像,视频等。
终端设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。摄像头193用于捕获静态图像或视频。数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行终端设备100的各种功能应用以及数据处理。
终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备100可以接收按键输入,产生与终端设备100的用户设置以及功能控制有关的键信号输入。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡,SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和终端设备100的接触和分离。终端设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。
本实施例提供的终端设备可以执行上述方法实施例,其实现原理与技术效果类似,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所述的方法。
本申请实施例还提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行时实现上述方法实施例所述的方法。
本申请实施例还提供一种芯片系统,包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现上述方法实施例所述的方法。其中,所述芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘或磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质可以包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
在本申请所提供的实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
应当理解,在本申请说明书和所附权利要求书的描述中,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
在本申请的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;本申请中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。
并且,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项”或其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b,或c中的至少一项,可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (20)
1.一种地图显示方法,应用于终端设备,其特征在于,包括:
显示第一界面,第一界面显示第一地图区域;
接收用户的第一操作;
响应于所述第一操作,显示第二界面,第二界面包括多个子屏幕区域,多个所述子屏幕区域包括第一子屏幕区域和位于所述第一子屏幕区域上方的第二子屏幕区域;
所述第一子屏幕区域中的瓦片为第一瓦片,第二子屏幕区域中的瓦片为第二瓦片,所述第二瓦片的层级小于所述第一瓦片的层级。
2.根据权利要求1所述的方法,其特征在于,所述第二界面为导航界面或显示非导航地图的界面。
3.根据权利要求1或2所述的方法,其特征在于,所述第一操作包括下列中的至少一种操作:开启导航模式的操作、改变地图平面的倾斜角的手势操作、对目标控件的点击操作、地图缩放操作和地图平移操作。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第二界面中包括第一物体,当所述第一物体全部位于所述第一子屏幕区域中时,显示所述第一物体对应的3D模型;
当所述第一物体的第一部分位于所述第一子屏幕区域,第二部分位于所述第二子屏幕区域时,显示所述第一部分对应的3D模型,不显示所述第二部分对应的3D模型;
当所述第一物体全部移动至所述第二子屏幕区域中时,不显示所述第一物体对应的3D模型。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一地图区域中的瓦片为第三瓦片,所述第一瓦片的层级等于所述第三瓦片的层级。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第二瓦片中不包括3D模型。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一瓦片中包括3D模型。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
响应于用户的第二操作,开启或关闭多层级显示模式,其中,在多层级显示模式下地图显示区域能够显示多个层级的瓦片。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
响应于用户的第三操作,启动或关闭在非导航模式下关闭多层级显示模式的功能,其中,在多层级显示模式下地图显示区域能够显示多个层级的瓦片。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述响应于所述第一操作,显示第二界面,包括:
响应于所述第一操作,在所述第二界面待显示的地图平面的倾斜角大于或等于目标角度的情况下,显示所述第二界面。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述响应于所述第一操作,显示第二界面,包括:
响应于所述第一操作,对屏幕的地图显示区域进行划分,得到所述多个子屏幕区域;
获取第一瓦片和第二瓦片;
根据各所述第一瓦片和各所述第二瓦片,渲染并显示第二界面。
12.根据权利要求11所述的方法,其特征在于,所述获取第一瓦片和第二瓦片,包括:
确定所述第一瓦片的标识和所述第二瓦片的标识;
根据所述第一瓦片的标识和所述第二瓦片的标识,获取所述第一瓦片和所述第二瓦片。
13.根据权利要求12所述的方法,其特征在于,所述确定所述第一瓦片的标识和所述第二瓦片的标识,包括:
根据待显示的目标层级确定所述地图显示区域待显示的地理范围;
根据所述地图显示区域待显示的地理范围,确定所述第一子屏幕区域待显示的地理范围和所述第二子屏幕区域待显示的地理范围;
根据所述目标层级确定所述第一瓦片的层级和所述第二瓦片的层级,其中,所述第一瓦片的层级等于所述目标层级;
根据第一子屏幕区域待显示的地理范围和所述第一瓦片的层级,确定所述第一瓦片的标识;
根据第二子屏幕区域待显示的地理范围和所述第二瓦片的层级,确定所述第二瓦片的标识。
14.根据权利要求12或13所述的方法,其特征在于,所述获取所述第一瓦片和所述第二瓦片,包括:
向服务器发送瓦片请求,所述瓦片请求中携带所述第一瓦片的标识和/或所述第二瓦片的标识;
接收所述服务器返回的所述标识对应的瓦片。
15.根据权利要求1-14任一项所述的方法,其特征在于,所述第一子屏幕区域的面积大于所述第二子屏幕区域的面积。
16.根据权利要求1-15任一项所述的方法,其特征在于,所述多个子屏幕区域还包括第三子屏幕区域,所述第三子屏幕区域位于所述第一子屏幕区域与所述第二子屏幕区域之间;
所述第三子屏幕区域中的瓦片为第四瓦片,所述第四瓦片的层级小于所述第一瓦片的层级,且大于所述第二瓦片的层级。
17.一种终端设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在调用所述计算机程序时执行如权利要求1-16任一项所述的方法。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-16任一项所述的方法。
19.一种计算机程序产品,其特征在于,当计算机程序产品在终端设备上运行时,使得终端设备执行如权利要求1-16任一项所述的方法。
20.一种芯片系统,其特征在于,所述芯片系统包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现如权利要求1-16任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110739759.1A CN115544186A (zh) | 2021-06-30 | 2021-06-30 | 地图显示方法、装置与终端设备 |
PCT/CN2022/084380 WO2023273465A1 (zh) | 2021-06-30 | 2022-03-31 | 地图显示方法、装置与终端设备 |
EP22831296.3A EP4350530A1 (en) | 2021-06-30 | 2022-03-31 | Map display method and apparatus, and terminal device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110739759.1A CN115544186A (zh) | 2021-06-30 | 2021-06-30 | 地图显示方法、装置与终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115544186A true CN115544186A (zh) | 2022-12-30 |
Family
ID=84691113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110739759.1A Pending CN115544186A (zh) | 2021-06-30 | 2021-06-30 | 地图显示方法、装置与终端设备 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4350530A1 (zh) |
CN (1) | CN115544186A (zh) |
WO (1) | WO2023273465A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117253005A (zh) * | 2023-11-20 | 2023-12-19 | 园测信息科技股份有限公司 | 一种支持多种地理空间坐标系瓦片地图的加载方法和系统 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116320364B (zh) * | 2023-05-25 | 2023-08-01 | 四川中绳矩阵技术发展有限公司 | 一种基于多层显示的虚拟现实拍摄方法及显示方法 |
CN117036576B (zh) * | 2023-10-09 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 地图渲染方法、装置、电子设备及存储介质 |
CN117521431B (zh) * | 2024-01-08 | 2024-04-26 | 湖南卫导信息科技有限公司 | 一种基于高精度地形的分布式并行通视计算方法、装置 |
CN117573917B (zh) * | 2024-01-19 | 2024-03-29 | 成都深瑞同华科技有限公司 | 一种地图图片截取方法、系统、电子设备及介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1995917B (zh) * | 2006-12-21 | 2011-05-18 | 深圳市凯立德科技股份有限公司 | 一种电子地图俯视角度显示控制方法、装置及设备 |
CN107992588B (zh) * | 2017-12-11 | 2020-08-25 | 国网技术学院 | 一种基于高程瓦片数据的地形显示系统 |
US10489954B1 (en) * | 2018-05-23 | 2019-11-26 | Mapbox, Inc. | Efficient duplicate label handling |
CN110415347B (zh) * | 2019-07-22 | 2023-08-25 | 高新兴科技集团股份有限公司 | 三维实景地图与二维平面地图融合方法、装置及电子设备 |
CN110865750B (zh) * | 2019-10-09 | 2021-04-30 | 成都中科合迅科技有限公司 | 瓦片地图的无极缩放显示方法 |
-
2021
- 2021-06-30 CN CN202110739759.1A patent/CN115544186A/zh active Pending
-
2022
- 2022-03-31 EP EP22831296.3A patent/EP4350530A1/en active Pending
- 2022-03-31 WO PCT/CN2022/084380 patent/WO2023273465A1/zh active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117253005A (zh) * | 2023-11-20 | 2023-12-19 | 园测信息科技股份有限公司 | 一种支持多种地理空间坐标系瓦片地图的加载方法和系统 |
CN117253005B (zh) * | 2023-11-20 | 2024-02-09 | 园测信息科技股份有限公司 | 一种支持多种地理空间坐标系瓦片地图的加载方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
EP4350530A1 (en) | 2024-04-10 |
WO2023273465A1 (zh) | 2023-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111724293B (zh) | 图像渲染方法及装置、电子设备 | |
WO2023273465A1 (zh) | 地图显示方法、装置与终端设备 | |
CN112040361B (zh) | 耳机控制方法、装置及存储介质 | |
CN111316333B (zh) | 一种信息提示方法及电子设备 | |
CN115866121B (zh) | 应用界面交互方法、电子设备和计算机可读存储介质 | |
CN111126182B (zh) | 车道线检测方法、装置、电子设备及存储介质 | |
CN110059685B (zh) | 文字区域检测方法、装置及存储介质 | |
CN112445448B (zh) | 一种柔性屏显示方法和电子设备 | |
CN113973173B (zh) | 图像合成方法和电子设备 | |
CN110991457B (zh) | 二维码处理方法、装置、电子设备及存储介质 | |
CN110796248A (zh) | 数据增强的方法、装置、设备及存储介质 | |
CN115129410B (zh) | 桌面壁纸配置方法、装置、电子设备及可读存储介质 | |
CN111353946B (zh) | 图像修复方法、装置、设备及存储介质 | |
CN114979457B (zh) | 一种图像处理方法及相关装置 | |
CN113610943B (zh) | 图标圆角化的处理方法及装置 | |
CN109035420A (zh) | 一种增强现实ar图像的处理方法及移动终端 | |
CN109040753B (zh) | 预测模式选择方法、装置及存储介质 | |
CN114527903A (zh) | 一种按键映射方法、电子设备及系统 | |
CN114445522A (zh) | 笔刷效果图生成方法、图像编辑方法、设备和存储介质 | |
CN110750675A (zh) | 歌词分享方法及装置、存储介质 | |
CN116033344B (zh) | 地理围栏的确定方法、设备及存储介质 | |
CN114510192B (zh) | 图像处理方法及相关装置 | |
CN115175164B (zh) | 通信控制方法及相关装置 | |
CN116797717A (zh) | 扫描建模方法与电子设备 | |
CN113392688A (zh) | 数据处理方法、装置、计算机设备及存储介质 |
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 |