使用硬件镶嵌对道路和路线进行图形表示的制作方法

文档序号:9564447阅读:398来源:国知局
使用硬件镶嵌对道路和路线进行图形表示的制作方法
【技术领域】
[0001] 本公开总体上涉及使用硬件镶嵌(tessellation)的制图(cartographic)数据的 表示。具体而言,一种解决方案专用于根据描述路段的至少一个二维或三维道路轮廓的制 图数据对路段进行图形表示。
【背景技术】
[0002] 通常,数字地图数据包括道路边缘数据和道路节点数据,以便再现路网。道路边缘 表示路网内在两个连续的十字路口或交叉点之间的路段。道路节点表示在路网内的十字路 口或交叉点。
[0003] 路网的图形表示大体上在于路网的各个道路的道路轮廓的具体视觉再现。相似的 陈述适用于在路线计算函数的过程中的计算的路线的表示,其中在路线计算函数中,计算 的路线的道路轮廓被(完全或逐段)表示。道路轮廓描述了在制图坐标系内的道路、路段 或路线的曲线轮廓。
[0004] 为了描述道路轮廓,所谓的形状点已被保存在数字地图数据内。在这种情况下,每 个路段(或者每个道路边缘)与描述路段的曲线轮廓的一系列形状点相关联。每个形状点 表示相对于制图坐标系的位置(例如,地理经度和地理炜度)。
[0005] 在当前表示方法中,利用分配给路段或路线的形状点,来进行路段或路线的图形 表示。根据形状点的位置,表示道路轮廓,道路轮廓线性插在各个相邻的形状点之间。
[0006] 在图IA和图IB中显示了通过在相邻的形状点之间的线性内插实现的路段的这种 图形表示的一个实例。图IA显示了由均在节点62处结束的路段60、63、64构成的路网的 细节。由于路段显示出强曲率,所以线性内插在形状点60 &、6013、63&、6313、64&与节点62之 间的曲线轮廓造成有角度的并且不平滑的过渡。从在图IA中显示的右边的示意图中立即 可见,在点60b、62、63a、64a上出现明显的过渡,这些点通过极度失真的方式再现真实的曲 线轮廓。
[0007] 使曲线轮廓显得更平滑的一种可能的方式包括提供其它的形状点,以便进一步减 小相邻形状点的间距,如在图IB中显示的左边示图中示意性表示。这里,额外的形状点(由 小圆圈表示)插在现有的形状点60a、60b、63a、63b、64a、64b之间。从在图IB中的右边的 示意图中立即可见,实际上可以更平滑地并且因此更现实地表示曲线轮廓。
[0008] 然而,这种类型的解决方案的缺点在于,在地图数据内提供的信息进一步增加,结 果,需要甚至更多的内存空间。而且,由于在图形表示的过程中,必须单独处理每个形状点, 所以随着形状点的数量的增大,要表示的每个帧的处理时间增加。这以图形表示的速度为 代价。然而,由于为了清楚地(liquid)表示,通常必须以每秒数次的频率对地图数据进行 图形更新,所以缓慢的图形表示不可取。因此,由于性能的原因,所以选择较小数量的形状 点,因此,接受地图数据的低质量的图形表示。

【发明内容】

