Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

alphaSpectrum

提供不同 alpha 形状的 alpha 值

说明

示例

a = alphaSpectrum(shp) 返回产生不同 alpha 形状的 alpha 半径的值。a 已按降序排序。a 中的每个元素表示 alpha 半径的一个值,每个值生成一个不同的形状。a 的长度等于唯一形状的数目。介于 a 中的值之间的 alpha 值不会生成唯一的 alpha 形状。

示例

全部折叠

创建并绘制一个二维点集。

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

Figure contains an axes object. The axes contains a line object which displays its values using only markers.

使用默认 alpha 半径创建点云的 alpha 形状。

shp = alphaShape(x,y);

计算生成点云的唯一 alpha 形状的关键 alpha 值的范围。

alphaspec = alphaSpectrum(shp);

绘制由频谱中的 alpha 值生成的四种独特的 alpha 形状。

for k = 1:4
    alpha = alphaspec(8*k-7); 
    shp.Alpha = alpha; 
    subplot(2,2,k)
    plot(shp)
    title("Alpha = "+alpha)
end

Figure contains 4 axes objects. Axes object 1 with title Alpha = 52.5066 contains an object of type patch. Axes object 2 with title Alpha = 7.3917 contains an object of type patch. Axes object 3 with title Alpha = 3.2274 contains an object of type patch. Axes object 4 with title Alpha = 0.77523 contains an object of type patch.

输入参数

全部折叠

alpha 形状,指定为 alphaShape 对象。有关详细信息,请参阅 alphaShape

示例: shp = alphaShape(x,y) 根据 (x,y) 点坐标创建一个二维 alphaShape 对象。

输出参数

全部折叠

不同 alpha 形状的 alpha 值,以按降序排序的列向量形式返回。

版本历史记录

在 R2014b 中推出

另请参阅

|