move(map,moveValue) перемещает локальный источник карты в абсолютное место, moveValue, в мировой системе координат и обновляет пределы карты. Значения Move усекаются на основе разрешения карты. По умолчанию для вновь открываемых областей задано значение map.DefaultValue.
Этот пример показывает, как переместить локальную эгоцентрическую карту и синхронизировать ее с большей картой мира. Этот процесс эмулирует транспортное средство в окружении и получение обновлений о препятствиях в новых областях.
Загрузите карты примера. Создайте двоичную карту заполнения из complexMap.
Следуйте пути, запланированного на карте мира, и обновляйте локальную карту, когда вы перемещаете свою локальную систему координат.
Задайте местоположение пути и постройте график на карте.
path = [5 2
8 2
8 8
30 8];
show(map)
hold on
plot(path(:,1),path(:,2))
hold off
Создайте цикл для перемещения между точками с помощью разрешения карты. Разделите различие между точками на разрешение карты, чтобы увидеть, сколько инкрементных движений вы можете сделать.
for i = 1:length(path)-1
moveAmount = (path(i+1,:)-path(i,:))/map.Resolution;
for j = 1:abs(moveAmount(1)+moveAmount(2))
moveValue = sign(moveAmount).*map.Resolution;
move(mapLocal,moveValue, ..."MoveType","relative","SyncWith",map)
show(mapLocal)
drawnow limitrate
pause(0.2)
endend
map - Представление карты binaryOccupancyMap объект
Представление карты, заданное как binaryOccupancyMap объект. Этот объект представляет окружение транспортного средства.
moveValue - Локальное начальное значение перемещения карты [x y] вектор
Локальное начальное значение перемещения карты, заданное как [x y] вектор. По умолчанию значение является абсолютным местоположением, в которое можно переместить локальный источник в мировой системе координат. Используйте MoveType Пара "имя-значение" для задания относительного перемещения.
Аргументы в виде пар имя-значение
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
Пример: 'MoveType','relative'
'MoveType' - Тип перемещения 'absolute' (по умолчанию) | 'relative'
Тип перемещения, заданный как 'absolute' или 'relative'. Для относительных перемещений задайте относительное [x y] вектор для moveValue на основе текущей локальной системы координат.
'FillValue' - Значение заливки для выявленных мест 0 (по умолчанию) | 1
Значение заливки для выявленных местоположений из-за сдвинутых пределов карты, заданное как 0 или 1.
'SyncWith' - Вторичная карта для синхронизации с binaryOccupancyMap объект
Вторичная карта для синхронизации, заданная как binaryOccupancyMap объект. Все обнаруженные местоположения, основанные на перемещении, обновляются значениями на этой карте с помощью мировых координат.
Расширенные возможности
Генерация кода C/C + + Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.