plotTrajectory

Постройте график набора траекторий на графике траектории

Описание

пример

plotTrajectory(trajPlotter,trajCoordList) задает траектории для отображения на графике траектории, trajPlotter. Входной параметр trajCoordList - массив ячеек из матриц M -by-3, где M - число точек в траектории. Каждая матрица в trajCoordList может иметь разное количество строк. Первый, второй и третий столбцы каждой матрицы соответствуют x -, y - и z - координатам кривой через M точки, которые представляют соответствующую траекторию.

Примеры

свернуть все

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

Во-первых, создайте 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.

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

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

свернуть все

График траектории, заданный как trajectoryPlotter объект.

Координаты траекторий для отображения, заданные как массив ячеек из матриц M-на-3, где M - число точек в траектории. Каждая матрица в trajCoordList может иметь разное количество строк. Первый, второй и третий столбцы каждой матрицы соответствуют x -, y - и z - координатам кривой через M точки, которые представляют соответствующую траекторию.

Пример: coordList = {[1 2 3; 4 5 6; 7,8,9];[4 2 1; 4 3 1];[4 4 4; 3 1 2; 9 9 9; 1 0 2]} задает три различные траектории.

Введенный в R2018b