exponenta event banner

boundaryFacets

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

Описание

пример

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

bf = boundaryFacets(shp,RegionID) возвращает граничные фасеты для области альфа-формы. RegionID - идентификатор региона и 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

Figure contains an axes. The axes contains an object of type patch.

Вычислите и выведите на печать только границу альфа-фигуры.

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

Figure contains an axes. The axes contains an object of type patch.

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

свернуть все

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

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

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

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

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

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

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

свернуть все

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

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

См. также

| |

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