[0009] 因此,作为本公开的基础的目标在于,提供一种改进的图形表示方法,该方法尤其 进一步改进了道路和路线的表不。
[0010] 根据本公开的第一方面,提供了一种用于使用硬件镶嵌对路段进行图形表示的计 算机实现的方法,其中,每个路段被分配对该路段的至少一个二维或三维道路轮廓进行描 述的制图数据。这里,所述方法包括以下步骤:提供对路段的道路轮廓进行描述的参数化 (parametrisation);将路段的参数化逐段地分割成相互独立的曲线段;为每个曲线段提 供至少一个镶嵌因子,所述至少一个镶嵌因子指定每个曲线段将在道路轮廓的方向上被细 分成多少个子段;基于所述至少一个镶嵌因子,针对每个曲线段生成镶嵌图案;并且基于 所生成的镶嵌图案并且基于参数化的道路轮廓,生成能够在屏幕上被表示的基元。
[0011] 路段可以描述在路网的两个连续的十字路口或交叉点之间的道路部分或路线部 分。因此,路网或路线可以通过属于路网或属于路线的路段的图形表示来图形表示。
[0012] 道路轮廓可以描述路段或道路相对于预定的制图坐标系的曲线轮廓(例如,几何 形状)。换言之,道路轮廓可以再现路段的弯曲度。在一个变型中,路段的弯曲度描述由路 段的角度变化相对于路段的长度构成的比率。在地图数据中考虑地形时,道路轮廓还可以 是三维的。每个路段的曲线轮廓可以由储存在制图数据内的形状点描述。具体而言,每个路 段可以描述为由一系列形状点构成。每个形状点由其在制图坐标系内的地理位置(炜度、 经度并且在适当的情况下是高度)描述。
[0013] 可以根据向量图形实现路段或道路的图形表示。这里,每个路段可以借助于基元 来图形表示。换言之,每个路段可以由基元组成或构成。通过'基元',人们理解基本的图形 元素,包括点、线、三角形、矩形和/或多边形。为了图形表示的目的,由于要表示的任何区 域(表面)能够表示为由三角形构成,所以尤其地,三角形可以用作基元。而且,图形处理 器(图形处理单元或GPU)被频繁地优化以用于三角形基元的表示。要理解的是,除了三角 形以外的其他基元(例如,矩形)也可以用于路段的图形表示。
[0014] 每个路段可以由针对曲线段生成的基元构成并且用图形表示。这里,为了路段的 图形表示的目的生成基元取决于所生成的镶嵌图案。镶嵌图案可以指定参数化路段(曲线 段)要被分割成多少个基元。所述图案还可以指定哪些基元(例如,三角形)要用于分割。 因此,镶嵌图案可以建立分割的程度(具有多个基元的细孔分割或者具有几个基元的粗孔 分割)以及分割的类型(矩形、三角形等)。
[0015] 因此,每个曲线段的曲线轮廓可以由所生成的基元线性内插。这里,内插的质量可 以取决于在曲线轮廓的方向上生成的基元的数量。在这种情况下,在曲线段的曲线轮廓的 方向上的基元的数量可以由分配给道路轮廓的镶嵌因子确定。
[0016] 对于每个曲线段,可以动态地计算分配给道路轮廓的镶嵌因子。这里,可以至少根 据每个曲线段的曲线轮廓,(单独地)计算所述镶嵌因子。可以通过如下方式计算所述镶 嵌因子:与具有低弯曲度的曲线段相比,将更大的镶嵌因子提供给具有高弯曲度的曲线段。 结果,可以确保具有高弯曲度的曲线段在道路轮廓的方向由较多的基元表示,而具有低弯 曲度的曲线段借助于几个基元来图形表示。通过使用大镶嵌因子(因此,使用细孔镶嵌), 对于具有高弯曲度的曲线段,可以确保通过基元的图形表示尽力地内插曲线段的实际曲线 轮廓,从而保证曲线的平滑图形表示。另一方面,具有低弯曲度或者几乎线性轮廓的曲线段 仅仅需要几个基元即可获得曲线的平滑图形表示。因此,通过以曲线段相关的方式生成分 配给曲线轮廓的镶嵌因子,可以确定以何种细节精度来可以用图形表示每个曲线段。
[0017] 为了计算分配给道路轮廓的镶嵌因子,可以利用曲线段的在屏幕上(或者在某个 其他光学输出介质上)投射的曲线轮廓。根据视角,投射的曲线轮廓可以与路段的实际曲 线轮廓不同。例如,在侧面图模式中,具有高的实际弯曲度的曲线段可以在屏幕上大致线性 表示。对于这种类型的路段,不需要在图形表示中的高精度细节,因此,可以提供沿着道路 轮廓的小镶嵌因子。
[0018] 根据一个实现方式,根据等式Utess= 2x Iog(S)/l〇g(e。),可以计算为针对在参 数区间[Ut1J内参数化的曲线段寫的道路轮廓分配的镶嵌因子,其中,U tass表示镶嵌因 子,S指定预设的精度值,并且其中,根据参数化^的起点
终点
以及启
通过计算连接起点I1和终点的&的直线与点I i的间 隔,来计算ε。。这里,&以及可以是投射在屏幕坐标上的参数曲线的值。而且,预 设的精度值S可以按像素指定。所述值可以设为像素的一部分(例如,像素的一半)。应 理解的是,预设的精度值还可以采用另一个值(例如,一个像素)。
[0019] 作为曲线轮廓相关的计算的替代或补充,还可以根据要表示的曲线段的视场,计 算分配给道路轮廓的镶嵌因子。例如,从观看者的角度来看,与紧邻观看者的曲线段相比, 可以更粗糙地细分位于更远处的曲线段(因此,可以通过更低精度的细节进行图形表示)。
[0020] 由于道路和路线在屏幕上不仅表示为一维线条,而是表示为具有某个(可变)道 路宽度的二维图形对象,所以可以针对与道路轮廓垂直的方向(即,沿着道路宽度)提供另 一镶嵌因子。这里,分配给道路宽度的镶嵌因子采用恒定值。例如,该镶嵌因子可以取值1。 在这种情况下,在道路宽度的方向不实现任何镶嵌(即,不进一步分割成基元)。当然,根据 一个替代的变型,在道路宽度的方向上的镶嵌因子还可以采用另一个值。在这两种情况下, 在道路宽度的方向的镶嵌因子不取决于曲线段的曲线轮廓。
[0021] 生成镶嵌图案的步骤可以包括以下子步骤:根据所提供的至少一个镶嵌因子,生 成扫描点,所述扫描点指定曲线段沿着道路轮廓的细分程度。所述生成步骤可以进一步包 括根据分配给道路宽度的镶嵌因子,生成扫描点,所述扫描点指定曲线段的宽度的细分程 度。所述生成步骤可以进一步包括根据扫描点生成二维图案。镶嵌图案可以由三角形构成, 其中扫描点形成三角形图案的顶点。
[0022] 所述生成能够被表示的基元的步骤可以包括以下子步骤:实现将道路轮廓的参数 化映射到扫描空间的坐标上的坐标变换;通过沿着道路轮廓在扫描点处评估变换的参数 化,计算顶点;以及根据所生成的顶点,生成能够用图形表示的基元。
[0023] 所述计算顶点的步骤可以进一步包括:通过沿着道路轮廓评估在扫描点处的变换 的参数化,并且通过沿着位于扫描平面内并且与道路轮廓垂直的法向向量评估为道路宽度 提供的顶点,来计算顶点。
[0024] 为路段提供道路轮廓的参数化的步骤可以包括根据先前储存的标记道路轮廓的 形状点计算路段的参数化的步骤。在这种情况下,可以通过将参数化的曲线内插到形状点 的方式计算参数化。可以即时(即,在图形表示期间)计算参数化。但是还可以想象在地 图数据的编译过程中生成参数化并且将其保存在地图数据内。
[0025] 作为替代,地图的供应商还可以提供路段的参数化。在这种情况下,提供参数化包 括读出和上传参数化到工作存储器或者在图形存储器,以用于进一步处理。
[0026] 根据一个变型,借助于通过非均匀分布节点和检查点(所谓的德布尔(de-Boor) 点)(下面称为'二次NUBS')描述的二次B样条,可以实现参数化。如上所述,可以根据提 供给路段的形状点,实现通过NUBS的路段的道路轮廓的参数化。作为替代,还可以通过贝 塞尔曲线或立方NUBS或其他方式,执行曲线参数化。
[0027] 将路段的参数化逐段分割成相互独立的路段的步骤可以包括将对路段的道路轮 廓进行描述的NUBS分割成相互独立的二次多项式。这里,每个多项式可以形成最小单元, 描述路
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1