plotOutline

Отобразите контуры объектов на графике птичьего глаза

Описание

plotOutline(olPlotter,positions,yaw,length,width) отображает прямоугольные контуры кубоидных объектов на графике птичьего глаза. Задайте положение, угол поворота рыскания, длину и ширину каждого кубоида. График контура, olPlotter, связано с birdsEyePlot и конфигурирует отображение заданных контуров.

Чтобы удалить все контуры, сопоставленные с контурным плоттером olPlotter, вызвать clearData и задайте olPlotter как входной параметр.

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

пример

plotOutline(___,Name,Value) задает опции с использованием одного или нескольких Name,Value аргументы в виде пар и входные параметры из предыдущего синтаксиса.

Примеры

свернуть все

Создайте сценарий вождения. Создать сегмент дороги 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.

Входные параметры

свернуть все

Построение графика, заданное как OutlinePlotter объект. Этот объект хранится в Plotters свойство birdsEyePlot и конфигурирует отображение заданных контуров на графике птичьего глаза. Чтобы создать этот объект, используйте outlinePlotter функция.

Положения обнаруженных объектов в координатах транспортного средства, заданные как M -by-2 действительная матрица (X, Y) позиций. M - количество обнаруженных объектов. Положительные точки X -направления опережают центр транспортного средства. Положительное Y -направление указывает слева от источника транспортного средства, который является центром задней оси, как показано на этом рисунке системы координат транспортного средства.

Углы поворота для контуров объекта, заданные как M-элементный действительный вектор, где M - количество объектов.

Длины контуров объектов, заданные как M элемент с реальным значением, где M - количество объектов.

Ширина контуров объектов, заданная как M - элемент с реальным значением, где M - количество объектов .

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

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

Пример: 'Marker', 'x'

Вращательные центры прямоугольников относительно источника, заданные как разделенная разделенными запятой парами, состоящая из 'OriginOffset' и M -by-2 матрица с реальными значениями. M - количество объектов. Каждая строка соответствует центру вращения, вокруг которого можно повернуть соответствующий прямоугольник, заданный как (X, Y) перемещение от геометрического центра этого прямоугольника.

Цвет контура, заданный как разделенная разделенными запятой парами, состоящая из 'Color' и матрица M -by-3 триплетов RGB. M - количество объектов. Если вы не задаете этот аргумент, функция использует палитру по умолчанию для каждого объекта.

Пример: 'Color', [0 0.5 0.75; 0.8 0.3 0.1]

См. также

|

Введенный в R2017b