plot

Постройте запланированный путь к транспортному средству

Описание

пример

plot(refPath) строит запланированный путь к транспортному средству.

plot(refPath,Name,Value) задает опции с помощью одного или нескольких аргументов пары "имя-значение". Например, plot(path,'Vehicle','off') строит путь, не отображая транспортное средство.

Примеры

свернуть все

Запланируйте путь к транспортному средству через парковку при помощи оптимального быстро исследующего случайного дерева (RRT*) алгоритм. Проверяйте, что путь допустим, и затем постройте положения перехода вдоль пути.

Загрузите costmap парковки. Постройте costmap, чтобы видеть парковку и раздутые области для транспортного средства, чтобы избежать.

data = load('parkingLotCostmap.mat');
costmap = data.parkingLotCostmap;
plot(costmap)

Figure contains an axes object. The axes object contains 2 objects of type image, patch. This object represents Inflated Areas.

Задайте запускаются и целевые положения для транспортного средства как [x, y, Θ] векторы. Мировые единицы измерения для (x, y) местоположения исчисляются в метрах. Мировые единицы измерения для Θ углов ориентации в градусах.

startPose = [4, 4, 90]; % [meters, meters, degrees]
goalPose = [30, 13, 0];

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

planner = pathPlannerRRT(costmap);
refPath = plan(planner,startPose,goalPose);

Проверяйте, что путь допустим.

isPathValid = checkPathValidity(refPath,costmap)
isPathValid = logical
   1

Интерполируйте положения перехода вдоль пути.

transitionPoses = interpolate(refPath);

Постройте запланированный путь и положения перехода на costmap.

hold on
plot(refPath,'DisplayName','Planned Path')
scatter(transitionPoses(:,1),transitionPoses(:,2),[],'filled', ...
    'DisplayName','Transition Poses')
hold off

Figure contains an axes object. The axes object contains 13 objects of type image, patch, scatter, line, polygon. These objects represent Inflated Areas, Planned Path, Transition Poses.

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

свернуть все

Запланированный путь к транспортному средству в виде driving.Path объект.

Аргументы name-value

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

Пример: 'Inflation','off'

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

Отобразите транспортное средство в виде разделенной запятой пары, состоящей из 'Vehicle' и 'on' или 'off'. Установка этого аргумента к 'on' отображает транспортное средство вдоль пути.

Размерности транспортного средства в виде разделенной запятой пары, состоящей из 'VehicleDimensions' и vehicleDimensions объект.

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

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

Для пользовательского цвета укажите триплет RGB. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7]Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета и эквивалентные значения триплета RGB.

Название цветаЦветное краткое названиеТриплет RGBВнешний вид
'red''r'[1 0 0]

'green''g'[0 1 0]

'blue''b'[0 0 1]

'cyan' 'c' [0 1 1]

'magenta''m'[1 0 1]

'yellow''y'[1 1 0]

'black''k'[0 0 0]

'white''w'[1 1 1]

Пример: 'Color',[1 0 1]

Пример: 'Color','m'

Пример: 'Color','magenta'

Пометьте, чтобы идентифицировать путь в виде разделенной запятой пары, состоящей из 'Tag' и вектор символов или строковый скаляр.

Введенный в R2018a