RoadGroup

Складские спецификации для дорожной развязки или перекрестка

Описание

The RoadGroup объект хранит спецификации дорожных сегментов, которые объединяются для формирования дорожной развязки или перекрестка.

Создание

Как создать RoadGroup объект, используйте driving.scenario.RoadGroup функция создания. Затем создайте дорожную развязку или перекресток путем следующих шагов:

  1. Определите сегменты дорог и добавьте их к RoadGroup объект при помощи road функция.

  2. Объедините сегменты дороги в соединение или перекресток и добавьте их к сценарию вождения с помощью roadGroup функция.

Описание

rg = driving.scenario.RoadGroup создает RoadGroup объект со свойствами Name и Roads.

пример

rg = driving.scenario.RoadGroup('Name',name) дополнительно задает имя, name для дорожной развязки, где name - вектор символов или строковый скаляр. name устанавливает Name свойство.

Свойства

расширить все

Это свойство доступно только для чтения.

Имя дорожной развязки или пересечения, сохраненное как строковый скаляр. The name аргумент устанавливает это значение свойства.

Пример: driving.scenario.RoadGroup('Name','junction1') создает RoadGroup объект со Name свойство "junction1".

Типы данных: string

Это свойство доступно только для чтения.

Спецификации дорожных сегментов в группе дорог, хранящиеся как массив ячеек конструкций. Каждая структура содержит эти поля, и их значения заданы road функция:

ОбластьЗначение
Width

Положительный действительный скаляр, определяющий ширину дороги. Модули измерения указаны в метрах.

LanesA lanespec объект, определяющий свойства полос движения на дороге.
Name

Строковый скаляр, задающий имя дороги.

Centers

Матрица N -by-2 или N -by-3 действительных значений, задающих центры в дороге. N - количество центров в дороге.

BankAngle

Вектор N-element реальных значений, задающих банковские значения для дороги. N - количество центров в дороге.

Типы данных: struct

Примеры

свернуть все

Трехсторонний перекресток является соединением Y, в котором две смежные дороги пересекают третью дорогу под тупым углом, как показано на этом рисунке. Чтобы соединить три дороги, вы создадите соединение Y с помощью добавления трех сегментов дороги.

Добавьте три дороги к сценарию вождения

Создайте пустой сценарий вождения.

scenario = drivingScenario;

Укажите количество полос и ширину каждой полосы на дорогах.

ls = lanespec(2,'Width',5);

Определите дорожные центры для трех дорог и добавьте их к сценарию вождения. Первая дорога ориентирована по диагонали налево от сценарного полотна, вторая дорога ориентирована по диагонали справа от сценарного полотна, а третья дорога ориентирована вертикально.

% Add the first road
roadCenters = [-20 0; 6 0];
road(scenario,roadCenters,'Name','Road 1','Lanes',ls);

% Add the second road
roadCenters = [23 7; 50 33];
road(scenario,roadCenters,'Name','Road 2','Lanes',ls);

% Add the third road
roadCenters = [23 -7; 50 -33];
road(scenario,roadCenters,'Name','Road 3','Lanes',ls);

Постройте график сценария.

figure
plot(scenario)

Figure contains an axes. The axes contains 5 objects of type patch, line.

Создайте Y-образное соединение для соединения дорог

Создайте RoadGroup объект. Задайте ширину для каждого сегмента дороги, образующего Y-образное соединение.

rg = driving.scenario.RoadGroup('Name','Y-Junction');
roadWidth = 10;

Укажите центры дорог для трех сегментов дорог и добавьте эти сегменты дорог к RoadGroup объект при помощи road функция. Эти сегменты дороги пересекаются друг с другом.

% Add the first road segment
roadCenters = [23 7; 14 1; 6 0];
road(rg,roadCenters,roadWidth,'Name','Segment 1');

% Add the second road segment
roadCenters = [23 -7; 14 -1; 6 0];
road(rg,roadCenters,roadWidth,'Name','Segment 2');

% Add the third road segment
roadCenters = [23 7; 21 4; 21 -4; 23 -7];
road(rg,roadCenters,roadWidth,'Name','Segment 3');

Добавьте Y-соединение к сценарию вождения

Добавьте сегменты дороги, хранящиеся в RoadGroup объект сценарию вождения при помощи roadGroup функция. Сегменты дороги образуют Y-образное соединение, которое соединяет три дороги в сценарии вождения.

roadGroup(scenario,rg);

Figure contains an axes. The axes contains 3 objects of type patch, line.

См. также

Объекты

Функции

Введенный в R2021a