alphaTriangulation

Триангуляция, которая заполняет альфа-форму

Описание

пример

tri = alphaTriangulation(shp) возвращает триангуляцию, которая задает область альфа-формы. Каждая строка в tri задает треугольник или тетраэдр, заданный идентификаторами вершин (номерами строк shp.Points матрица).

tri = alphaTriangulation(shp,RegionID) возвращает триангуляцию для области альфа-формы. RegionID - идентификатор для области и 1RegionIDnumRegions(shp).

[tri,P] = alphaTriangulation(___) также возвращает матрицу вершинных координат, 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.

shp = alphaShape(P,1);
plot(shp)

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

Использование alphaTriangulation чтобы восстановить триангуляцию, которая задает область альфа-формы.

tri = alphaTriangulation(shp);

Найдите общее количество тетраэдров, составляющих альфа-форму.

numtetrahedra = size(tri,1)
numtetrahedra = 3729

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

свернуть все

Альфа-форма, заданная как 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

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

свернуть все

Триангуляция, возвращенная как матрица. tri имеет размер mtri-by- nv, где mtri количество треугольников или тетраэдров в альфа-форме и nv - количество вершин. Значение nv является 3 для 2-D альфа-форм и 4 для 3-D альфа-форм.

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

См. также

| | |

Введенный в R2014b