exponenta event banner

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