确定操作焦点坐标的方法、装置及设备与流程

文档序号:16978304发布日期:2019-02-26 19:14阅读:206来源:国知局
确定操作焦点坐标的方法、装置及设备与流程
本发明实施例涉及数字地图
技术领域
,尤其涉及一种确定操作焦点坐标的方法、装置及设备。
背景技术
:目前,三维地图可以通过高程模型生成,高程模型可以由多个不规则三角网格构成。在实际应用过程中,用户可以通过手指或者鼠标对终端设备(手机、电脑等设备)中的三维地图进行操作实现对三维地图的查看,例如,可以对三维地图进行拖拽操作、放大操作、缩小操作等。在用户对三维地图进行操作之后,终端设备需要获取三维地图的操作焦点的坐标,该操作焦点可以为鼠标、手指在三维地图中的点击位置,终端设备根据用户输入的操作和该操作焦点的坐标,对当前显示的三维地图进行更新。在现有技术中,在终端设备获取三维地图的操作焦点的坐标的过程中,终端设备根据三角形网格到操作焦点的距离,对可视区域内(终端设备当前显示的三维地图)所有三角形网格进行排序,得到与操作焦点的距离最近的一个三角形网格,并根据该三角形网格的坐标和预设公式,计算操作焦点的坐标。然而,在上述过程中,可视区域内的三角形网格的数量通常较多,且终端设备需要计算可视区域内所有三角形网格与操作焦点之间的距离,该计算量过大,使得获取操作焦点的坐标的速度慢,进而导致对三维地图进行更新的速度慢。技术实现要素:本发明实施例提供一种确定操作焦点坐标的方法、装置及设备,提高了对三维地图进行更新的速度。第一方面,本发明实施例提供一种确定操作焦点坐标的方法,包括:在获取到用户对终端设备显示的三维地图输入的地图操作之后,获取所述三维地图的操作焦点;确定所述操作焦点对应的地形瓦片;在所述地形瓦片对应的多个三角形网格中确定目标三角形网格;根据所述目标三角形网格,确定所述操作焦点的坐标。在一种可能的实施方式中,确定所述操作焦点对应的地形瓦片,包括:根据所述三维地图中各地形瓦片的颜色,绘制所述终端设备当前显示的三维地图,得到重绘三维地图,所述重绘三维地图中不同地形瓦片的颜色不同;获取所述操作焦点在所述重绘三维地图中对应的目标颜色;获取所述目标颜色对应的地形瓦片;将所述目标颜色对应的地形瓦片确定为所述操作焦点对应的地形瓦片。在另一种可能的实施方式中,获取所述目标颜色对应的地形瓦片,包括:获取预设对应关系,所述预设对应关系中包括多个地形瓦片的标识、及每一个地形瓦片对应的颜色;根据所述预设对应关系和所述目标颜色,获取所述目标颜色对应的地形瓦片。在另一种可能的实施方式中,在所述地形瓦片对应的多个三角形网格中确定目标三角形网格,包括:分别获取所述操作焦点与每一个三角形网格的距离;将与所述操作焦点距离最小的三角形网格确定为所述目标三角形网格。在另一种可能的实施方式中,根据所述目标三角形网格,确定所述操作焦点的坐标,包括:以所述操作焦点为起点绘制射线,以使所述射线与所述目标三角形网格相交;根据所述射线的方向、及所述目标三角形网格的三个顶点坐标,确定所述操作焦点的坐标。第二方面,本发明实施例提供一种确定操作焦点坐标的装置,包括获取模块、第一确定模块、第二确定模块和第三确定模块,其中,所述获取模块用于,在获取到用户对终端设备显示的三维地图输入的地图操作之后,获取所述三维地图的操作焦点;所述第一确定模块用于,确定所述操作焦点对应的地形瓦片;所述第二确定模块用于,在所述地形瓦片对应的多个三角形网格中确定目标三角形网格;所述第三确定模块用于,根据所述目标三角形网格,确定所述操作焦点的坐标。在一种可能的实施方式中,所述第一确定模块包括绘制单元、第一获取单元、第二获取单元和确定单元,其中,所述绘制单元用于,根据所述三维地图中各地形瓦片的颜色,绘制所述终端设备当前显示的三维地图,得到重绘三维地图,所述重绘三维地图中不同地形瓦片的颜色不同;所述第一获取单元用于,获取所述操作焦点在所述重绘三维地图中对应的目标颜色;所述第二获取单元用于,获取所述目标颜色对应的地形瓦片;所述确定单元用于,将所述目标颜色对应的地形瓦片确定为所述操作焦点对应的地形瓦片。在另一种可能的实施方式中,所述第二获取单元具体用于:获取预设对应关系,所述预设对应关系中包括多个地形瓦片的标识、及每一个地形瓦片对应的颜色;根据所述预设对应关系和所述目标颜色,获取所述目标颜色对应的地形瓦片。在另一种可能的实施方式中,所述第二确定模块具体用于:分别获取所述操作焦点与每一个三角形网格的距离;将与所述操作焦点距离最小的三角形网格确定为所述目标三角形网格。在另一种可能的实施方式中,所述第三确定模块具体用于:以所述操作焦点为起点绘制射线,以使所述射线与所述目标三角形网格相交;根据所述射线的方向、及所述目标三角形网格的三个顶点坐标,确定所述操作焦点的坐标。第三方面,本发明实施例提供一种确定操作焦点坐标的设备,包括中央处理器cpu、图形处理器gpu、存储器和通信总线,所述通信总线用于实现各器件之间的链接,所述存储器用于存储程序指令,所述cpu和所述gpu用于读取所述存储器中的程序指令,并执行相应的操作,其中,所述cpu具体用于,在获取到用户对终端设备显示的三维地图输入的地图操作之后,获取所述三维地图的操作焦点,并通过所述通信总线向所述gpu发送所述操作焦点;所述gpu具体用于,确定所述操作焦点对应的地形瓦片,在所述地形瓦片对应的多个三角形网格中确定目标三角形网格,并通过所述通信总线向所述cpu发送所述目标三角形网格;所述cpu还用于,根据所述目标三角形网格,确定所述操作焦点的坐标。本发明实施例提供的确定操作焦点坐标的方法、装置及设备,在用户对三维地图进行操作之后,终端设备获取三维地图的操作焦点、及操作焦点对应的地形瓦片,终端设备在操作焦点所在的地形瓦片中的三角形网格中确定目标三角形网格,并根据目标三角形网格的顶点坐标,确定操作焦点的坐标。在上述过程中,无需计算可视区域(终端设备当前显示的区域)中所有三角形网格与操作焦点之间的距离,节省了计算量,进而提高了对三维地图进行更新的速度。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的确定操作焦点坐标方法的应用场景示意图;图2为本发明实施例提供的确定操作焦点坐标的方法的流程示意图一;图3为本发明实施例提供的确定地形瓦片方法的流程示意图;图4为本发明实施例提供的确定操作焦点坐标的设备的结构示意图;图5为本发明实施例提供的确定操作焦点坐标的方法的流程示意图二;图6为本发明实施例提供的三维地图的示意图;图7为本发明实施例提供的确定操作焦点坐标的装置的结构示意图一;图8为本发明实施例提供的确定操作焦点坐标的装置的结构示意图二。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本发明实施例提供的确定操作焦点坐标方法的应用场景示意图。请参见图1,在终端设备中可以显示三维地图,且用户可以通过鼠标对三维地图进行操作,当然,若终端设备的显示屏幕为触摸屏幕时,用户还可以通过手指对三维地图进行操作。可选的,终端设备可以为手机、电脑、电视等设备。请参见界面101-a,当用户需要查看三维地图中十字路口的详情信息时,用户可以将鼠标放置在十字路口,并向上推动鼠标的滚轮,以实现以十字路口为操作焦点,放大三维地图。在用户向上推动鼠标的滚轮之后,终端设备显示的三维地图如界面102-a所示。其中,界面102-a所示的三维地图为界面101-a所示的三维地图的放大版本,且界面101-a中的十字路口在界面101-a中的位置,与界面102-a中的十字路口在界面102-a中的位置对应相同。终端设备的可视区域中的三维地图对应的高程模型中包括多个地形瓦片,每一个地形瓦片由多个不规则三角形网格构成,一个地形瓦片对应一个地理区域,当可视区域中三维地图的地图比例尺不同时,可视区域中包括的地形瓦片的个数也不同。例如,界面101-b为界面101-a对应的高程模型,在界面101-b中包括12个地形瓦片;界面102-b为界面102-a对应的高程模型,在界面102-b中包括2个地形瓦片。在本申请中,在终端设备计算操作焦点的坐标时,仅计算操作焦点所在的地形瓦片中的三角形网格与操作焦点之间的距离,并在操作焦点所在的地形瓦片中的三角形网格中确定目标三角形网格,并根据目标三角形网格的顶点坐标,确定操作焦点的坐标。无需计算可视区域中所有三角形网格与操作焦点之间的距离,节省了计算量,进而提高了对三维地图进行更新的速度。下面,通过具体实施例,对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行重复说明。图2为本发明实施例提供的确定操作焦点坐标的方法的流程示意图一。请参见图2,该方法可以包括:s201、在获取到用户对终端设备显示的三维地图输入的地图操作之后,获取三维地图的操作焦点。本发明实施例的执行主体可以为终端设备,当然,执行主体也可以为终端设备的一部分,例如,执行主体可以为确定操作焦点坐标装置(下文简称确定装置),该确定装置可以设置在终端设备中。可选的,该确定装置可以通过软件实现,或者,该确定装置也可以通过软件和硬件的结合实现。可选的,地图操作可以包括地图放大操作、地图缩小操作、地图拖拽操作及地图视角切换操作等。可选的,用户可以通过鼠标对可视区域(终端设备当前显示区域)中的三维地图进行操作。当然,若终端设备的显示屏幕为触摸屏幕,用户还可以通过手指对可视区域中的三维地图进行操作。当用户通过鼠标对三维地图进行操作时,操作焦点可以为鼠标所在位置。当用户通过手指对三维地图进行拖拽操作时,操作焦点可以为用户手指按压屏幕的位置。当用户通过两个手指对三维地图进行缩放操作时,操作焦点可以为用户两个手指在屏幕中的两个按压点的中点位置。当然,在实际应用过程中,可以根据实际需要确定获取操作焦点的方法,本发明实施例对此不作具体限定。s202、确定操作焦点对应的地形瓦片。可选的,操作焦点对应的地形瓦片为操作焦点所在的地形瓦片。s203、在地形瓦片对应的多个三角形网格中确定目标三角形网格。本发明实施例中所述的每一个三角形网格的形状均为三角形状。可选的,可以确定该地形瓦片对应的多个三角形网格,分别获取操作焦点与每一个三角形网格的距离,并将与操作焦点距离最小的三角形网格确定为目标三角形网格。可选的,操作焦点与三角形网格之间的距离可以为操作焦点与三角形网格的中心之间的距离。由于目标三角形网格与操作焦点之间的距离最小,因此,操作焦点通常位于目标三角形网格中。s204、根据目标三角形网格,确定操作焦点的坐标。可选的,本发明实施例所示的操作焦点的坐标是指操作焦点在三维地图中的坐标。可选的,可以通过如下可行的实现方式确定操作焦点的坐标:以操作焦点为起点绘制射线,以使射线与目标三角形网格相交,根据射线的方向、及目标三角形网格的三个顶点坐标,确定操作焦点的坐标。当然,在实际应用过程中,还可以其它可行的实现方式确定操作焦点的坐标,本发明实施例对此不作具体限定。本发明实施例提供的三维地图中确定操作焦点坐标的方法,在用户对三维地图进行操作之后,终端设备获取三维地图的操作焦点、及操作焦点对应的地形瓦片,终端设备在操作焦点所在的地形瓦片中的三角形网格中确定目标三角形网格,并根据目标三角形网格的顶点坐标,确定操作焦点的坐标。在上述过程中,无需计算可视区域(终端设备当前显示的区域)中所有三角形网格与操作焦点之间的距离,节省了计算量,进而提高了对三维地图进行更新的速度。在上述任意一个实施例的基础上,可选的,可以通过如下可行的实现方式确定操作焦点对应的地形瓦片(图2所示实施例中的s202),具体的,请参见图3所示的实施例。图3为本发明实施例提供的确定地形瓦片方法的流程示意图。请参见图3,该方法可以包括:s301、根据三维地图中各地形瓦片的颜色,在预设缓存中绘制终端设备当前显示的三维地图,得到重绘三维地图,重绘三维地图中不同地形瓦片的颜色不同。在本发明实施例中,三维地图中的每一个地形瓦片对应唯一的标识,每一个地形瓦片对应唯一的颜色,地形瓦片的标识和颜色的对应关系可以预先存储在终端设备中,例如,地形瓦片的标识和颜色的预设对应关系可以如表1所示:表1地形瓦片的标识颜色地形瓦片1颜色1地形瓦片2颜色2地形瓦片3颜色3…………可选的,本发明实施例中的颜色可以通过16进制的rgb颜色表示,例如,颜色的标识可以为000000至ffffff中的任意一个。可选的,预设缓存可以为帧缓存,相应的,当需要对终端设备当前显示的三维地图进行重绘时,先创建一个帧缓存(framebuffer),并根据可视区域中的三维地图中每一个地形瓦片的颜色,在帧缓存中进行三维地图重绘,得到重绘三维地图,重绘三维地图中每一个地形瓦片具有颜色,且每一个地形瓦片的颜色不同。可选的,重绘三维地图中可以仅包括地形瓦片对应的颜色,或者,重绘三维地图中也可以同时包括地形瓦片对应的颜色和实际地图。可选的,重绘三维地图中可以仅包括地形瓦片对应的颜色。s302、获取操作焦点在重绘三维地图中对应的目标颜色。其中,操作焦点在重绘三维地图中对应的目标颜色是指,重绘三维地图中操作焦点所在区域的颜色。可选的,终端设备重绘的重绘三维地图的大小,与终端设备当前显示的三维地图的大小相同,因此,可以根据操作焦点在终端设备的显示屏中的位置,确定操作焦点在帧缓存中的位置,并根据操作焦点在帧缓存中的位置确定操作焦点在重绘三维地图中对应的目标颜色。s303、获取目标颜色对应的地形瓦片。可选的,可以获取终端设备预先存储的预设对应关系,预设对应关系中包括多个地形瓦片的标识、及每一个地形瓦片对应的颜色,并在预设对应关系中查询目标颜色对应的地形瓦片。s304、将目标颜色对应的地形瓦片确定为操作焦点对应的地形瓦片。在图3所示的实施例中,每一个地形瓦片对应一种颜色,在重绘终端设备当前显示的三维地图时,在重绘三维地图中显示每一个地形瓦片对应的颜色,这样,可以快速确定操作焦点在重绘三维地图中对应的目标颜色,进而可以快速确定操作焦点对应地形瓦片。在上述任意一个实施例的基础上,可选的,在确定操作焦点坐标的设备中包括中央处理器(centralprocessingunit,简称cpu)和图形处理器(graphicsprocessingunit,简称gpu),可以由cpu和gpu协同执行本申请所示的技术方案,这样,可以减轻cpu的负担,进而提高确定操作焦点坐标的效率。为了便于理解,首先通过图4对确定操作焦点坐标的设备的结构进行详细说明。图4为本发明实施例提供的确定操作焦点坐标的设备的结构示意图。请参见图4,包括cpu401、图形处理器gpu402、存储器403和通信总线404,所述通信总线404用于实现各器件之间的链接,所述存储器403用于存储程序指令,所述cpu401和所述gpu402用于读取所述存储器403中的程序指令,并执行相应的操作。基于图4实施例所示的确定操作焦点坐标的设备的结构,下面通过图5所示的实施例,对cpu和gpu协同执行上述技术方案的过程进行详细说明。图5为本发明实施例提供的确定操作焦点坐标的方法的流程示意图二。请参见图5,该方法可以包括:s501、在cpu获取到用户对终端设备显示的三维地图输入的地图操作之后,获取三维地图的操作焦点。需要说明的是,s501的执行过程可以参见s201中的描述,此处不再进行赘述。s502、cpu通过通信总线向gpu发送操作焦点。s503、gpu根据三维地图中各地形瓦片的颜色,在预设缓存中绘制终端设备当前显示的三维地图,得到重绘三维地图,重绘三维地图中不同地形瓦片的颜色不同。可选的,预设缓存可以为帧缓存,相应的,gpu可以在存储器中创建帧缓存,并在帧缓存中绘制三维地图,以得到重绘三维地图。s504、gpu获取操作焦点在重绘三维地图中对应的目标颜色。s505、gpu获取目标颜色对应的地形瓦片。s506、gpu将目标颜色对应的地形瓦片确定为操作焦点对应的地形瓦片。需要说明的是,s502-s506的执行过程可以参见图3实施例中的描述,此处不再进行赘述。s507、gpu在地形瓦片对应的多个三角形网格中确定目标三角形网格。需要说明的是,s507的执行过程可以参见s203中的描述,此处不再进行赘述。s508、gpu通过通信总线向cpu发送目标三角形网格的标识。s509、cpu根据目标三角形网格,确定操作焦点的坐标。需要说明的是,s509的执行过程可以参见s204中的描述,此处不再进行赘述。下面,结合图6所示的三维地图,通过具体示例,对上述方法实施例所示的技术方案进行详细说明。图6为本发明实施例提供的三维地图的示意图。请参见界面601-a,假设终端设备中当前显示的三维地图如界面601-a中的地图所示,其中,操作焦点为鼠标在界面601-a中的位置。相应的,界面601-a所示的三维地图对应的高程模型如界面601-b所示,在该高程模型中包括4个地形瓦片,分别记为地形瓦片a-地形瓦片d。当用户对界面601-a所述的地图进行放大操作之后,cpu获取到用户对终端设备显示的三维地图输入的地图操作之后,获取三维地图的操作焦点,cpu通过通信总线向gpu发送操作焦点,gpu创建一个帧缓存,gpu根据界面601-b中的三维地图对应的每一个地形瓦片的颜色,在帧缓存中进行三维地图重绘,得到重绘三维地图,该重绘三维地图可以如界面602所示。请参见界面602,该重绘三维地图中包括四个地形瓦片的颜色,该四个地形瓦片的颜色分别为颜色1、颜色2、颜色3和颜色4。操作焦点在界面602中的位置,与操作焦点在界面601-a中的位置相同。gpu获取操作节点对应的目标颜色为颜色4,并获取颜色4对应的地形瓦片为地形瓦片d。gpu获取地形瓦片d中每一个三角形网格与操作焦点之间的距离,并在地形瓦片d中、与操作焦点之间的距离最小的三角形网格确定为目标三角形网格,gpu将确定得到的目标三角形网格的标识通过通信总线发送给cpu。cpu根据目标三角形网格的顶点,确定操作焦点在三维地图中的坐标,在确定得到操作焦点在三维地图中的坐标之后,cpu可以向gpu发送操作焦点的坐标,以使gpu可以根据操作焦点的坐标,对终端设备显示的三维地图进行更新。在上述过程中,只需计算地形瓦片d中的三角形网格与操作焦点之间的距离,而在现有技术中,需要计算地形瓦片a-地形瓦片d中的三角形网格与操作焦点之间的距离,因此,节省了计算量,进而提高了对三维地图进行更新的速度。图7为本发明实施例提供的确定操作焦点坐标的装置的结构示意图一。请参见图7,该装置可以包括获取模块11、第一确定模块12、第二确定模块13和第三确定模块14,其中,所述获取模块11用于,在获取到用户对终端设备显示的三维地图输入的地图操作之后,获取所述三维地图的操作焦点;所述第一确定模块12用于,确定所述操作焦点对应的地形瓦片;所述第二确定模块13用于,在所述地形瓦片对应的多个三角形网格中确定目标三角形网格;所述第三确定模块14用于,根据所述目标三角形网格,确定所述操作焦点的坐标。本发明实施例所示的确定操作焦点坐标的装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。图8为本发明实施例提供的确定操作焦点坐标的装置的结构示意图二。在图7所示实施例的基础上,请参见图8,所述第一确定模块12包括绘制单元121、第一获取单元122、第二获取单元123和确定单元124,其中,所述绘制单元121用于,根据所述三维地图中各地形瓦片的颜色,在预设缓存中绘制所述终端设备当前显示的三维地图,得到重绘三维地图,所述重绘三维地图中不同地形瓦片的颜色不同;所述第一获取单元122用于,获取所述操作焦点在所述重绘三维地图中对应的目标颜色;所述第二获取单元123用于,获取所述目标颜色对应的地形瓦片;所述确定单元124用于,将所述目标颜色对应的地形瓦片确定为所述操作焦点对应的地形瓦片。在一种可能的实施方式中,所述第二获取单元123具体用于:获取预设对应关系,所述预设对应关系中包括多个地形瓦片的标识、及每一个地形瓦片对应的颜色;根据所述预设对应关系和所述目标颜色,获取所述目标颜色对应的地形瓦片。在另一种可能的实施方式中,所述第二确定模块13具体用于:分别获取所述操作焦点与每一个三角形网格的距离;将与所述操作焦点距离最小的三角形网格确定为所述目标三角形网格。在另一种可能的实施方式中,所述第三确定模块14具体用于:以所述操作焦点为起点绘制射线,以使所述射线与所述目标三角形网格相交;根据所述射线的方向、及所述目标三角形网格的三个顶点坐标,确定所述操作焦点的坐标。本发明实施例所示的三维地图中确定操作焦点坐标的装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例方案的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1