isInsideSubmap

Проверьте, находится ли позиция запроса внутри выбранной подкарты

Описание

пример

isInside = isInsideSubmap(ndtMap pos) проверить, является ли позиция запроса pos, находится внутри выбранной подкарты карты NDT ndtMap.

[isInside,distToEdge] = isInsideSubmap(ndtMap,pos) также возвращает расстояние от положения запроса до ближайшее ребро подкарты вдоль X -, Y - и Z - осей соответственно.

Примеры

свернуть все

Загрузите карту NDT из файла MAT.

data = load('ndtMapParkingLot.mat');
ndtMap = data.ndtMapParkingLot;

Выберите подкарту с заданным центром и заданным размером.

center = [40 0 0];
sz = [50 50 20];
ndtMap = selectSubmap(ndtMap,center,sz);

Отобразите пределы подкарты.

disp(ndtMap.SelectedSubmap)
   15.0000   65.0000  -25.0000   25.0000   -9.1840    5.4975

Проверьте, находится ли позиция запроса внутри подкарты.

pos1 = [40 0 0]; % near center
[isInside1,distToEdge1] = isInsideSubmap(ndtMap,pos1)
isInside1 = logical
   1

distToEdge1 = 1×3

   25.0000   25.0000    5.4975

pos2 = [66 0 0]; % completely outside
[isInside2,distToEdge2] = isInsideSubmap(ndtMap,pos2)
isInside2 = logical
   0

distToEdge2 = 1×3

    1.0000   25.0000    5.4975

pos3 = [60 0 0]; % inside, 5 meters from edge in x direction
[isInside3,distToEdge3] = isInsideSubmap(ndtMap,pos3)
isInside3 = logical
   1

distToEdge3 = 1×3

    5.0000   25.0000    5.4975

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

свернуть все

Карта NDT, заданная как pcmapndt объект.

Позиция запроса, заданная как 3-элементный вектор формы [x y z].

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

свернуть все

Индикация положения внутри подкарты, возвращаемая как логическое true или false.

Расстояние от положения запроса до ближайшее ребро подкарты в X -, Y - и Z - осях соответственно, возвращаемое как вектор с 3 элементами.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.

См. также

Функции

Объекты

Введенный в R2021a