Main Content

alphaSpectrum

独立したアルファ形状を生成するアルファ値

説明

a = alphaSpectrum(shp) は、独立したアルファ形状を生成するアルファ半径の値を返します。a は降順に並べ替えられます。a の各要素は、独立した形状になるアルファ半径の値を表します。a の長さは、一意の形状の数と等しくなります。a の各値の間にあるアルファの値からは一意のアルファ形状は生成されません。

すべて折りたたむ

2 次元の点の集合を作成してプロットします。

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.

既定のアルファ半径を使用して点群のアルファ形状を作成します。

shp = alphaShape(x,y);

点群の一意のアルファ形状を生成する臨界アルファ値のスペクトルを求めます。

alphaspec = alphaSpectrum(shp);

スペクトルのアルファ値で生成された一意のアルファ形状の 4 つをプロットします。

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.

入力引数

すべて折りたたむ

アルファ形状。alphaShape オブジェクトとして指定します。詳細については、alphaShape を参照してください。

例: shp = alphaShape(x,y) は、座標 (x,y) の点から 2 次元の alphaShape オブジェクトを作成します。

出力引数

すべて折りたたむ

独立したアルファ形状のアルファ値。降順に並べ替えられた列ベクトルとして返されます。

バージョン履歴

R2014b で導入