perimeter

Периметр 2-D альфа-формы

Описание

пример

L = perimeter(shp) возвращает общий периметр 2-D альфа-формы shp, включая периметр любых внутренних отверстий альфа-формы.

пример

L = perimeter(shp,RegionID) возвращает периметр области в альфа-форме. RegionID - идентификатор для области и 1RegionIDnumRegions(shp).

Примеры

свернуть все

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

th = (pi/12:pi/12:2*pi)';
x1 = [reshape(cos(th)*(1:5), numel(cos(th)*(1:5)),1); 0];
y1 = [reshape(sin(th)*(1:5), numel(sin(th)*(1:5)),1); 0];
x = [x1; x1+15;];
y = [y1; y1];

Создать и построить график альфа-формы можно используя альфа-радиус 2,5.

shp = alphaShape(x,y,2.5);
plot(shp)

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

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

totalperim = perimeter(shp)
totalperim = 62.6526

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

regionperims = perimeter(shp, 1:numRegions(shp))
regionperims = 1×2

   31.3263   31.3263

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

свернуть все

2-D альфа-фигуру, заданную как 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

См. также

| |

Введенный в R2014b