criticalAlpha

Альфа-радиус, задающий критический переход в форме

Синтаксис

a = criticalAlpha(shp,type)

Описание

пример

a = criticalAlpha(shp,type) возвращает критический альфа-радиус, который производит известный переход в альфа-форме. При определении type, когда 'all-points' возвращает самый маленький альфа-радиус, производящий альфа-форму, которая заключает все точки. При определении type, когда 'one-region' возвращает самый маленький альфа-радиус, производящий альфа-форму, которая заключает все точки и имеет только одну область.

Примеры

свернуть все

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

Создайте альфа-форму с помощью альфа-радиуса по умолчанию.

shp = alphaShape(x,y);

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

pc = criticalAlpha(shp,'all-points');
shp.Alpha = pc;
plot(shp)

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

shp = alphaShape(x,y);
pc = criticalAlpha(shp,'one-region');
shp.Alpha = pc;
plot(shp)

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

свернуть все

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

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

Тип критического перехода, заданного или как 'all-points' или как 'one-region'.

  • 'all-points' соответствует самому маленькому альфа-радиусу, производящему альфа-форму, которая заключает все точки.

  • 'one-region' соответствует самому маленькому альфа-радиусу, производящему альфа-форму, которая заключает все точки и имеет только одну область.

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

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

свернуть все

Критический альфа-радиус, возвращенный как скаляр. a является значением альфа-радиуса, который производит альфа-форму, которая любой заключает все точки (если type является 'all-points'), или заключает все точки в одной области (если type является 'one-region').

После использования criticalAlpha, чтобы найти a, можно сделать альфа-радиус shp равным a путем ввода shp.Alpha = a.

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

|

Введенный в R2014b