boundaryFacets

Граничные фасеты альфа-формы

Синтаксис

bf = boundaryFacets(shp)
bf = boundaryFacets(shp,RegionID)
[bf,P] = boundaryFacets(___)

Описание

пример

bf = boundaryFacets(shp) возвращает матрицу, представляющую фасеты, которые составляют контур альфа-формы. Фасеты представляют сегменты ребра в 2D и треугольники в 3-D. Вершины фасетов индексируют в матрицу shp.Points.

bf = boundaryFacets(shp,RegionID) возвращает граничные фасеты для области альфа-формы. RegionID является ID для области и 1RegionIDnumRegions(shp).

[bf,P] = boundaryFacets(___) также возвращает матрицу координат вершины, P, с помощью любого из предыдущих синтаксисов.

Примеры

свернуть все

Создайте набор 3-D точек.

[x1, y1, z1] = sphere(24);
x1 = x1(:);
y1 = y1(:);
z1 = z1(:);
x2 = x1+5;
P = [x1 y1 z1; x2 y1 z1];
P = unique(P,'rows');

Создайте и постройте альфа-форму с помощью альфа-радиуса 1,5.

shp = alphaShape(P,1.5);
plot(shp)
axis equal

Вычислите и постройте только контур альфа-формы.

[tri, xyz] = boundaryFacets(shp);
trisurf(tri,xyz(:,1),xyz(:,2),xyz(:,3),...
    'FaceColor','cyan','FaceAlpha',0.3) 
axis equal

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

свернуть все

Альфа-форма, заданная как объект alphaShape. Для получения дополнительной информации смотрите alphaShape.

Пример: shp = alphaShape(x,y) создает 2D объект alphaShape из координат точки (x,y).

Идентификационный номер для области в альфа-форме, заданной как положительный целочисленный скаляр между 1 и numRegions(shp).

Альфа-форма может содержать несколько меньших областей, в зависимости от набора точки и параметров. Каждая из этих меньших областей присвоена уникальный RegionID, который нумерует области от самой большой области или объема к самому маленькому. Например, рассмотрите 3-D альфа-форму с двумя областями. Область с самым большим объемом имеет RegionID 1, и меньшая область имеет RegionID 2.

Пример: shp.RegionThreshold = area(shp,numRegions(shp)-2); подавляет две самых маленьких области в 2D альфа-форме shp.

Типы данных: double

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

свернуть все

Граничные фасеты, возвращенные как матрица. bf имеет размер m-by-n, где m является количеством граничных фасетов, и n является количеством вершин на фасет.

Координаты вершины, возвращенные как матрица. P имеет размер N-by-dim, где N является числом точек на контуре альфа-формы, и dim является или 2 или 3 (или для 2D или для 3-D альфа-формы).

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

| |

Введенный в R2014b