numRegions

Количество областей в альфа-форме

Синтаксис

Описание

пример

N = numRegions(shp) возвращает количество отличных областей, которые составляют альфа-форму. Для альфа-радиуса Inf, альфа-форма является выпуклой оболочкой, и количество областей является тем. Когда значение альфа-радиуса уменьшается, форма может ворваться в отдельные области, в зависимости от набора точки.

Примеры

свернуть все

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

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];
plot(x,y,'.')
axis equal

Создайте альфа-форму с помощью альфа-радиуса 7 и запросите количество отличных областей в форме.

shp = alphaShape(x,y,7);
nregions = numRegions(shp)
nregions = 1

Используйте меньший альфа-радиус 2,5, чтобы лучше получить контур и затем получить новое количество отличных областей.

shp.Alpha = 2.5;
nregions = numRegions(shp)
nregions = 2

Постройте альфа-форму, чтобы проверять граничное качество.

plot(shp)

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

свернуть все

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

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

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

Введенный в R2014b