CARLA
 
载入中...
搜索中...
未找到
RoadInfoLaneBorder.h
浏览该文件的文档.
1// Copyright (c) 2017 Computer Vision Center (CVC) at the Universitat Autonoma
2// de Barcelona (UAB).
3//
4// This work is licensed under the terms of the MIT license.
5// For a copy, see <https://opensource.org/licenses/MIT>.
6
7#pragma once // 确保该头文件只被包含一次
8
9#include "carla/road/element/RoadInfo.h" // 引入RoadInfo类的定义
10#include "carla/geom/CubicPolynomial.h" // 引入CubicPolynomial类的定义
11
12namespace carla {
13namespace road {
14namespace element {
15
16 /// 与其通过宽度条目描述车道,依赖于内层车道对外层车道的影响,
17 /// 不如独立描述每个车道的外边界。这种方式在道路数据源自测量时特别有用,
18 /// 可以提供一种更方便的方法,而无需将道路段划分为过多部分。
19 /// 注意:车道边界和宽度是互斥的。
20 class RoadInfoLaneBorder final : public RoadInfo { // 定义RoadInfoLaneBorder类,继承自RoadInfo
21 public:
22
23 // 构造函数,接受五个参数来初始化RoadInfo和边界多项式
25 double s, // 曲线参数s
26 double a, // 多项式系数a
27 double b, // 多项式系数b
28 double c, // 多项式系数c
29 double d) // 多项式系数d
30 : RoadInfo(s), // 初始化基类RoadInfo
31 _border(a, b, c, d, s) {} // 初始化边界多项式
32
33 // 接受访问者模式的实现
35 v.Visit(*this); // 调用访问者的Visit方法
36 }
37
38 // 获取边界多项式
40 return _border; // 返回边界多项式
41 }
42
43 private:
44
45 const geom::CubicPolynomial _border; // 声明一个常量的CubicPolynomial对象用于存储边界
46 };
47
48} // namespace element
49} // namespace road
50} // namespace carla
定义一个三次多项式CubicPolynomial类,用于描述和计算三次多项式 f(x) = a + b * x + c * x^2 + d * x^3
与其通过宽度条目描述车道,依赖于内层车道对外层车道的影响, 不如独立描述每个车道的外边界。这种方式在道路数据源自测量时特别有用, 可以提供一种更方便的方法,而无需将道路段划分为过多部分。 注意:车道边界...
const geom::CubicPolynomial & GetPolynomial() const
RoadInfoLaneBorder(double s, double a, double b, double c, double d)
void AcceptVisitor(RoadInfoVisitor &v) final
CARLA模拟器的主命名空间。
Definition Carla.cpp:139