《OpenDRIVE1.6规格文档》3
目录
- 8.6 道路的应用案例
- 8.6.1 用线性路拱对道路形状进行建模
- 9 车道
- 9.1 在车道段中进行车道分组
- 9.2 车道段
- 9.3 车道偏移
- 9.4 车道连接
- 9.5 车道属性
- 9.5.1 车道宽度
- 9.5.2 车道边界
- 9.5.3 车道类型
- 9.5.4 车道材质
- 9.5.5 车道限速
- 9.5.6 车道的使用
8.6 道路的应用案例
以下小节包含部分在OpenDrive中对道路进行建模的示范应用案例。
8.6.1 用线性路拱对道路形状进行建模
许多道路都有一个路拱,例如用于提供一个排水坡度从而让水能从路面上流入水沟中。图50展示了一个拥有路拱的两车道路的样本定义。
图50 使用道路形状建模的路拱例子
线性路拱拥有以下属性:
- 道路的宽度从 t = − 4 t=-4 t=−4开始。由于值为0,因此在高度到 t = − 3 t=-3 t=−3的范围内不会有任何改变。
- 从 t = − 3 t = -3 t=−3到 t = 0 t = 0 t=0,每米线性上升0.15米。这意味着,在 t = 0 t = 0 t=0(道路的中间)处,道路已达到0.45m的高度。
- 从 t = 0.45 m t = 0.45m t=0.45m开始,道路每米线性下降0.1米。这意味着,当达到 t = 4 t = 4 t=4时,道路的高度为0.05m( 0.45 m − 0.40 m 0.45m-0.40m 0.45m−0.40m为0.05m;在4m距离后,道路每米损失0.1m;当从0.45m开始时,终点则为0.05m)。
XML结构用于描述路拱,<lateralProfile>
中的<shape>
元素可被使用。使用OpenDRIVE结构对道路形状进行建模,形状元素必须在处于正 t t t方向的道路的右侧开始。这意味着元素将会以负 t t t值的形式开始。
XML示例,
<lateralProfile><shape s="0.0000000000000000e+00"t="-4.0000000000000000e+00"a="0.0000000000000000e+00"b="0.0000000000000000e+00"c="0.0000000000000000e+00"d="0.0000000000000000e+00"/><shape s="0.0000000000000000e+00"t="-3.0000000000000000e+00"a="0.0000000000000000e+00"b="1.4999999999999999e-01"c="0.0000000000000000e+00"d="0.0000000000000000e+00"/><shape s="0.0000000000000000e+00"t="0.0000000000000000e+00"a="4.5000000000000001e-01"b="-1.0000000000000001e-01"c="0.0000000000000000e+00"d="0.0000000000000000e+00"/><shape s="0.0000000000000000e+00"t="4.0000000000000000e+00"a="5.0000000000000003e-02"b="0.0000000000000000e+00"c="0.0000000000000000e+00"d="0.0000000000000000e+00"/>
</lateralProfile>
9 车道
在OpenDRIVE中,所有道路都包含了车道。每条道路必须拥有至少一条宽度大于0的车道,并且每条道路的车道数量不受限制。需要使用中心车道对OpenDRIVE中的车道进行定义和描述。中心车道没有宽度,并被用作车道编号的参考,自身的车道编号为0。对其它车道的编号以中心车道为出发点:车道编号向右呈降序,也就是朝负 t t t方向;向左呈升序,也就是朝正 t t t方向。图51展示了一条道路的中心车道,该车道拥有多条交通车道以及不同的行驶方向。在这个示例中,根据靠左行车以及靠右行车的交通模式,中心车道将道路类型中定义的行驶方向分隔开来。由于并未使用车道偏移,因此中心车道等同于道路参考线。
图51 拥有不同行驶方向车道的道路及其中心车道
图52展示了拥有相同行驶方向车道的道路(即单行道)的中心车道。
图52 拥有相同行驶方向车道的道路及其中心车道
在OpenDRIVE中,车道用<road>
元素里的<lanes>
元素来表示。
图53 车道的UML模型
以下规则适用于车道的使用:
- 每条道路必须拥有一条中心车道及一条宽度大于0的车道。
- 道路可根据需要而设定任意数量的车道。
- 中心车道不能拥有宽度,这就意味着不能将
<width>
元素用于中心车道。 - 中心车道编号必须为0。
- 车道编号必须在中心车道之后从1开始,朝负 t t t方向为降序,朝正 t t t方向为升序。
- 车道编号必须保持连续性且无任何间断。
- 每个车道段都必须有唯一的车道编号。
- 可通过使用
<lane>
元素的@type属性对双向车道进行详细说明。
XML示例,
<lanes><laneSection s="0.0"><left><lane id="2" type="border" level="false"><link></link><width sOffset="0.0" a="1.0" b="0.0" c="0.0" d="0.0"/></lane><lane id="1" type="driving" level="false"><link></link><width sOffset="0.0" a="4.0" b="0.0" c="0.0" d="0.0"/></lane></left><center><lane id="0" type="none" level="false"><link></link></lane></center><right><lane id="-1" type="driving" level="false"><link></link><width sOffset="0.0" a="4.0" b="0.0" c="0.0" d="0.0"/></lane><lane id="-2" type="border" level="false"><link></link><width sOffset="0.0" a="1.0" b="0.0" c="0.0" d="0.0"/></lane></right></laneSection>
</lanes>
相关内容:在车道段中进行车道分组。
9.1 在车道段中进行车道分组
为了能够便利地在OpenDRIVE道路描述中进行查找,一个车道段内的车道可分为左、中和右车道,车道在该组中用<lane>
元素来描述。由于车道编号朝负 t t t方向呈降序且朝正 t t t方向呈升序,应用可从ID属性中给出的车道编号中得知车道的方向(除非@type是双向的)。
图54 车道按左、中、右分组
在OpenDRIVE中,车道组用<laneSection>
元素内的<center>
、<right>
和<left>
元素来表示。ID属性用嵌套在<center>
、<right>
和<left>
元素里的<lane>
元素来定义。
图55. t_road_lanes的UML模型
以下规则适用于车道分组:
- 带有正ID的车道在中心车道的左侧,而带有负ID的车道则在中心车道的右侧。
- 每个车道段必须包含至少一个
<right>
或<left>
元素。 - 必须给每个 s s s坐标定义一个
<center>
元素。 - 每个车道段都可包含一个
<center>
元素。 - 为了能够更好地确认方向,车道应按照降序ID按从左到右的顺序排列。
相关内容:车道段、车道。
9.2 车道段
车道可被分成多个段。每个车道段包含车道的一个固定编号。如图56所示,每次车道编号的变更都随之产生一个新车道段的需求。车道段的定义将沿道路参考线按升序来进行。图56中,路段被分割成不同的车道段。若车道编号改变,则需要定义一个新的车道段。
图56 拥有车道段的路段
为了能更轻易地在复杂道路上对车道段进行使用,可仅使用@singleSide属性对道路的一侧进行定义。图57展示了这一原理。
图57 分别为道路的两侧所定义的车道段
在OpenDRIVE中 ,车道段用<lanes>
元素里的<laneSection>
元素来表示。
t_road_lanes_laneSection
车道可被分成多个段,每个车道段都包含一个车道的固定编号。每一次的车道编号变更都将需要定义一个新的车道段。
表19 laneSection元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
s | t_grEqZero | m | [0;∞[ | 起始位置的s坐标 |
singleSide | t_bool | - | true; false | 车道段元素仅对一侧有效(左、中或右),这将取决于子元素。 |
t_road_lanes_laneSection_center
为了能够便利地在OpenDRIVE的道路描述中进行查找,一个车道段内的车道可分为左、中和右车道。每个车道段均必须包含一个<center>
元素和至少一个<right>
或<left>
元素。
t_road_lanes_laneSection_center_lane
车道元素被包括在左/中/右元素中。车道元素必须使用降序ID从左到右展示车道。
表20 laneSection中心车道元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
id | integer | - | [-∞;∞[ | 车道的ID |
t_road_lanes_laneSection_left
为了能够便利地在OpenDRIVE的道路描述中进行查找,一个车道段内的车道可分为左、中和右车道。每个车道段均必须包含一个<center>
元素和至少一个<right>
或<left>
元素。
t_road_lanes_laneSection_left_lane
车道元素被包括在左/中/右元素中。车道元素必须使用降序ID从左到右展示车道。
表21 laneSection左车道元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
id | integer | - | [-∞;∞[ | 车道的ID |
t_road_lanes_laneSection_right
为了能够便利地在OpenDRIVE的道路描述中进行查找,一个车道段内的车道可分为左、中和右车道。每个车道段均必须包含一个<center>
元素和至少一个<right>
或<left>
元素。
t_road_lanes_laneSection_right_lane
车道元素被包括在左/中/右元素中。车道元素必须使用降序ID从左到右展示车道。
表22 laneSection右车道元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
id | integer | - | [-∞;∞[ | 车道的ID |
以下规则适用于车道段:
- 每条道路都必须拥有至少一个车道段。
- 车道段必须按升序来定义。
- 每个 s s s位置上都必须只有一条中心车道。
- 应该避免在长距离上使用宽度为0的车道。
- 每次车道编号改变都必须有新的车道段被定义。
- 车道段将持续有效,直到一个新的车道段被定义。
- 可根据需要多次更改一个车道段内的车道属性。
- 可仅使用@singleSide属性为道路的一侧对车道段进行定义。
相关内容:车道、车道段内的车道分组、道路参考线。
9.3 车道偏移
车道偏移可用于将中心车道从道路参考线上位移,以便能够更轻松地在道路上对车道的局部横向位移进行建模(比如对左转车道进行建模)。根据用于车道偏移的插值,车道偏移和形状定义两者的组合可导致不一致性。若线性插值被用于定义沿参考线的道路形状,那么它也应被用于偏移定义,以便两者的定义能被一致地组合使用。图58展示了中心车道偏离道路参考线而产生的偏移。
图58 车道偏移
在OpenDRIVE中,车道偏移用<lanes>
元素内的<laneOffset>
元素来表示。
t_road_lanes_laneOffset
车道偏移可用于将中心车道从道路参考线上位移。
表23 laneOffset元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
s | t_grEqZero | m | [0;∞[ | s s s坐标的起始位置 |
a | double | m | ]-∞;∞[ | 多项式参数a, 在@s(ds=0)处偏移 |
b | double | 1 | ]-∞;∞[ | 多项式参数b |
c | double | 1/m | ]-∞;∞[ | 多项式参数 c |
d | double | 1/m^2 | ]-∞;∞[ | 多项式参数 d |
计算方式。利用以下三阶多项式函数来计算给定点的偏移:
o f f s e t ( d s ) = a + b ⋅ d s + c ⋅ d s 2 + d ⋅ d s 3 offset(ds) = a + b \cdot ds + c \cdot ds^2 + d \cdot ds^3 offset(ds)=a+b⋅ds+c⋅ds2+d⋅ds3
其中,offset是在给定点处的横向偏移,a,b,c,d是系数,ds是新的道路偏移元素起始处和给定位置之间沿道路参考线产生的距离。每当新的元素出现,ds则清零。偏移值的绝对位置计算方式如下:
s = s s t a r t + d s s = s_{start} + ds s=sstart+ds
其中s是参考线坐标系统中的绝对位置, s s t a r t s_{start} sstart是参考线坐标系统中元素的起始位置。每一次的多项式函数变更都需要一个新的车道偏移元素。XML示例,
<lanes><laneOffset s="25.0" a="0.0" b="0.0" c="3.9e-03" d="-5.2e-05"/><laneOffset s="75.0" a="3.25" b="0.0" c="0.0" d="0.0"/>…
<\lanes>
该示例在Ex_Simple-LaneOffset.xodr中可见。以下规则适用于车道偏移:
- 车道偏移不能与道路形状一同使用。
- 当底层的多项式函数有变化时,必须启动一个新的车道偏移。
- 若边界定义已存在,则不允许出现偏移。
相关内容:车道边界、形状定义、车道。
9.4 车道连接
车道的连接信息被存储在OpenDRIVE中以便进行车道查找,并将借助于每条车道的前驱以及后继信息来对连接进行描述。车道和交叉口均可作为车道的前驱和后继部分。车道可连接至相同或不同道路上的其它车道上。
图59 用于id为10的道路的车道连接
在OpenDRIVE中,车道连接用<lane>
元素里的<link>
元素来表示。<predecessor>
和<successor>
元素在<link>
元素内得到定义。
图60 UML模型t_road_lanes_laneSection_lcr_lane_link
属性
t_road_lanes_laneSection_lcr_lane_link
前面的和后置车道信息为有着相同参考线的车道之间的连接提供了车道在前面的以及后置车道段中的ID。只有在车道在一个路口结束或不具有物理连接时,这一元素才可被删除。
t_road_lanes_laneSection_lcr_lane_link_predecessorSuccessor
表24 前驱与后继元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
id | integer | - | [-∞;∞[ | 前驱/后继连接的车道ID |
以下规则适用于车道连接:
- 一条车道可拥有另外一条车道作为其前驱或后继。
- 只有当两条车道的连接明确时,它们才能被连接。若与前驱或后继部分的关系比较模糊,则必须使用交叉口。
- 若车道结束于一个路口内或没有任何连接,则必须删除
<link>
元素。
相关内容:道路连接、交叉口、车道。
9.5 车道属性
车道属性描述了车道的用途以及形状。每个车道段都定义了一条车道属性,该属性也可能在该车道段中有变化。如果没有特意为车道段定义一条属性,应用便可采用默认属性。
图61 UML模型车道属性
车道属性的示例是车道宽度、车道边界和限速。以下规则适用于车道属性:
- 车道属性的定义必须相对于相应车道段的起点来展开。
- 直到另外一个同类型的车道属性得到定义或车道段结束,特定的车道属性都必须保持有效。
- 相同类型的车道属性必须按升序定义。
9.5.1 车道宽度
车道的宽度是沿 t t t坐标而定义的。车道的宽度有可能在车道段内产生变化。车道宽度与车道边界元素在相同的车道组内互相排斥。若宽度以及车道边界元素在OpenDRIVE文件中同时供车道段使用,那么应用必须使用<width>
元素提供的信息。在OpenDRIVE中,车道宽度由<lane>
元素中的<width>
元素来描述。
属性
t_road_lanes_laneSection_lr_lane_width
车道的宽度必须在每个车道段里至少被定义一次。中心车道不能有宽度,也就意味着不能对中心车道使用<width>
元素。车道的宽度都必须保持有效,直到一个新的宽度元素被定义或车道段结束。
表25 车道宽度元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
s | t_grEqZero | m | [0;∞[ |
<width> 要相对于前驱<laneSection> 元素的位置的起始位置的s坐标
|
a | double | m | ]-∞;∞[ | 多项式参数a,在@s(ds=0)处偏移 |
b | double | 1 | ]-∞;∞[ | 多项式参数b |
c | double | 1/m | ]-∞;∞[ | 多项式参数c |
d | double | 1/m² | ]-∞;∞[ | 多项式参数d |
计算方式,利用以下三阶多项式函数来计算给定点的宽度:
W i d t h ( d s ) = a + b ⋅ d s + c ⋅ d s 2 + d ⋅ d s 3 Width(ds) = a + b \cdot ds + c \cdot ds^2 + d \cdot ds^3 Width(ds)=a+b⋅ds+c⋅ds2+d⋅ds3
其中,width是给定点处的宽度,a,b,c,d是系数,ds是新的道路宽度元素起始处和给定位置之间沿道路参考线产生的距离。每当新的元素出现,ds则清零。宽度值的绝对位置计算方式如下:
s = s s e c t i o n + o f f s e t s t a r t + d s s = s_{section} + offset_{start} + ds s=ssection+offsetstart+ds
其中,s是参考线坐标系统里的绝对位置, s s e c t i o n s_{section} ssection是轨迹坐标系里前面的车道段元素的起始位置, o f f s e t s t a r t offset_{start} offsetstart是相对于前面的车道段的元素的偏移。
图62:每个车道段的车道宽度改变也代表了起始于不同偏移位置正s方向的车道宽度中的改变。
图62 每个车道段的车道宽度改变
XML示例,参见样本文件Ex_Lane-Width.xodr。
规则,以下规则适用于车道宽度:
- 车道的宽度必须在每个车道段中至少被定义一次。
- 必须为整个车道段的长度定义车道宽度。这意味着s=0必须要有一个
<width>
元素。 - 中心车道不能拥有宽度,也就是说不能对中心车道使用
<width>
元素。 - 直到新的宽度元素被定义或者车道段结束,车道的宽度都保持有效。
- 当多项式函数的变量发生改变时,新的宽度元素必须得到定义。
- 每个车道段的多个宽度元素都必须按升序得到定义。
- 不能在相同车道组里同时使用宽度元素以及边界元素。
相关内容:车道段、车道段内的车道分组、超高程、形状定义。
9.5.2 车道边界
车道边界是用来描述车道宽度的另一种方法,它并不会直接定义宽度,而是在独立于其内部边界参数的情况下,对车道的外部界限进行定义。根据上述情况,内车道也被定义为车道,该车道虽然与当前被定义的车道有着相同ID符号,但内车道的ID绝对值要更小。相比较对宽度进行详细说明而言,此类定义要更加地便利。尤其是在道路数据是源自于自动测量结果的情况下,该方式可以避免多个车道段被创建。车道宽度与车道边界元素在相同的车道组内互相排斥。若宽度以及车道边界元素在OpenDRIVE文件中同时供车道段使用,那么应用必须使用<width>
元素提供的信息。在OpenDRIVE中,车道边界用<lane>
元素中的<border>
元素来表示。
属性,
t_road_lanes_laneSection_lr_lane_border
表26 车道边界元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
soffset | t_grEqZero | m | [0;∞[ |
<width> 元素起始位置的s坐标,相对于前面的<laneSection> 元素的位置
|
a | double | m | ]-∞;∞[ | 多项式参数a,在@s(ds=0)处偏移 |
b | double | 1 | ]-∞;∞[ | 多项式参数b |
c | double | 1/m | ]-∞;∞[ | 多项式参数c |
d | double | 1/m² | ]-∞;∞[ | 多项式参数d |
计算方式,利用以下三阶多项式函数来计算给定点的边界位置:
t b o r d e r ( d s ) = a + b ⋅ d s + c ⋅ d s 2 + d ⋅ d s 3 t_{border}(ds) = a + b \cdot ds + c \cdot ds^2 + d \cdot ds^3 tborder(ds)=a+b⋅ds+c⋅ds2+d⋅ds3
其中, t b o r d e r t_{border} tborder是给定ds位置的边界的t位置, a , b , c , d a,b,c,d a,b,c,d是系数, d s ds ds是元素起始处和给定位置之间沿道路参考线产生的距离。每当新的元素出现,ds则清零。边界偏移值的绝对位置计算方式如下:
s = s s e c t i o n + o f f s e t s t a r t + d s s = s_{section} + offset_{start} + ds s=ssection+offsetstart+ds
其中,s是参考线坐标系统中的绝对位置, s s e c t i o n s_{section} ssection是轨迹坐标系中前驱车道段元素, o f f s e t s t a r t offset_{start} offsetstart是相对于前驱车道段元素的元素的偏移。图63展示了在给定范围内具有变化边界形状的车道的这一惯例:
图63 带变化边界形状的车道
XML示例,参见样本文件Ex_Lane-Border.xodr。以下规则适用于车道边界:
- 不能在相同车道组内一同使用宽度元素以及边界元素。
- 边界元素不能和车道偏移同时存在。
- 当多项式函数的变量发生改变时,必须要定义一个新的边界元素。
相关内容:车道段、车道段内车道分组。
9.5.3 车道类型
每条车道都会被定义一个类型。车道类型定义了车道的主要用途及与其相对应的交通规则。可用的车道类型有:
- 路肩:描述了道路边缘的软边界。
- 边界:描述了道路边缘的硬边界。其与正常可供行驶的车道拥有同样高度。
- 驾驶:描述了一条“正常”可供行驶、不属于其它类型的道路。
- 停:高速公路的硬路肩,用于紧急停车。
- 无:描述了道路最远边缘处的空间,并无实际内容。其唯一用途是在(人类)驾驶员离开道路的情况下,让应用记录OpenDRIVE仍在运行。
- 限制:描述了不应有车辆在上面行驶的车道。该车道与行车道拥有相同高度。通常会使用实线以及虚线来隔开这类车道。
- 泊车:描述了带停车位的车道。
- 分隔带:描述了位于不同方向车道间的车道。在城市中通常用来分隔大型道路上不同方向的交通。
- 自行车道:描述了专为骑自行车者保留的车道。
- 人行道:描述了允许行人在上面行走的道路。
- 路缘:描述了路缘石。路缘石与相邻的行车道在高度有所不同。
- 出口:描述了用于平行于主路路段的车道。主要用于减速。
- 入口:描述了用于平行于主路路段的车道。主要用于加速。
- 加速车道:由乡村或城市道路引向高速公路的匝道。
- 减速车道:驶出高速公路,驶向乡村或城市道路所需的匝道。
- 连接匝道:连接两条高速公路的匝道。例如高速公路路口。
关于车道类型的使用,请见图64到图68。
图64 高速公路的车道类型
图65 乡村公路的车道类型
图66 城市道路的车道类型
图67 高速公路入口和出口的车道类型
图68 两条互相连接的高速公路的车道类型
在OpenDRIVE中,车道类型用<lane>
元素内属性@type元素来表示。属性,
t_road_lanes_laneSection_lr_lane
车道元素被包括在左/中/右元素中。车道元素应按降序ID从左到右展示车道。
表27 车道类型的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
type | e_laneType | - | - | 车道类型。关于值请见UML模型。 |
level | t_bool | - | - | "真"将车道保持在水平,也就是说不要采用超高程;"假"对此车道采用超高程(为默认设置,若属性水平缺失时也可用) |
以下规则适用于车道类型:可通过使用新的车道段根据需要多次地更改车道类型。相关内容:车道。
9.5.4 车道材质
除OpenCRG之外,OpenDRIVE提供了一个用于存储车道材质信息(即表面、摩擦属性及粗糙程度)的元素。若未对材质进行定义,那么应用可采用默认值。在OpenDRIVE中,车道材质用<lane>
元素内的<material>
元素来表示。属性,
t_road_lanes_laneSection_lr_lane_material
该属性存储了关于车道材质的信息。直到新的元素得到定义,每个元素都将保持有效。若有多个元素得到定义,它们必须按升序被排列。
表28 车道材质元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
soffset | t_grEqZero | m | [0;∞[ |
起始位置的s坐标,相对于前面的<laneSection> 元素的位置
|
surface | string | - | - | 根据应用而定的表面材质代码 |
friction | t_grEqZero | - | [0;∞[ | 摩擦力系数 |
roughness | t_grEqZero | - | [0;∞[ | 粗糙程度,例如形容声音以及运动系统 |
规则,以下规则适用于车道材质:
- 中心车道不能拥有材质元素。
- 直到另一材质元素得到启动或车道段结束,车道的材质元素都必须保持有效。
- 若每个车道段都各自拥有多个材质元素,那么这些元素必须相对于s位置按升序得到定义。
相关内容:车道、车道段、在车道段内车道分组。
9.5.5 车道限速
可对车道上允许的最大行驶速度进行定义,该车道限速随即将覆盖道路限速。
图69 特定于车道的限速
在OpenDRIVE中,车道速度用<lane>
元素内的<speed>
元素来表示。属性,
t_road_lanes_laneSection_lr_lane_speed
该属性定义了给定车道上允许的最大行驶速度。直到新的元素得到定义,每个元素都在s坐标的增长方向中继续有效。
表29 速度元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
soffset | t_grEqZero | m | [0;∞[ |
起始位置的s坐标,相对于前面的<laneSection> 元素的位置
|
max | t_grEqZero | m/s | [0;∞[ | 最大允许速度 |
unit | e_unitSpeed | - | - | max属性的单位。关于值请参见UML模型。 |
XML示例:
<lane id="-1" type="driving" level="false"><link><successor id="-3"/></link><width sOffset="0.0" a="2.0" b="0.0" c="0.0" d="0.0"/><speed sOffset="0.0" max="80.0" unit="km/h"/><height sOffset="0.0" inner="0.12" outer="0.12"/>
</lane>
规则,以下规则适用于车道限速:
- 中心车道不能拥有任何限速。
- 除非有另一个限速得到定义或车道段结束,车道的限速都必须保持有效。
- 若每个车道段都拥有多个车道限速元素,那么这些元素必须按升序得到定义。
- 源自于标志的限速必须始终被优先考虑。
相关内容:车道、标志、道路类型的限速。
9.5.6 车道的使用
车道可局限于特定的道路使用者,例如卡车或公共汽车。这类限制可在道路标识描述的限制之上另外在OpenDRIVE中得到定义。
图70 车道使用,公共车道
OpenDRIVE在<lane>
元素内提供了<access>
元素,以便描述车道使用规则。属性,
t_road_lanes_laneSection_lr_lane_access
该属性定义了针对特定道路使用者类型的车道使用限制。每个元素在s坐标的增长方向中都是有效的,直到新的元素得到定义。若多个元素得到定义,那它们必须按升序得到排列。
表30 使用元素的属性
名称 | 类型 | 单位 | 值 | 描述 |
---|---|---|---|---|
soffset | t_grEqZero | m | [0;∞[ |
起始位置的s坐标,相对于前驱<laneSection> 元素的位置
|
rule | e_road_lanes_laneSection_lr_lane_access_rule | - | - | 详细说明了在@restriction属性中指定的参与者是否可以使用已知车道 |
restriction | e_accessRestrictionType | - | - | 限制所针对参与者的标识符。关于值,请参见UML模型 |
XML示例,
<lane id="2" type="driving" level="false"><link><successor id="2"/></link><width sOffset="0.0" a="2.0" b="0.0" c="0.0" d="0.0"/><access sOffset="0.0" rule="allow" restriction="bus"/>
</lane>
规则,以下规则适用于车道使用规则:
- 中心车道不能拥有使用规则。
- 直到另一条使用规则得到定义或车道段结束,使用规则都必须保持有效。
- 若每个车道段都拥有多个使用规则元素,那么这些元素必须按升序得到定义。
- 车道使用元素可在相同偏移位置开始。
- 若一个车道元素内无
<access>
元素存在,则也没有使用限制。 - 若
<rule>
元素里出现否定值,那么所有其它车辆仍被允许使用车道。 - 若
<rule>
元素里出现允许值,那么所有其它车辆则被禁止使用车道。 - 只能为给定s位置赋予否定值或允许值的其中一个,二者不能同时出现。
- 即便只有一个子集被改变,都必须为所有限制重新定义一个新的s位置。
- 否定=无这个限制被用于恢复所有先前限制。
相关内容:车道、车道段。
《OpenDRIVE1.6规格文档》3相关推荐
- 《盘点那些秀你一脸的秒天秒地算法》(1)
本系列坚持格式:1个抖机灵算法+2个较简单但是天秀的算法+1个较难天秀算法. bogo排序 Bogo排序(Bogo-sort),又被称为猴子排序,是一种恶搞排序算法. 将元素随机打乱,然后检查其是否符 ...
- 《盘点那些秀你一脸的秒天秒地算法》(4)
防止新手错误的神级代码 #define ture true #define flase false #difine viod void #define mian main #define : ; 以后 ...
- 《盘点那些秀你一脸的秒天秒地算法》(3)
斐波那契之美 斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为" ...
- 杭州一高中推刷脸吃饭:8秒搞定;乌海市与上海荷福签署合作协议 进入人工智能矿业安全领域...
北汽与百度签署战略合作打造"人工智能+汽车"生态 雷锋网 AI 掘金志消息,10月13日,北汽集团与百度战略合作协议签约仪式在北京汽车产业研发基地举行.北汽集团党委书记.董事长徐和 ...
- java 纳秒 秒_如何使用TimeUnit枚举将纳秒转换为秒?
问题 如何将值从纳秒转换为秒? 这是代码段: import java.io.*; import java.util.concurrent.*; .. class Stamper { public st ...
- 计算机存储单位和网速单位换算,数据速度计算:在线进行网速各种bps mbps kbps B/秒 KB/秒 MB/秒单位之间换算...
数据速度计算:在线进行网速各种bps mbps kbps B/秒 KB/秒 MB/秒单位之间换算 2018-12-14 1. 数据单位的换算(可进行手机上网流量,硬盘容量,内存容量,显存容量,缓存容量 ...
- 华为P40系列秒天秒地?想战胜苹果三星还需要克服这些阻力
作者 | 韩一冰 出品 | 网易手机&数码<易评机>栏目组(油管&B站:惊奇科技 抖音:JQ163) 北京时间3月26日晚9点,华为P40系列手机全球发布会正式召开,今年的 ...
- picACG本地缓存目录_最新泛目录站群程序【秒收录秒排名快速百度霸屏效果】
相信做泛目录的朋友最担心的事情莫过于如何才能快速在百度首页关键词霸屏,我们都知道想要关键词在百度首页霸屏之前需要让你的站点达到快速收录的效果才行,有了秒收录那么还要让收录的这些关键词页面获得好的排名才 ...
- 【技术美术】盘点十大可捏脸的单机游戏
学习自:http://www.gamersky.com/wenku/201409/467622.shtml 没错,这是一个看脸的时代,君不见年初歌手李代沫因吸毒被抓,网友对他可是一片声讨,而就在上个月 ...
- 秒格式化 “秒” 为 天 时 分 秒
function SecondToDate(msd) {var time =msdif (null != time && "" != time) {if (time ...
最新文章
- matlab p-tite分割图像,P'tite fourmi
- [MSDN]每个开发人员现在应该下载的十种必备工具
- JS 判断上传文件是否为EXCEL 文件
- Python:if语句
- Virtual DOM 详解
- LeetCode(748)——最短完整词(JavaScript)
- abstract interface java_Java -- abstract 和 interface 的理解
- libgdx的菜单配置,以及json文件的结构
- 在CSDN博客和QQ微信等社交媒体中使用表情符号(保姆级图文+实现代码)【杂记】
- AUTOSAR中CAN通信协议栈概述
- 【主题词——玫瑰花】
- 2020计算机专业评估,2020年计算机学科大学排名TOP50,实力强,毕业生认可度高...
- Beyond compare4激活使用
- idea删除文件时出现选项 “Safe delete ( with usage search)“ 和 “Search in comments and strings“
- VSCode查看gltf文件(glTF Tools插件)
- uva10534 hdu2198 双向LIS问题
- Revit 视图范围的知识总结
- 三相电开水器的工作原理及接法
- JAVA面向接口的编程思想与具体实现
- 金融科技专业计算机课程,课程大纲-1819S1-互联网金融科技