CN114547216A - 电子地图中立交道路渲染方法、装置,以及电子设备 - Google Patents
电子地图中立交道路渲染方法、装置,以及电子设备 Download PDFInfo
- Publication number
- CN114547216A CN114547216A CN202011249018.7A CN202011249018A CN114547216A CN 114547216 A CN114547216 A CN 114547216A CN 202011249018 A CN202011249018 A CN 202011249018A CN 114547216 A CN114547216 A CN 114547216A
- Authority
- CN
- China
- Prior art keywords
- road
- road line
- point
- capping
- interchange
- 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
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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/006—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes
- G09B29/007—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes using computer methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Ecology (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Remote Sensing (AREA)
- Navigation (AREA)
Abstract
本申请公开了一种电子地图中立交道路渲染方法,属于计算机技术领域,解决了立交道路渲染效率低下的问题。所述方法包括:获取电子地图的立交点压盖关系数据;根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。本申请实施例中公开的立交道路渲染方法不需要进行道路线裁剪,而是直接计算出每条道路线的道路线压盖层级值,降低了计算复杂度,提升了立交道路渲染效率。
Description
技术领域
本申请实施例涉及计算机技术领域,特别是涉及一种电子地图中立交道路渲染方法、装置、电子设备及计算机可读存储介质。
背景技术
电子地图中道路路网的渲染显示效果对用户的体验非常重要,而立交道路的正确显示又是道路路网渲染的难点。电子地图中的立交道路是指两条或多条道路的相交区域建立的上下分层、多方向行驶、互不相扰的现代化道路,由于立交道路其特有的道路结构,在电子地图渲染显示中如何对包含立交关系的道路间压盖层级正确显示是一个难点。
现有技术中常用的立交道路渲染方法包括:根据立交道路相交区域的立交关系,对该立交道路相交区域上层道路的子路段数据进行截取,然后用截取后得到的上层道路的子路段数据覆盖该相交区域下层路段数据,从而得到包含立交关系的电子地图。现有技术中的这种立交道路渲染方法在进行立交区域裁剪时,算法复杂,计算效率低下,不适用于终端设备。
可见,现有技术中电子地图中立交道路渲染方法还需要改进。
发明内容
本申请实施例提供一种电子地图中立交道路渲染方法,能够提升对电子地图中立交道路进行渲染的效率。
第一方面,本申请实施例提供了一种电子地图中立交道路渲染方法,包括:
获取电子地图的立交点压盖关系数据;
根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;
按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
第二方面,本申请实施例提供了一种电子地图中立交道路渲染装置,包括:
立交点压盖关系数据获取模块,用于获取电子地图的立交点压盖关系数据;
道路线压盖层级值确定模块,用于根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;
渲染模块,用于按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
第三方面,本申请实施例还公开了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例所述的电子地图中立交道路渲染方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时本申请实施例公开的电子地图中立交道路渲染方法的步骤。
本申请实施例公开的电子地图中立交道路渲染方法,通过获取电子地图的立交点压盖关系数据;根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线,有助于提升电子地图中立交道路的渲染效率。而本申请实施例中公开的立交道路渲染方法不需要进行道路线裁剪,而是直接计算出每条道路线的道路线压盖层级值,降低了计算复杂度,提升了立交道路渲染效率。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例一的电子地图中立交道路渲染方法流程图;
图2是本申请现有技术中立交道路的立交点示意图;
图3是本申请实施例一的电子地图中立交道路渲染方法一步骤流程图;
图4是采用本申请实施例一中方法渲染图2中立交道路的效果示意图;
图5是本申请实施例二的立交道路渲染装置结构示意图之一;
图6是本申请实施例二的立交道路渲染装置结构示意图之二;
图7示意性地示出了用于执行根据本申请的方法的电子设备的框图;以及
图8示意性地示出了用于保持或者携带实现根据本申请的方法的程序代码的存储单元。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
本申请实施例公开的一种电子地图中立交道路渲染方法,如图1所示,所述方法包括:步骤110至步骤130。
步骤110,获取电子地图的立交点压盖关系数据。
本申请的一些实施例中,可以通过电子地图发行商提供的地图数据获取接口获取电子地图的立交点压盖关系数据。本申请的一些实施例中,所述立交点压盖关系数据包括:指定立交点与立交点标识、关联道路线标识、立交点位置标识、立交点原始压盖层级的对应关系,所述关联道路线标识为所述立交点所属道路线的道路线标识。其中,立交点标识用于唯一标识电子地图中的立交点;所述关联道路线标识与所述立交点所属道路线的道路线标识相对应;立交点位置标识用于唯一标识电子地图中的一组立交点(即两条或两条以上道路线立体交叉时的共同交叉点,如图2所示的立交道路示意图中道路线L1和L2立体交叉形成的立交点P1和P2构成一组立交点);所述立交点原始压盖层级用于标识两条或两条以上道路线立体交叉时的相对压盖层级(例如,当道路线L1和道路线L2上立体交叉于道路线L1上的P1点和道路线L2上的P2点,且道路线L1位于道路线L2的上方时,可以设置立交点P1的原始压盖层级为1,而设置立交点P2的原始压盖层级为0,即立交点原始压盖层级越高,表示立交点所属道路线位于更高层)。
本申请的一些实施例中,所述立交点压盖关系数据还包括:立交点位置等信息,如立交点的位置坐标,用于渲染电子地图或基于位置信息进行地物检索等。
通常,所述立交点压盖关系数据以立交点标识作为索引,标记存储每个立交点对应的关联道路线标识(即该立交点所属道路线标识)、立交点位置标识,以及,立交点原始压盖层级。本实施例中,以所述立交点压盖关系数据中的每条数据通过以下字段表示,举例说明立交点压盖关系数据的处理方案:Data(pointid,roadid,groupid,zvalue,point),其中,字段“pointid”为立交点标识,字段“roadid”为关联道路线标识,字段“groupid”为立交点位置标识,字段“zvalue”为pointid标识的立交点的立交点原始压盖层级。
以图2所示的立交道路为例,所述立交点压盖关系数据可以如下表1所示:
pointid | roadid | groupid | zvalue |
P1 | L1 | 001 | 0 |
P2 | L2 | 001 | 1 |
P3 | L1 | 002 | 1 |
P4 | L3 | 002 | 0 |
表1
其中,立交点P1、P2、P3和P4的立交点标识分别为P1、P2、P3和P4,由表1中的立交点压盖关系数据可以得出如下信息:立交点P1和P3所属道路线为L1,立交点P2所属道路线为L2,立交点P3所属道路线为L3;立交点P1和P2属于一组立交点,立交点P3和P4属于一组立交点;在立交点P1和P2处,道路线L1位于道路线L2的下层;在立交点P3和P4处,道路线L1位于道路线L31的上层(即道路线从L2的下层交叉通过,又从L3的上层交叉通过)。
步骤120,根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值。
在获取到立交点压盖关系数据之后,通过对立交点压盖关系数据进行聚合处理,可以进一步确定立交点压盖关系数据中各道路线的压盖关系。
本申请的一些实施例中,如图3所示,所述根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值,进一步包括以下步骤S1至步骤S4。
S1,将各立交点标识对应的关联道路线标识所标识道路线的道路线压盖层级值初始化为相应立交点标识所对应的立交点原始压盖层级。
本申请的一些实施例中,可以在每条立交点压盖关系数据的基础上,增加“zlevel”字段,“zlevel”字段表示立交点标识对应的关联道路线标识所标识的道路线的道路线压盖层级值。然后,将每个立交点对应的关联道路线标识所标识的道路线的道路线压盖层级值,初始化为该立交点对应的立交点原始压盖层级。
仍以表1中的数据为例,将立交点P1对应的立交点标识P1对应的关联道路线标识L1所标识的道路线(如图2中的道路线L1)的道路线压盖层级值zlevel,初始化为立交点P1对应的立交点原始压盖层级zvalue(如0),初始化之后,道路线L1的道路线压盖层级值zlevel值为0。按照此方法,图2所示的立交道路中道路线的道路线压盖层级值与立交点的对应关系如表2所示。
pointid | roadid | groupid | zvalue | zlevel |
P1 | L1 | 001 | 0 | 0 |
P2 | L2 | 001 | 1 | 1 |
P3 | L1 | 002 | 1 | 1 |
P4 | L3 | 002 | 0 | 0 |
表2
由于每条道路线可能与多条道路线立体交叉,当一条道路线与多条道路线立体交叉时,立交点压盖关系数据中将会存在多个立交点与该道路线的道路线标识对应,即会有多个立交点对应一个关联道路线标识。而当一条道路线与多条道路线立体交叉时,该条道路线可以位于其他道路线的上层,也可以位于其他道路线的下层,还可以为位于部分道路线的上层和另一部分道路线的下层,因此,该条道路线上的各立交点的立交点原始压盖层级zvalue取值可能为不同值。即经过初始化之后,同一个道路线的道路线标识对应的道路线压盖层级值可能不同。
为了便于道路渲染,需要将同一个道路线的道路线标识对应的道路线压盖层级值设置为相同值。接下来,将通过迭代聚合调整道路线标识对应的道路线压盖层级值,使得同一个道路线的道路线标识对应的道路线压盖层级值为相同值。
S2,将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值。
之后,对应同一所述关联道路线标识的各所述道路线压盖层级值更新为相同数值。
本申请的一些实施例中,将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值,包括:基于所述关联道路线标识,对所述立交点压盖关系数据进行聚合处理,分别确定对应每个所述关联道路线标识的所有立交点标识;对于每个所述关联道路线标识,通过对应该关联道路线标识的所有所述道路线压盖层级值中的最高值,更新该关联道路线标识对应的道路线压盖层级值。即,根据在同一条道路线(具有相同关联道路线标识的道路线)上的各立交点对应的道路线压盖层级值,更新相同关联道路线标识对应的所述道路线压盖层级值。例如,同一个roadid对应多个不同的zlevel值时,则更新该roadid对应对应的所有zlevel值为:Max(zlevel1,zlevel2,......)。
以表2中道路线L1为例,关联道路线标识L1的立交点标识包括:立交点P1和P3,即道路线L1上有两个立交点,分别为立交点P1和P3,扩展后的立交点压盖关系数据中,立交点P1对应数据中道路线L1对应的所述道路线压盖层级值zlevel为0,立交点P3对应数据中道路线L1对应的所述道路线压盖层级值zlevel为1,则将道路线L1对应的所述道路线压盖层级值zlevel统一更新为zlevel=1。按照此方案,对扩展后的每条立交点压盖关系数据(如2中的数据)进行更新,可以得到如下表3所示的立交点压盖关系数据。
pointid | roadid | groupid | zvalue | zlevel |
P1 | L1 | 001 | 0 | 1 |
P2 | L2 | 001 | 1 | 1 |
P3 | L1 | 002 | 1 | 1 |
P4 | L3 | 002 | 0 | 0 |
表3
经过一轮道路线压盖层级值更新之后,每个关联道路线标识对应的路线压盖层级值是相同的,但是,如果按照基于关联道路线标识进行聚合和道路线压盖层级值的更新结果进行道路渲染,将会导致一条道路线上多个立交点均位于同一层级,会出现与实际立交点压盖层级不符的效果。例如,道路线L1上的立交点P1和P3的原始压盖层级是不同的,一个是0,一个是1。因此,需要进一步对立交点的压盖层级进行调整。
S3,根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值。
接下来,根据立交点原始压盖层级,将同一个立交位置的道路线的压盖层级,调整为与该立交位置的立交点原始压盖层级关系一致。
本申请的一些实施例中,根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值,包括:基于所述立交点位置标识,对所述立交点压盖关系数据进行聚合处理,分别确定对应每个所述立交点位置标识的所有立交点标识;对于每个所述立交点位置标识,分别执行以下道路线压盖层级值调整操作:按照各立交点所对应的立交点原始压盖层级从低到高的顺序,对该立交点位置标识对应的所有所述立交点进行从前向后排序;将第一个立交点所属道路线的当前道路线压盖层级值,作为所述第一个立交点所属道路线的调整后道路线压盖层级值;从第二个所述立交点起,依次将各所述立交点作为当前立交点,并根据当前立交点所属道路线的道路线压盖层级值、所述当前立交点和前一个立交点各自对应的所述立交点原始压盖层级的差值,以及,所述前一个立交点所属道路线调整后的道路线压盖层级值各自对应,调整当前立交点所属道路线的道路线压盖层级值,直至调整完所述立交点位置标识对应的所有立交点所属道路线的道路线压盖层级值。
以表3中立交压盖数据为例,经过基于立交点位置标识groupid聚类之后,对应groupid=001的立交点标识包括P1和P2,对应groupid=002的立交点标识包括P3和P4。对于立交点位置标识groupid=001,首先将立交点P1和P2按照立交点原始压盖层级zvalue从低到高的顺序,从前向后排序,得到立交点序列P1,P2;然后,对于立交点P1,保持其所属道路线(即道路线L1)的当前道路线压盖层级值zlevel=1;接下来,对于立交点P2,根据立交点P2所属道路线当前道路线压盖层级值zlevel、立交点P1所属道路线(即道路线L1)的更新后道路线压盖层级值zlevel、立交点P1和P2的立交点原始压盖层级zvalue,所属道路线,计算立交点P2所属道路线调整后的道路线压盖层级值zlevel,并更新表3中的与立交点P2对应的立交点压盖关系数据中道路线L2的道路线压盖层级值zlevel。
本申请的一些实施例中,所述根据当前立交点所属道路线的道路线压盖层级值、所述当前立交点和前一个立交点各自对应的所述立交点原始压盖层级的差值,以及,所述前一个立交点所属道路线调整后的道路线压盖层级值各自对应,调整当前立交点所属道路线的道路线压盖层级值,包括:根据公式curLevel=Max(curLevel,preLevel+(curValue-preValue))调整当前立交点所属道路线的道路线压盖层级值;其中,curLevel为当前立交点所属道路线的当前道路线压盖层级值,preValue为前一个所述立交点所属道路线的调整后道路线压盖层级值,curValue为当前所述立交点对应的立交点原始压盖层级,preValue为前一个所述立交点对应的立交点原始压盖层级;Max()为取最大值函数。
例如,对于立交点P2,根据公式Max(curLevel,preLevel+(curValue-preValue))=Max(1,1+(1-0))=2计算立交点P2的关联道路线标识L2的调整后的道路线压盖层级值,其中,curLevel为立交点P2(即当前立交点)的关联道路线标识L2的当前道路线压盖层级值,如表3所示,curLevel=1;preLevel为立交点P1(即前一个立交点)的关联道路线标识L1的当前道路线压盖层级值,如表3所示,preLevel=1;curValue为立交点P2的立交点原始压盖层级,如表3所示,curValue=1;preValue为立交点P1(即前一个立交点)的立交点原始压盖层级,如表3所示,preValue=0。计算结果curLevel=2则为立交点P2(即当前立交点)的关联道路线标识L2的本轮调整后的道路线压盖层级值。
按照上述方法,对于每个立交点位置标识对应的立交点所属道路线的道路线压盖层级值分别进行调整,直至调整完所述立交点位置标识对应的所有立交点所属道路线的道路线压盖层级值。表3中所示的立交点位置标识groupid=1和groupid=2分别对应的立交点所属道路线的道路线压盖层级值将调整为如下表4所示。
表4
S4,判断每个所述关联道路线标识对应的道路线压盖层级值是否相同,若相同,则完成确定所述电子地图中各所述立交点所属道路线的道路线压盖层级值的步骤,否则,执行步骤S2。
接下来,进一步判断是否每条道路线都对应唯一的道路线压盖层级,即判断每个所述关联道路线标识对应的道路线压盖层级值是否唯一。
以表4中的数据为例,关联道路线标识值L1、L2和L3分别对应唯一的道路线压盖层级值,则完成确定所述电子地图中各所述立交点所属道路线的道路线压盖层级值,继续执行后续的地图数据渲染步骤。
本申请的其他实施例中,如果经过本轮更新,依然存在某个关联道路线标识对应多个不同道路线压盖层级值的情况,则说明立交点压盖关系数据中,同一条道路线的道路线压盖层级值不一致,需要迭代更新,直至每个关联道路线标识各自对应的唯一的道路线压盖层级值。
步骤130,按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
在确定了各道路线(即立交点压盖关系数据中各立交点的关联道路线标识所标识的道路线)的道路线压盖层级值之后,则可以按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
本申请的一些实施例中,所述按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线,包括:根据所述关联道路线标识对应的道路线压盖层级值,对所述关联道路线标识所标识的道路线分组,其中,每组道路线对应不同的所述道路线压盖层级值;按照对应的所述道路线压盖层级值由低到高的顺序,依次渲染每组所述道路线。
仍以图2所示的立交道路为例,在确定了道路线L1的道路线压盖层级值为1、道路线L2的道路线压盖层级值为2和道路线L3的道路线压盖层级值为0之后,按照道路线压盖层级值对道路线进行分组,每组中只有一条道路线,例如,表示为第一组中包括:道路线L1;第二组中包括:道路线L2;第三组中包括:道路线L3。那么可以分别确定每组道路线对应的道路线压盖层级值,具体到图2中的立交道路,可以确定:第一组道路线对应的道路线压盖层级值为1;第二组道路线对应的道路线压盖层级值为2;第三组道路线对应的道路线压盖层级值为0。
接下来,按照每组道路线对应的道路线压盖层级值由低到高的顺序,依次渲染每组道路线。例如,首先,渲染第三组道路线(即道路线标识L3对应的道路线,zlevel=0),其次,渲染第一组道路线(即道路线标识L1对应的道路线,zlevel=1),最后,渲染第二组道路线(即道路线标识L2对应的道路线,zlevel=2)。采用本申请实施例公开的立交道路渲染方法对图2中所示的立交道路进行渲染之后,将得到如图4所示的电子地图。
本申请的一些实施中,在按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线的步骤之前,还包括:获取所述电子地图的道路线数据,其中,所述路线数据包括:道路线标识和与所述道路线标识对应的道路属性信息。其中,获取道路线数据的具体实施方式参见现有技术,此处不再赘述。例如,可以在获取电子地图的立交点压盖关系数据时,同时获取所述电子地图的道路线数据。
在确定了电子地图中各道路线的道路线压盖层级值之后,可以将道路线压盖层级值作为道路属性信息的一个字段,在进行道路渲染时使用。例如,对于获取到的每条道路线数据,在其原有的道路线属性信息包括:道路名称、道路类型等信息的基础上,增加道路线压盖层级值,然后,按照道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
在对一组道路线及进行渲染时,首先渲染该组内各道路线的道路面,之后,渲染该组内各道路线的道路描边。
至此,完成了立交道路的渲染过程。
本申请实施例公开的电子地图中立交道路渲染方法,通过获取电子地图的立交点压盖关系数据;根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线,有助于提升电子地图中立交道路的渲染效率。而本申请实施例中公开的立交道路渲染方法不需要进行道路线裁剪,而是直接计算出每条道路线的道路线压盖层级值,降低了计算复杂度,提升了立交道路渲染效率。
另一方面,现有技术中裁剪道路段的长度依赖立交区域关联道路的宽度,而电子地图数据中标识道路宽度的线段的宽度没有统一的标准,使得裁剪过程中容易出现数据错误,导致渲染得到的电子地图中立交区域道路间出现缺口或平交的现象。而本申请实施例中公开的立交道路渲染方法不需要进行道路线裁剪,而是直接计算出每条道路线的道路线压盖层级值,渲染过程不受道路线宽度限制,道路宽度可以根据现实需要进行调整,不影响立交压盖关系的正确性,改善了立交道路渲染效果。
实施例二
本申请实施例公开的一种电子地图中立交道路渲染装置,如图5所示,所述装置包括:
立交点压盖关系数据获取模块510,用于获取电子地图的立交点压盖关系数据;
道路线压盖层级值确定模块520,用于根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;
渲染模块530,用于按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
本申请的一些实施例中,每条所述立交点压盖关系数据包括:指定立交点与立交点标识、关联道路线标识、立交点位置标识、立交点原始压盖层级的对应关系,所述关联道路线标识为所述立交点所属道路线的道路线标识,如图6所示,所述道路线压盖层级值确定模块520,进一步包括以下子模块:
道路线压盖层级值初始化子模块5201,用于将各立交点标识对应的关联道路线标识所标识道路线的道路线压盖层级值初始化为相应立交点标识所对应的立交点原始压盖层级;
第一聚合子模块5202,用于将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值;
第二聚合子模块5203,用于根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值;
判断子模块5204,用于判断每个所述关联道路线标识对应的道路线压盖层级值是否相同,若相同,则完成确定所述电子地图中各所述立交点所属道路线的道路线压盖层级值的步骤,否则,跳转至执行所述第一聚合子模块5202。
本申请的一些实施例中,所述将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值,包括:
基于所述关联道路线标识,对所述立交点压盖关系数据进行聚合处理,分别确定对应每个所述关联道路线标识的所有立交点标识;
对于每个所述关联道路线标识,通过对应该关联道路线标识的所有所述道路线压盖层级值中的最高值,更新该关联道路线标识对应的道路线压盖层级值。
本申请的一些实施例中,所述根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值,包括:
基于所述立交点位置标识,对所述立交点压盖关系数据进行聚合处理,分别确定对应每个所述立交点位置标识的所有立交点标识;
对于每个所述立交点位置标识,分别执行以下道路线压盖层级值调整操作:
按照各立交点所对应的立交点原始压盖层级从低到高的顺序,对该立交点位置标识对应的所有所述立交点进行从前向后排序;
将第一个立交点所属道路线的当前道路线压盖层级值,作为所述第一个立交点所属道路线的调整后道路线压盖层级值;
从第二个所述立交点起,依次将各所述立交点作为当前立交点,并根据当前立交点所属道路线的道路线压盖层级值、所述当前立交点和前一个立交点各自对应的所述立交点原始压盖层级的差值,以及,所述前一个立交点所属道路线调整后的道路线压盖层级值各自对应,调整当前立交点所属道路线的道路线压盖层级值,直至调整完所述立交点位置标识对应的所有立交点所属道路线的道路线压盖层级值。
本申请的一些实施例中,所述根据当前立交点所属道路线的道路线压盖层级值、所述当前立交点和前一个立交点各自对应的所述立交点原始压盖层级的差值,以及,所述前一个立交点所属道路线调整后的道路线压盖层级值各自对应,调整当前立交点所属道路线的道路线压盖层级值的步骤,包括:根据公式curLevel=Max(curLevel,preLevel+(curValue-preValue))调整当前立交点所属道路线的道路线压盖层级值;其中,curLevel为当前立交点所属道路线的当前道路线压盖层级值,preValue为前一个所述立交点所属道路线的调整后道路线压盖层级值,curValue为当前所述立交点对应的立交点原始压盖层级,preValue为前一个所述立交点对应的立交点原始压盖层级;Max()为取最大值函数。
本申请的一些实施例中,所述渲染模块530进一步用于:
根据所述关联道路线标识对应的道路线压盖层级值,对所述关联道路线标识所标识的道路线分组,其中,每组道路线对应不同的所述道路线压盖层级值;以及,
按照对应的所述道路线压盖层级值由低到高的顺序,依次渲染每组所述道路线。
本申请实施例公开的电子地图中立交道路渲染装置,用于实现本申请实施例一中所述的电子地图中立交道路渲染方法,装置的各模块的具体实施方式不再赘述,可参见方法实施例相应步骤的具体实施方式。
本申请实施例公开的电子地图中立交道路渲染装置,通过获取电子地图的立交点压盖关系数据;根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线,有助于提升电子地图中立交道路的渲染效率。而本申请实施例中公开的立交道路渲染方法不需要进行道路线裁剪,而是直接计算出每条道路线的道路线压盖层级值,降低了计算复杂度,提升了立交道路渲染效率。
另一方面,现有技术中裁剪道路段的长度依赖立交区域关联道路的宽度,而电子地图数据中标识道路宽度的线段的宽度没有统一的标准,使得裁剪过程中容易出现数据错误,导致渲染得到的电子地图中立交区域道路间出现缺口或平交的现象。而本申请实施例中公开的立交道路渲染方法不需要进行道路线裁剪,而是直接计算出每条道路线的道路线压盖层级值,渲染过程不受道路线宽度限制,道路宽度可以根据现实需要进行调整,不影响立交压盖关系的正确性,改善了立交道路渲染效果。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本申请提供的一种电子地图中立交道路渲染方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其一种核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的电子设备中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图7示出了可以实现根据本申请的方法的电子设备。所述电子设备可以为PC机、移动终端、个人数字助理、平板电脑等。该电子设备传统上包括处理器710和存储器720及存储在所述存储器720上并可在处理器710上运行的程序代码730,所述处理器710执行所述程序代码730时实现上述实施例中所述的方法。所述存储器720可以为计算机程序产品或者计算机可读介质。存储器720可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器720具有用于执行上述方法中的任何方法步骤的计算机程序的程序代码730的存储空间7201。例如,用于程序代码730的存储空间7201可以包括分别用于实现上面的方法中的各种步骤的各个计算机程序。所述程序代码730为计算机可读代码。这些计算机程序可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。所述计算机程序包括计算机可读代码,当所述计算机可读代码在电子设备上运行时,导致所述电子设备执行根据上述实施例的方法。
本申请实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例一所述的电子地图中立交道路渲染方法的步骤。
这样的计算机程序产品可以为计算机可读存储介质,该计算机可读存储介质可以具有与图7所示的电子设备中的存储器720类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩存储在所述计算机可读存储介质中。所述计算机可读存储介质通常为如参考图8所述的便携式或者固定存储单元。通常,存储单元包括计算机可读代码730’,所述计算机可读代码730’为由处理器读取的代码,这些代码被处理器执行时,实现上面所描述的方法中的各个步骤。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本申请的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种电子地图中立交道路渲染方法,其特征在于,包括:
获取电子地图的立交点压盖关系数据;
根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;
按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
2.根据权利要求1所述的方法,其特征在于,每条所述立交点压盖关系数据包括:指定立交点与立交点标识、关联道路线标识、立交点位置标识、立交点原始压盖层级的对应关系,所述关联道路线标识为所述立交点所属道路线的道路线标识,所述根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值,进一步包括以下步骤:
S1,将各立交点标识对应的关联道路线标识所标识道路线的道路线压盖层级值初始化为相应立交点标识所对应的立交点原始压盖层级;
S2,将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值;
S3,根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值;
S4,判断每个所述关联道路线标识对应的道路线压盖层级值是否相同,若相同,则完成确定所述电子地图中各所述立交点所属道路线的道路线压盖层级值的步骤,否则,跳转至执行步骤S2。
3.根据权利要求2所述的方法,其特征在于,所述将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值的步骤,包括:
基于所述关联道路线标识,对所述立交点压盖关系数据进行聚合处理,分别确定对应每个所述关联道路线标识的所有立交点标识;
对于每个所述关联道路线标识,通过对应该关联道路线标识的所有所述道路线压盖层级值中的最高值,更新该关联道路线标识对应的道路线压盖层级值。
4.根据权利要求2所述的方法,其特征在于,所述根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值的步骤,包括:
基于所述立交点位置标识,对所述立交点压盖关系数据进行聚合处理,分别确定对应每个所述立交点位置标识的所有立交点标识;
对于每个所述立交点位置标识,分别执行以下道路线压盖层级值调整操作:
按照各立交点所对应的立交点原始压盖层级从低到高的顺序,对该立交点位置标识对应的所有所述立交点进行从前向后排序;
将第一个立交点所属道路线的当前道路线压盖层级值,作为所述第一个立交点所属道路线的调整后道路线压盖层级值;
从第二个所述立交点起,依次将各所述立交点作为当前立交点,并根据当前立交点所属道路线的道路线压盖层级值、所述当前立交点和前一个立交点各自对应的所述立交点原始压盖层级的差值,以及,所述前一个立交点所属道路线调整后的道路线压盖层级值各自对应,调整当前立交点所属道路线的道路线压盖层级值,直至调整完所述立交点位置标识对应的所有立交点所属道路线的道路线压盖层级值。
5.根据权利要求4所述的方法,其特征在于,所述根据当前立交点所属道路线的道路线压盖层级值、所述当前立交点和前一个立交点各自对应的所述立交点原始压盖层级的差值,以及,所述前一个立交点所属道路线调整后的道路线压盖层级值各自对应,调整当前立交点所属道路线的道路线压盖层级值的步骤,包括:根据公式curLevel=Max(curLevel,preLevel+(curValue-preValue))调整当前立交点所属道路线的道路线压盖层级值;其中,curLevel为当前立交点所属道路线的当前道路线压盖层级值,preValue为前一个所述立交点所属道路线的调整后道路线压盖层级值,curValue为当前所述立交点对应的立交点原始压盖层级,preValue为前一个所述立交点对应的立交点原始压盖层级;Max()为取最大值函数。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线的步骤,包括:
根据所述关联道路线标识对应的道路线压盖层级值,对所述关联道路线标识所标识的道路线分组,其中,每组道路线对应不同的所述道路线压盖层级值;
按照对应的所述道路线压盖层级值由低到高的顺序,依次渲染每组所述道路线。
7.一种电子地图中立交道路渲染装置,其特征在于,包括:
立交点压盖关系数据获取模块,用于获取电子地图的立交点压盖关系数据;
道路线压盖层级值确定模块,用于根据所述立交点压盖关系数据中包含的立交点的位置、立交点所属道路线,以及,所述立交点的立交点原始压盖层级,计算所述电子地图中各所述立交点所属道路线的道路线压盖层级值;
渲染模块,用于按照所述电子地图中各道路线的道路线压盖层级值由低到高的顺序,依次渲染所述关联道路线标识所标识的道路线。
8.根据权利要求7所述的装置,其特征在于,每条所述立交点压盖关系数据包括:指定立交点与立交点标识、关联道路线标识、立交点位置标识、立交点原始压盖层级的对应关系,所述关联道路线标识为所述立交点所属道路线的道路线标识,所述道路线压盖层级值确定模块,进一步包括以下子模块:
道路线压盖层级值初始化子模块,用于将各立交点标识对应的关联道路线标识所标识道路线的道路线压盖层级值初始化为相应立交点标识所对应的立交点原始压盖层级;
第一聚合子模块,用于将对应同一所述关联道路线标识的各所述道路线压盖层级值,更新为最大的所述道路线压盖层级值;
第二聚合子模块,用于根据对应同一所述立交点位置标识的各立交点所对应的所述立交点原始压盖层级,调整各所述立交点对应的所述关联道路线标识对应的道路线压盖层级值;
判断子模块,用于判断每个所述关联道路线标识对应的道路线压盖层级值是否相同,若相同,则完成确定所述电子地图中各所述立交点所属道路线的道路线压盖层级值的步骤,否则,跳转至执行所述第一聚合子模块。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的程序代码,其特征在于,所述处理器执行所述程序代码时实现权利要求1至6任意一项所述的电子地图中立交道路渲染方法。
10.一种计算机可读存储介质,其上存储有程序代码,其特征在于,该程序代码被处理器执行时实现权利要求1至6任意一项所述的电子地图中立交道路渲染方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011249018.7A CN114547216A (zh) | 2020-11-10 | 2020-11-10 | 电子地图中立交道路渲染方法、装置,以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011249018.7A CN114547216A (zh) | 2020-11-10 | 2020-11-10 | 电子地图中立交道路渲染方法、装置,以及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114547216A true CN114547216A (zh) | 2022-05-27 |
Family
ID=81659778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011249018.7A Pending CN114547216A (zh) | 2020-11-10 | 2020-11-10 | 电子地图中立交道路渲染方法、装置,以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114547216A (zh) |
-
2020
- 2020-11-10 CN CN202011249018.7A patent/CN114547216A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109994038B (zh) | 不规则区域内兴趣点确定方法、装置、电子设备 | |
CN109376761B (zh) | 一种地址标识及其经纬度的挖掘方法及装置 | |
CN108806472B (zh) | 电子地图中的道路渲染方法、装置和处理方法、装置 | |
TW201115122A (en) | Methods and apparatus for processing road data | |
CN113486437B (zh) | 基于穷举的总图生成方法、装置、设备及存储介质 | |
CN112154446B (zh) | 立体车道线确定方法、装置和电子设备 | |
CN112233240A (zh) | 三维矢量地图的三维矢量数据切片方法、装置及电子设备 | |
CN108801289B (zh) | 诱导箭头规划方法、装置、导航系统和存储介质 | |
CN109815419B (zh) | 基于地理位置的兴趣点索引方法、装置、介质及电子设备 | |
KR101797325B1 (ko) | 건물 객체에 대한 다축척 모델 기반의 지도 처리 방법 | |
CN110120087B (zh) | 三维虚拟沙盘的标签标注方法、装置及终端设备 | |
CN109213949A (zh) | 热力图的绘制方法和装置 | |
CN104776855A (zh) | 一种交叉路口的导航方法和装置 | |
CN112214562A (zh) | 数据处理方法、装置、电子设备及机器可读存储介质 | |
Wibowo et al. | Mapping and grouping of farm land with Graham scan algorithm on convex hull method | |
CN111382765B (zh) | 投诉热点区域聚类方法、装置、设备、介质 | |
CN112579715A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN114387413A (zh) | 一种基于可视化引擎的三维地图生成方法和系统 | |
CN117556158A (zh) | 耦合地名标签与等值线的用户周边地点可视化方法及系统 | |
CN114547216A (zh) | 电子地图中立交道路渲染方法、装置,以及电子设备 | |
CN108960536B (zh) | 一种景区路牌配置方法及系统 | |
CN106998476A (zh) | 一种基于地理信息系统的视频查看方法和装置 | |
Prechtel | On strategies and automation in upgrading 2D to 3D landscape representations | |
CN109520513A (zh) | 一种三维地图绘制方法及装置 | |
CN107977372B (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 |