exponenta event banner

outlinePlotter

Контурный плоттер для графика птичьего глаза

Описание

olPlotter = outlinePlotter(bep) создает OutlinePlotter объект, который настраивает отображение контуров объекта на графике птичьего глаза. OutlinePlotter объект хранится в Plotters имущества birdsEyePlot объект, bep. Чтобы отобразить контуры актеров, которые находятся в управляющем сценарии, сначала используйте targetOutlines получить размеры действующих лиц и барьеры. Затем после создания объекта плоттера контура используйте команду plotOutline и plotBarrierOutline функции отображения контуров всех актёров и барьеров в сюжете птичьего глаза соответственно.

пример

olPlotter = outlinePlotter(bep,Name,Value) устанавливает свойства с использованием одного или нескольких Name,Value аргументы пары. Например, outlinePlotter(bep,'FaceAlpha',0) устанавливает полностью прозрачные области в каждом контуре.

Примеры

свернуть все

Создайте сценарий управления. Создайте сегмент дороги длиной 25 м с барьером на левой кромке. Добавить пешехода, который пересекает дорогу со скоростью 1 м/с, и транспортное средство, которое движется по дороге со скоростью 10 м/с.

scenario = drivingScenario;

r = road(scenario,[0 0 0; 25 0 0]);
barrier(scenario,r,'RoadEdge','left')

p = actor(scenario,'ClassID',4,'Length',0.2,'Width',0.4,'Height',1.7);
v = vehicle(scenario,'ClassID',1);

smoothTrajectory(p,[15 -3 0; 15 3 0],1)
smoothTrajectory(v,[v.RearOverhang 0 0; 25-v.Length+v.RearOverhang 0 0],10)

Используйте график погон для отображения сценария с точки зрения транспортного средства.

chasePlot(v,'Centerline','on')

Создайте график «птичий глаз», плоттер контуров и плоттер границ полос движения.

bep = birdsEyePlot('XLim',[-25 25],'YLim',[-10 10]);
olPlotter = outlinePlotter(bep);
lbPlotter = laneBoundaryPlotter(bep);
legend('off')

Figure contains an axes. The axes is empty.

Запустите цикл моделирования. Обновите плоттер контурами для целевых объектов.

while advance(scenario)
   % Obtain the road boundaries and rectangular outlines.
   rb = roadBoundaries(v);
   [position,yaw,length,width,originOffset,color] = targetOutlines(v);
   [bposition,byaw,blength,bwidth,boriginOffset,bcolor,numBarrierSegments] = targetOutlines(v,'Barriers');

   % Update the bird's-eye plotters with the road, actors and barriers.
   plotLaneBoundary(lbPlotter,rb);
   plotOutline(olPlotter,position,yaw,length,width, ...
               'OriginOffset',originOffset,'Color',color);
   plotBarrierOutline(olPlotter,numBarrierSegments,bposition,byaw,blength,bwidth, ...
               'OriginOffset',boriginOffset,'Color',bcolor); 
   % Allow time for plot to update.
   pause(0.01)
end

Figure contains an axes. The axes is empty.

Входные аргументы

свернуть все

Участок птичьего глаза, указанный как birdsEyePlot объект.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: outlinePlotter('FaceAlpha',1) устанавливает полностью непрозрачные области в каждом контуре.

Прозрачность области в каждом контуре, определяемая как разделенная запятыми пара, состоящая из 'FaceAlpha' и действительный скаляр в диапазоне [0, 1]. Значение 0 делает области полностью прозрачными. Значение 1 делает области полностью непрозрачными.

Марка, связанная с объектом плоттера, заданная как разделенная запятыми пара, состоящая из 'Tag' и вектор символов или строковый скаляр. Значение по умолчанию: 'PlotterN', где N является целым числом, которое соответствует Nтый плоттер, связанный с вводом birdsEyePlot объект.

Выходные аргументы

свернуть все

Плоттер контура, возвращенный как OutlinePlotter объект. Этот объект можно изменить, изменив его значения свойств. Имена свойств соответствуют аргументам пары имя-значение outlinePlotter функция.

olPlotter хранится в Plotters свойство birdsEyePlot объект. Чтобы построить контуры актеров, которые находятся в сценарии вождения, сначала используйте targetOutlines получить размеры действующих лиц и барьеры. Затем, после звонка outlinePlotter для создания объекта плоттера используйте plotOutline и plotBarrierOutline для построения контуров всех актёров и барьеров в сюжете птичьего глаза соответственно.

Представлен в R2017b