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++ с помощью MATLAB® Coder™.

Смотрите также

Функции

Объекты

Введенный в R2021a