ヘルプ センターヘルプ センター
アルファ形状の境界の小平面
bf = boundaryFacets(shp)
bf = boundaryFacets(shp,RegionID)
[bf,P] = boundaryFacets(___)
bf = boundaryFacets(shp) は、アルファ形状の境界を構成する小平面を表す行列を返します。小平面は、2 次元の場合はエッジ セグメント、3 次元の場合は三角形を表します。小平面の頂点は shp.Points 行列のインデックスになります。
bf
shp
shp.Points
例
bf = boundaryFacets(shp,RegionID) は、アルファ形状の領域の境界を構成する小平面を返します。RegionID は領域の ID で、1 ≤ RegionID ≤ numRegions(shp) です。
RegionID
1
numRegions(shp)
[bf,P] = boundaryFacets(___) は、前述のいずれかの構文を使用して頂点の座標の行列 P も返します。
P
すべて折りたたむ
3 次元の点の集合を作成します。
[x1, y1, z1] = sphere(24); x1 = x1(:); y1 = y1(:); z1 = z1(:); x2 = x1+5; P = [x1 y1 z1; x2 y1 z1]; P = unique(P,'rows');
アルファ半径を 1.5 にしてアルファ形状を作成し、プロットします。
shp = alphaShape(P,1.5); plot(shp) axis equal
アルファ形状の境界だけを計算してプロットします。
[tri, xyz] = boundaryFacets(shp); trisurf(tri,xyz(:,1),xyz(:,2),xyz(:,3),... 'FaceColor','cyan','FaceAlpha',0.3) axis equal
alphaShape
アルファ形状。alphaShape オブジェクトとして指定します。詳細については、alphaShape を参照してください。
例: shp = alphaShape(x,y) は、座標 (x,y) の点から 2 次元の alphaShape オブジェクトを作成します。
shp = alphaShape(x,y)
(x,y)
アルファ形状の領域の ID 番号。1 ~ numRegions(shp) の範囲の正の整数スカラーとして指定します。
アルファ形状には、点集合やパラメーターに基づく複数の小さい領域を含めることができます。それらの小さい領域には、面積または体積が大きい順に一意の RegionID が割り当てられます。たとえば、2 つの領域をもつ 3 次元のアルファ形状を考えます。体積が大きい領域の RegionID は 1、体積が小さい領域の RegionID は 2 になります。
例: shp.RegionThreshold = area(shp,numRegions(shp)-2); は、2 次元アルファ形状 shp の領域を小さい方から 2 つ抑制します。
shp.RegionThreshold = area(shp,numRegions(shp)-2);
データ型: double
double
境界の小平面。行列として返されます。bf は m 行 n 列サイズの行列で、m は境界の小平面の数、n は小平面ごとの頂点の数です。
m
n
頂点の座標。行列として返されます。P は N 行 dim 列のサイズの行列で、N はアルファ形状の境界上にある点の数、dim は 2 (2 次元アルファ形状の場合) または 3 (3 次元アルファ形状の場合) です。
N
dim
2
3
R2014b で導入
alphaShape | plot | triangulation
plot
triangulation
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office