exponenta event banner

surfaceArea

Площадь поверхности 3D альфа-формы

Описание

пример

A = surfaceArea(shp) возвращает общую площадь поверхности альфа-фигуры 3-D shp, включая площадь поверхности любых внутренних пустот в альфа-форме.

пример

A = surfaceArea(shp,RegionID) возвращает площадь поверхности области альфа-формы. RegionID - идентификатор региона и 1RegionIDnumRegions(shp).

Примеры

свернуть все

Создайте набор 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)

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

Вычислите площадь поверхности альфа-формы.

totalsurfarea = surfaceArea(shp)
totalsurfarea = 24.9361

Вычислите площадь поверхности каждой области отдельно.

regionsurfareas = surfaceArea(shp, 1:numRegions(shp))
regionsurfareas = 1×2

   12.4680   12.4680

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

свернуть все

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

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

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

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

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

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

См. также

| |

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