exponenta event banner

isInsideSubmap

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

Описание

пример

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

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

Примеры

свернуть все

Загрузите карту неразрушающего контроля из файла 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

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

свернуть все

Карта неразрушающего контроля, заданная как pcmapndt объект.

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

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

свернуть все

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

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

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.

См. также

Функции

Объекты

Представлен в R2021a