メインコンテンツ

alphaSpectrum

R2026b

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

説明

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

2-D point cloud with two concentric circular clusters centered at (0,0) and (15,0), each with radii from 1 to 5

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

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

Four alpha shapes from the alpha spectrum showing progressive refinement: Alpha=52.5 forms one region, Alpha=7.4 shows concavities, Alpha=3.2 narrows the bridge, and Alpha=0.78 separates into two circles

入力引数

すべて折りたたむ

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

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

出力引数

すべて折りたたむ

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

バージョン履歴

R2014b で導入