CN107481300B - 一种导航路面生成方法及系统 - Google Patents
一种导航路面生成方法及系统 Download PDFInfo
- Publication number
- CN107481300B CN107481300B CN201710703845.0A CN201710703845A CN107481300B CN 107481300 B CN107481300 B CN 107481300B CN 201710703845 A CN201710703845 A CN 201710703845A CN 107481300 B CN107481300 B CN 107481300B
- Authority
- CN
- China
- Prior art keywords
- straight line
- line segment
- points
- line section
- normal vector
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Navigation (AREA)
Abstract
本发明公开了一种导航路面生成方法及系统,获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量,根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展对的两个点位于第一直线路段的法向量方向,以两个端点扩展的点为基准生成多个三角形,生成第一直线路段的导航路面,并对导航路面进行渲染。本方案通过在第一直线路段的两个端点两侧分别扩展两个点,并以现有的点为基准生成多个三角形,形成导航路面,以便于进行渲染,算法简单精确,路面均匀,效率高。
Description
技术领域
本发明涉及控制领域,尤其涉及一种导航路面生成方法及系统。
背景技术
在导航过程中,可以将给定路线生成路面,以路面的形式展示给用户,从而突出显示导航路线。
然而,目前,对于给定路线生成的路面,其生成路面的算法复杂,并且由于算法问题导致路面宽度不均匀,数据不精确。
发明内容
有鉴于此,本发明提供一种导航路面生成方法及系统,以解决现有技术中生成给定离线路面的算法复杂,并且由于算法问题导致路面不均匀,数据不精确的问题,其具体方案如下:
一种导航路面生成方法,包括:
获取导航路线中的第一直线路段;
获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量;
根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向;
以所述两个端点的两侧分别扩展的两个点为基准生成多个三角形,并对生成的所述多个三角形进行渲染,生成所述第一直线路段的导航路面。
进一步的,还包括:
当所述第一直线路段的导航路面与第二直线路段的导航路面连接形成拐角时,确定所述第一直线路段与第二直线路段的法向量夹角;
当所述第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,确定所述第一直线路段与第二直线路段连接的端点处扩展的两个点形成的线段为第一扩展线段,所述第二直线路段与第一直线路段连接的端点处扩展的两个点形成的线段为第二扩展线段;
在所述第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值;
将所述第一直线路段与第二直线路段连接的端点相同一侧的扩展线段的点连接,形成弧线段。
进一步的,所述在所述第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值,包括:
确定差值角度,所述差值角度不大于所述预设角度阈值;
将所述第一扩展线段以所述第一直线路段与第二直线路段连接的端点为基准进行旋转,生成新的扩展线段,至所述第一扩展线段与所述第二扩展线段重合时停止,所述旋转的旋转角度为所述差值角度。
进一步的,所述获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量,包括:
获取所述第一直线路段的方向向量,根据所述方向向量确定所述第一直线路段的单位方向向量;
根据所述单位方向向量确定所述第一直线路段的单位法向量。
进一步的,所述根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向,包括:
向所述第一直线路段的两个端点的两侧分别扩展位于所述法向量方向的两个点,所述扩展的两个点距离与其对应端点的距离相同。
一种导航路面生成系统,包括:获取单元,扩展单元,生成单元,其中:
所述获取单元用于获取导航路线中的第一直线路段,获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量;
所述扩展单元用于根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向;
所述生成单元用于以所述两个端点的两侧分别扩展的两个点为基准生成多个三角形,并对生成的所述多个三角形进行渲染,生成所述第一直线路段的导航路面。
进一步的,还包括:插值单元,
所述插值单元用于当所述第一直线路段的导航路面与第二直线路段的导航路面连接形成拐角时,确定所述第一直线路段与第二直线路段的法向量夹角;当所述第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,确定所述第一直线路段与第二直线路段连接的端点处扩展的两个点形成的线段为第一扩展线段,所述第二直线路段与第一直线路段连接的端点处扩展的两个点形成的线段为第二扩展线段;
在所述第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值;将所述第一直线路段与第二直线路段连接的端点相同一侧的扩展线段的点连接,形成弧线段。
进一步的,所述插值单元在所述第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值,包括:
所述插值单元确定差值角度,所述差值角度不大于所述预设角度阈值,将所述第一扩展线段以所述第一直线路段与第二直线路段连接的端点为基准进行旋转,生成新的扩展线段,至所述第一扩展线段与所述第二扩展线段重合时停止,所述旋转的旋转角度为所述差值角度。
进一步的,所述获取单元获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量,包括:
所述获取单元获取所述第一直线路段的方向向量,根据所述方向向量确定所述第一直线路段的单位方向向量,根据所述单位方向向量确定所述第一直线路段的单位法向量。
进一步的,所述扩展单元根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向,包括:
所述扩展单元向所述第一直线路段的两个端点的两侧分别扩展位于所述法向量方向的两个点,所述扩展的两个点距离与其对应端点的距离相同。
从上述技术方案可以看出,本申请公开的导航路面生成方法及系统,获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量,根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展对的两个点位于第一直线路段的法向量方向,以两个端点扩展的点为基准生成多个三角形,生成第一直线路段的导航路面,并对导航路面进行渲染。本方案通过在第一直线路段的两个端点两侧分别扩展两个点,并以现有的点为基准生成多个三角形,形成导航路面,以便于进行渲染,算法简单精确,路面均匀,效率高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种导航路面生成方法的流程图;
图2为本发明实施例公开的一种第一直线路段的扩展示意图;
图3为本发明实施例公开的一种导航路面生成方法的流程图;
图4为本发明实施例公开的一种导航路面生成方法的流程图;
图5为本发明实施例公开的第一直线路段与第二直线路段的导航路面连接图;
图6为本发明实施例公开的一种导航路面生成系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种导航路面生成方法,其流程图如图1所示,包括:
步骤S11、获取导航路线中的第一直线路段;
导航路线可以为一段直线路段,也可以为多条直线路段组合而成的折线路段。当导航路线为多段直线路段组成的折线路段时,将该折线路段以每段直线路段为单位分别进行路面的生成。
步骤S12、获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量;
方向向量用于表示第一直线路段的方向,即与第一直线路段平行的非零向量,法向量为与第一直线路段垂直的非零向量。
例如:若方向向量用(X,Y)表示,那么,法向量可以用(Y,X)表示。
步骤S13、根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展的两个点位于第一直线路段的法向量方向;
根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,即第一直线路段的两个端点中的每个端点,分别在法向量方向上向两侧扩展两个点。
具体的,如图2所示,第一直线路段可以用AB表示,第一直线路段AB的两个端点分别为A和B,方向向量用(X,Y)表示,法向量用(Y,X)表示。
第一直线路段的两个端点的两侧,即A和B这两个端点在法向量方向上的点,A两侧在法向量方向上的两个点可以为A1、A2,B两侧在法向量方向上的两个点可以为B1、B2,A1A2两点的连线经过A点,且与第一直线路段垂直,B1B2两点的连线经过B点,且与第一直线路段垂直。
其中,A1到A点的距离可以与A2到A点的距离相同,也可以不同,但是,A1到A点的距离需要与B1到B点的距离相同,其中,A1与B1均在第一直线路段的同一侧,A2到A点的距离需要与B2到B点的距离相同,A2与B2均在第一直线路段的同一侧。
步骤S14、以两个端点的两侧分别扩展的两个点为基准生成多个三角形,形成第一直线路段的导航路面,并对导航路面进行渲染。
如图2所示,以A1、A2、B1、B2为顶点生成多个三角形,由生成的多个三角形形成路面网格,即形成导航路面,并对生成的导航路面进行渲染。
本实施例公开的导航路面生成方法,获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量,根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展对的两个点位于第一直线路段的法向量方向,以两个端点扩展的点为基准生成多个三角形,生成第一直线路段的导航路面,并对导航路面进行渲染。本方案通过在第一直线路段的两个端点两侧分别扩展两个点,并以现有的点为基准生成多个三角形,形成导航路面,以便于进行渲染,算法简单精确,路面均匀,效率高。
本实施例公开了一种导航路面生成方法,其流程图如图3所示,包括:
步骤S31、获取导航路线中的第一直线路段;
步骤S32、获取第一直线路段的方向向量,并根据方向向量确定第一直线路段的单位方向向量;
单位方向向量即方向向量的模长度变为1,当方向向量用(X,Y)表示,当X2+Y2=1时,(X,Y)为单位方向向量。
步骤S33、根据单位方向向量确定第一直线路段的单位法向量;
单位法向量与单位方向向量垂直,当(X,Y)为单位方向向量,(Y,X)为单位法向量。
步骤S34、根据单位法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展的两个点位于第一直线路段的单位法向量方向;
具体的,向第一直线路段的两个端点的两侧分别扩展位于单位法向量方向的两个点,扩展的两个点距离与其对应端点的距离相同,即图2中,A1到A的距离与A2到A的距离相同,B1到B的距离与B2到B的距离相同,且A1到A的距离与B1到B的距离相同。
具体的,A1的坐标可以为:A点的坐标加上单位法向量与路面宽度半径的乘积的和;A2的坐标可以为A点的坐标减去单位法向量与路面宽度半径的乘积的差;B1的坐标可以为:B点的坐标加上单位法向量与路面宽度半径的乘积的和;B2的坐标可以为:B点的坐标减去单位法向量与路面宽度半径的乘积的差。
步骤S35、以两个端点的两侧分别扩展的两个点为基准生成多个三角形,形成第一直线路段的导航路面,并对导航路面进行渲染,生成。
本实施例公开的导航路面生成方法,获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量,根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展对的两个点位于第一直线路段的法向量方向,以两个端点扩展的点为基准生成多个三角形,生成第一直线路段的导航路面,并对导航路面进行渲染。本方案通过在第一直线路段的两个端点两侧分别扩展两个点,并以现有的点为基准生成多个三角形,形成导航路面,以便于进行渲染,算法简单精确,路面均匀,效率高。
本实施例公开了一种导航路面生成方法,其流程图如图4所示,包括:
步骤S41、获取导航路线中的第一直线路段;
步骤S42、获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量;
步骤S43、根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展的两个点位于第一直线路段的法向量方向;
步骤S44、以两个端点的两侧分别扩展的两个点为基准生成多个三角形,形成第一直线路段的导航路面,并对导航路面进行渲染;
步骤S45、当第一直线路段的导航路面与第二直线路段的导航路面连接形成拐角时,确定第一直线路段与第二直线路段的法向量夹角;
如图5所示,为第一直线路段与第二直线路段的导航路面连接图,第一直线路段用AB表示,第二直线路段用CD表示,第一直线路段的两个端点分别为A和B,第二直线路段的两个端点分别为C和D,A点两侧扩展的两个点分别为A1和A2,B点两侧扩展的两个点分别为B1和B2,C点两侧扩展的两个点分别为C1和C2,D点两侧扩展的两个点分别为D1和D2。
第一直线路段形成的导航路面为A1B1B2A2,第二直线路段形成的导航路面为C1D1D2C2,第一直线路段的B点与第二直线路段的C点重合,使第一直线路段与第二直线路段连接,那么,第一直线路段与第二直线路段的法向量夹角为B1B2与C1C2之间的夹角。
步骤S46、当第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,确定第一直线路段与第二直线路段连接的端点处扩展的两个点形成的线段为第一扩展线段,第二直线路段与第一直线路段连接的端点处扩展的两个点形成的线段为第二扩展线段;
当第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,可以明显看到第一直线路段与第二直线路段相连接的位置处为直线,而非弧线,拐角处不圆滑。
步骤S47、在第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值;
设B1B2为第一扩展线段,C1C2为第二扩展线段。
在B1B2与C1C2之间差值,生成新的扩展线段,使得新生成的扩展线段与B1B2及C1C2之间,每两个相邻的扩展线段夹角不大于预设角度阈值。
具体的,可以为:确定差值角度,差值角度不大于预设角度阈值,将第一扩展线段以第一直线路段与第二直线路段连接的端点为基准进行旋转,生成新的扩展线段,至第一扩展线段与第二扩展线段重合时停止,旋转的旋转角度为差值角度。
以图5所示示意图为例,当B1B2与C1C2之间的角度大于预设角度阈值时,以第一直线路段与第二直线路段连接的端点为基准,即以B点或C点为基准,旋转B1B2,使旋转后的B1’B2’与B1B2之间的夹角为确定的差值角度;当B1’B2’与C1C2之间的角度仍大于预设角度阈值,则旋转B1’B2’,使旋转后的B1”B2”与B1’B2’之间的夹角为确定的差值角度,直至旋转之后的扩展线段与C1C2之间的夹角不大于预设角度阈值,或,直至旋转之后的扩展线段与C1C2重合。
步骤S48、将第一直线路段与第二直线路段连接的端点相同一侧的扩展线段的点连接,形成弧线段。
将所有扩展线段同一侧的点连接,形成弧线段,生成路面,之后进行B1C1B2C2之间的三角形进行渲染,使生成的拐角处的路面圆滑。
本实施例公开的导航路面生成方法,获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量,根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展对的两个点位于第一直线路段的法向量方向,以两个端点扩展的点为基准生成多个三角形,生成第一直线路段的导航路面,并对导航路面进行渲染。本方案通过在第一直线路段的两个端点两侧分别扩展两个点,并以现有的点为基准生成多个三角形,形成导航路面,以便于进行渲染,算法简单精确,路面均匀,效率高。
本实施例公开了一种导航路面生成系统,其结构示意图如图6所示,包括:
获取单元61,扩展单元62及生成单元63。
其中,获取单元61用于获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量。
导航路线可以为一段直线路段,也可以为多条直线路段组合而成的折线路段。当导航路线为多段直线路段组成的折线路段时,将该折线路段以每段直线路段为单位分别进行路面的生成。
方向向量用于表示第一直线路段的方向,即与第一直线路段平行的非零向量,法向量为与第一直线路段垂直的非零向量。
例如:若方向向量用(X,Y)表示,那么,法向量可以用(Y,X)表示。
具体的,获取单元61获取第一直线路段的方向向量,根据方向向量确定第一直线路段的单位方向向量,根据单位方向向量确定第一直线路段的单位法向量。
单位方向向量即方向向量的模长度变为1,当方向向量用(X,Y)表示,当X2+Y2=1时,(X,Y)为单位方向向量。
单位法向量与单位方向向量垂直,当(X,Y)为单位方向向量,(Y,X)为单位法向量。
扩展单元62用于根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展的两个点位于第一直线路段的法向量方向。
根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,即第一直线路段的两个端点中的每个端点,分别在法向量方向上向两侧扩展两个点。
具体的,如图2所示,第一直线路段可以用AB表示,第一直线路段AB的两个端点分别为A和B,方向向量用(X,Y)表示,法向量用(Y,X)表示。
第一直线路段的两个端点的两侧,即A和B这两个端点在法向量方向上的点,A两侧在法向量方向上的两个点可以为A1、A2,B两侧在法向量方向上的两个点可以为B1、B2,A1A2两点的连线经过A点,且与第一直线路段垂直,B1B2两点的连线经过B点,且与第一直线路段垂直。
其中,A1到A点的距离可以与A2到A点的距离相同,也可以不同,但是,A1到A点的距离需要与B1到B点的距离相同,其中,A1与B1均在第一直线路段的同一侧,A2到A点的距离需要与B2到B点的距离相同,A2与B2均在第一直线路段的同一侧。
具体的,向第一直线路段的两个端点的两侧分别扩展位于单位法向量方向的两个点,扩展的两个点距离与其对应端点的距离相同,即图2中,A1到A的距离与A2到A的距离相同,B1到B的距离与B2到B的距离相同,且A1到A的距离与B1到B的距离相同。
具体的,A1的坐标可以为:A点的坐标加上单位法向量与路面宽度半径的乘积的和;A2的坐标可以为A点的坐标减去单位法向量与路面宽度半径的乘积的差;B1的坐标可以为:B点的坐标加上单位法向量与路面宽度半径的乘积的和;B2的坐标可以为:B点的坐标减去单位法向量与路面宽度半径的乘积的差。
生成单元63用于以两个端点的两侧分别扩展的两个点为基准生成多个三角形,形成第一直线路段的导航路面,并对导航路面进行渲染,生成第一直线路段的导航路面。
如图2所示,以A1、A2、B1、B2为顶点生成多个三角形,形成第一直线路段的导航路面,对导航路面进行渲染。
进一步的,本实施例公开的导航路面生成系统,还可以包括:插值单元64,其中:
插值单元64用于当第一直线路段的导航路面与第二直线路段的导航路面连接形成拐角时,确定第一直线路段与第二直线路段的法向量夹角,当第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,确定第一直线路段与第二直线路段连接的端点处扩展的两个点形成的线段为第一扩展线段,第二直线路段与第一直线路段连接的端点处扩展的两个点形成的线段为第二扩展线段,在第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值,将第一直线路段与第二直线路段连接的端点相同一侧的扩展线段的点连接,形成弧线段。
如图5所示,为第一直线路段与第二直线路段的导航路面连接图,第一直线路段用AB表示,第二直线路段用CD表示,第一直线路段的两个端点分别为A和B,第二直线路段的两个端点分别为C和D,A点两侧扩展的两个点分别为A1和A2,B点两侧扩展的两个点分别为B1和B2,C点两侧扩展的两个点分别为C1和C2,D点两侧扩展的两个点分别为D1和D2。
第一直线路段形成的导航路面为A1B1B2A2,第二直线路段形成的导航路面为C1D1D2C2,第一直线路段的B点与第二直线路段的C点重合,使第一直线路段与第二直线路段连接,那么,第一直线路段与第二直线路段的法向量夹角为B1B2与C1C2之间的夹角。
当第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,可以明显看到第一直线路段与第二直线路段相连接的位置处为直线,而非弧线,拐角处不圆滑。
设B1B2为第一扩展线段,C1C2为第二扩展线段。
在B1B2与C1C2之间差值,生成新的扩展线段,使得新生成的扩展线段与B1B2及C1C2之间,每两个相邻的扩展线段夹角不大于预设角度阈值。
具体的,可以为:确定差值角度,差值角度不大于预设角度阈值,将第一扩展线段以第一直线路段与第二直线路段连接的端点为基准进行旋转,生成新的扩展线段,至第一扩展线段与第二扩展线段重合时停止,旋转的旋转角度为差值角度。
以图5所示示意图为例,当B1B2与C1C2之间的角度大于预设角度阈值时,以第一直线路段与第二直线路段连接的端点为基准,即以B点或C点为基准,旋转B1B2,使旋转后的B1’B2’与B1B2之间的夹角为确定的差值角度;当B1’B2’与C1C2之间的角度仍大于预设角度阈值,则旋转B1’B2’,使旋转后的B1”B2”与B1’B2’之间的夹角为确定的差值角度,直至旋转之后的扩展线段与C1C2之间的夹角不大于预设角度阈值,或,直至旋转之后的扩展线段与C1C2重合。
将所有扩展线段同一侧的点连接,形成弧线段,生成路面,之后进行B1C1B2C2之间的三角形进行渲染,使生成的拐角处的路面圆滑。
本实施例公开的导航路面生成系统,获取导航路线中的第一直线路段,获取第一直线路段的方向向量,并根据方向向量获取第一直线路段的法向量,根据法向量向第一直线路段的两个端点的两侧分别扩展两个点,在两个端点的两侧分别扩展对的两个点位于第一直线路段的法向量方向,以两个端点扩展的点为基准生成多个三角形,生成第一直线路段的导航路面,并对导航路面进行渲染。本方案通过在第一直线路段的两个端点两侧分别扩展两个点,并以现有的点为基准生成多个三角形,形成导航路面,以便于进行渲染,算法简单精确,路面均匀,效率高。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种导航路面生成方法,其特征在于,包括:
获取导航路线中的第一直线路段;
获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量;
根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向;
以所述两个端点的两侧分别扩展的两个点为基准生成多个三角形,形成所述第一直线路段的导航路面,并对所述导航路面进行渲染;
当所述第一直线路段的导航路面与第二直线路段的导航路面连接形成拐角时,确定所述第一直线路段与第二直线路段的法向量夹角;
当所述第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,确定所述第一直线路段与第二直线路段连接的端点处所述第一直线路段的法向量方向上扩展的两个点形成的线段为第一扩展线段,所述第二直线路段与第一直线路段连接的端点处所述第二直线路段的法向量方向上扩展的两个点形成的线段为第二扩展线段;
在所述第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值,具体的,确定差值角度,所述差值角度不大于所述预设角度阈值;将所述第一扩展线段以所述第一直线路段与第二直线路段连接的端点为基准进行旋转,生成新的扩展线段,至所述第一扩展线段与所述第二扩展线段重合时停止,所述旋转的旋转角度为所述差值角度;
将所述第一直线路段与第二直线路段连接的端点相同一侧的扩展线段的点连接,形成弧线段。
2.根据权利要求1所述的方法,其特征在于,所述获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量,包括:
获取所述第一直线路段的方向向量,根据所述方向向量确定所述第一直线路段的单位方向向量;
根据所述单位方向向量确定所述第一直线路段的单位法向量。
3.根据权利要求2所述的方法,其特征在于,所述根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向,包括:
向所述第一直线路段的两个端点的两侧分别扩展位于所述法向量方向的两个点,所述扩展的两个点距离与其对应端点的距离相同。
4.一种导航路面生成系统,其特征在于,包括:获取单元,扩展单元,生成单元,其中:
所述获取单元用于获取导航路线中的第一直线路段,获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量;
所述扩展单元用于根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向;
所述生成单元用于以所述两个端点的两侧分别扩展的两个点为基准生成多个三角形,并对生成的所述多个三角形进行渲染,生成所述第一直线路段的导航路面;
还包括:插值单元,
所述插值单元用于当所述第一直线路段的导航路面与第二直线路段的导航路面连接形成拐角时,确定所述第一直线路段与第二直线路段的法向量夹角;当所述第一直线路段与第二直线路段的法向量夹角大于预设角度阈值时,确定所述第一直线路段与第二直线路段连接的端点处所述第一直线路段的法向量方向上扩展的两个点形成的线段为第一扩展线段,所述第二直线路段与第一直线路段连接的端点处所述第二直线路段的法向量方向上扩展的两个点形成的线段为第二扩展线段;
在所述第一扩展线段与第二扩展线段之间进行插值生成新的扩展线段,使相邻两个扩展线段之间的夹角不大于预设角度阈值,具体的,确定差值角度,所述差值角度不大于所述预设角度阈值;将所述第一扩展线段以所述第一直线路段与第二直线路段连接的端点为基准进行旋转,生成新的扩展线段,至所述第一扩展线段与所述第二扩展线段重合时停止,所述旋转的旋转角度为所述差值角度;将所述第一直线路段与第二直线路段连接的端点相同一侧的扩展线段的点连接,形成弧线段。
5.根据权利要求4所述的系统,其特征在于,所述获取单元获取所述第一直线路段的方向向量,并根据所述方向向量获取所述第一直线路段的法向量,包括:
所述获取单元获取所述第一直线路段的方向向量,根据所述方向向量确定所述第一直线路段的单位方向向量,根据所述单位方向向量确定所述第一直线路段的单位法向量。
6.根据权利要求5所述的系统,其特征在于,所述扩展单元根据所述法向量向所述第一直线路段的两个端点的两侧分别扩展两个点,在所述两个端点的两侧分别扩展的所述两个点位于所述第一直线路段的法向量方向,包括:
所述扩展单元向所述第一直线路段的两个端点的两侧分别扩展位于所述法向量方向的两个点,所述扩展的两个点距离与其对应端点的距离相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710703845.0A CN107481300B (zh) | 2017-08-16 | 2017-08-16 | 一种导航路面生成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710703845.0A CN107481300B (zh) | 2017-08-16 | 2017-08-16 | 一种导航路面生成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107481300A CN107481300A (zh) | 2017-12-15 |
CN107481300B true CN107481300B (zh) | 2021-03-30 |
Family
ID=60598922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710703845.0A Active CN107481300B (zh) | 2017-08-16 | 2017-08-16 | 一种导航路面生成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107481300B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108230424B (zh) * | 2018-02-09 | 2021-11-02 | 城市生活(北京)资讯有限公司 | 一种线条显示方法及线条显示系统 |
CN108981734B (zh) * | 2018-05-17 | 2021-02-19 | 北京三快在线科技有限公司 | 电子地图道路拓展方法、装置、电子设备及存储介质 |
CN113539050B (zh) * | 2020-04-20 | 2022-09-23 | 华为技术有限公司 | 数据处理方法、装置及设备 |
CN111652957B (zh) * | 2020-06-03 | 2023-04-11 | 中铁二院工程集团有限责任公司 | 一种线性工程设计图生成方法 |
CN112414428B (zh) * | 2020-10-29 | 2023-06-27 | 汉海信息技术(上海)有限公司 | 导航信息的显示方法、装置、电子设备及存储介质 |
CN115359146B (zh) * | 2022-07-22 | 2023-07-11 | 北京城市网邻信息技术有限公司 | 线条绘制方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574931A (zh) * | 2014-11-07 | 2016-05-11 | 高德信息技术有限公司 | 一种电子地图道路绘制方法及装置 |
CN105913483A (zh) * | 2016-03-31 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | 一种三维交叉道路模型生成的方法及装置 |
-
2017
- 2017-08-16 CN CN201710703845.0A patent/CN107481300B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105574931A (zh) * | 2014-11-07 | 2016-05-11 | 高德信息技术有限公司 | 一种电子地图道路绘制方法及装置 |
CN105913483A (zh) * | 2016-03-31 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | 一种三维交叉道路模型生成的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107481300A (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107481300B (zh) | 一种导航路面生成方法及系统 | |
JP3252623B2 (ja) | 形状モデル生成装置 | |
TWI443603B (zh) | 二維向量圖形三角化系統及其方法 | |
EP1420368A2 (en) | Apparatus and method for rendering a curved surface using NURBS | |
CN109945888B (zh) | 导航引导线的生成方法、装置及计算机设备 | |
JP3365297B2 (ja) | 立体地形表示装置 | |
EP0663651B1 (en) | Graphics plotting apparatus and method | |
JP6823037B2 (ja) | 数値制御装置、加工経路設定方法及びプログラム | |
CN109724617B (zh) | 一种导航路线的绘制方法以及相关设备 | |
JP4951535B2 (ja) | 地図画像処理装置 | |
JP5566158B2 (ja) | 画像処理方法、画像処理装置、及びプログラム | |
CN112414428B (zh) | 导航信息的显示方法、装置、电子设备及存储介质 | |
CN113626903B (zh) | 一种道路曲线设置方法、装置、电子设备及存储介质 | |
US5568601A (en) | Sampling point generating apparatus | |
CN114979592A (zh) | 图像曲面几何校正方法、装置、电子设备及存储介质 | |
JP3197324B2 (ja) | 3次元曲面形状生成装置 | |
JPH06149993A (ja) | 画像変換処理方法及び画像変換処理装置 | |
JP3464874B2 (ja) | ベジェ曲線による点列トレースの方法および装置 | |
JP2012198310A (ja) | 地図要素配置装置および地図要素配置方法 | |
US20130021332A1 (en) | Image processing method, image processing device and display device | |
CN113345050B (zh) | 一种修改二维几何边框方法及相关装置 | |
JP2011210159A (ja) | 画像処理方法、画像処理装置、プログラム、及びプログラム記憶媒体 | |
JP3161372B2 (ja) | 多角形描画方法及び装置 | |
KR100742155B1 (ko) | 스캔라인 형성 방법 및 장치 | |
KR100917887B1 (ko) | 라인 가속 기능을 지원하는 그래픽 처리 방법 및 장치 |
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 |