exponenta event banner

trajectoryPlotter

Создание плоттера траектории

Описание

trajPlotter = trajectoryPlotter(tp) создает траекторный плоттер для использования с графиком кинотеатра tp.

пример

trajPlotter = trajectoryPlotter(tp,Name,Value) создает траекторный плоттер с дополнительными опциями, заданными одним или несколькими Name,Value аргументы пары.

Примеры

свернуть все

В этом примере показано, как создать анимацию платформы, движущейся по траектории.

Сначала создайте trackingScenario и добавьте ППМ для траектории.

ts = trackingScenario;
height = 100;
d = 1;
wayPoints = [ ...
    -30   -25   height;
    -30    25-d height;
    -30+d  25   height;
    -10-d  25   height;
    -10    25-d height;
    -10   -25+d height;
    -10+d -25   height;
    10-d -25   height;
    10   -25+d height;
    10    25-d height;
    10+d  25   height;
    30-d  25   height;
    30    25-d height;
    30   -25+d height;
    30   -25   height];

Укажите время для каждого ППМ.

elapsedTime = linspace(0,10,size(wayPoints,1));

Затем создайте платформу в сценарии отслеживания и добавьте информацию о траектории с помощью trajectory способ.

target = platform(ts);
traj = waypointTrajectory('Waypoints',wayPoints,'TimeOfArrival',elapsedTime);
target.Trajectory = traj;

Запишите сценарий отслеживания, чтобы получить траекторию платформы.

r = record(ts);
pposes = [r(:).Poses];
pposition = vertcat(pposes.Position);

Создайте график кинотеатра для отображения записанной траектории.

tp = theaterPlot('XLim',[-40 40],'YLim',[-40 40]);
trajPlotter = trajectoryPlotter(tp,'DisplayName','Trajectory');
plotTrajectory(trajPlotter,{pposition})

Figure contains an axes. The axes contains an object of type line. This object represents Trajectory.

Анимация с помощью platformPlotter.

restart(ts);
trajPlotter = platformPlotter(tp,'DisplayName','Platform');

while advance(ts)
    p = pose(target,'true');
    plotPlatform(trajPlotter, p.Position);
    pause(0.1)
    
end

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Trajectory, Platform.

Эта анимация проходит через все созданные графики.

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

свернуть все

Театральный участок, указанный как theaterPlot объект.

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

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

Пример: 'LineStyle','--'

Имя графика для отображения в легенде, указанное как разделенная запятыми пара, состоящая из 'DisplayName' и вектор символов или строковый скаляр. Если имя не указано, запись не отображается.

Пример: 'DisplayName','Radar Detections'

Цвет траектории, заданный как разделенная запятыми пара, состоящая из 'Color' и символьный вектор, строковый скаляр, триплет RGB или шестнадцатеричный цветовой код.

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

СтоимостьОписание
':'

Пунктирная линия (по умолчанию)

'-'

Сплошная линия

'--'

Пунктирная линия

'-.'

Пунктирная линия

Ширина линии траектории, указанная в размере точек как разделенная запятыми пара, состоящая из 'LineWidth' и положительный скаляр.

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

Марки позволяют идентифицировать объекты плоттера, например, при поиске с помощью findPlotter.

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