ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

delaunayn

N 次元 Delaunay 三角形分割

構文

T = delaunayn(X)
T = delaunayn(X,options)

説明

T = delaunayn(X) は、X のデータ点がまったくシンプレックスの外接球に入らないようなシンプレックスの集合を計算します。X は、n 次元空間の m 個の点を表す mn 列の配列です。T は、numt 行 (n+1) 列の配列で、各行は、対応するシンプレックスの頂点の X のインデックスを含んでいます。

T = delaunayn(X,options) はオプションの cell 配列を指定します。既定のオプションは、以下のとおりです。

  • 2 次元および 3 次元入力の場合、{'Qt','Qbb','Qc'}

  • 4 次元以上の入力の場合、{'Qt','Qbb','Qc','Qx'}

options[] の場合、既定のオプションが使用されます。options{''} の場合、既定の設定も含め、オプションは使用されません。

可視化

関数 delaunayn の出力のプロットは、n の値に依存します。

  • n = 2 の場合、関数 delaunay と同様に関数 triplot、関数 trisurf、関数 trimesh のいずれかを使用します。

  • n = 3 の場合、tetramesh を使用します。

    小平面の色をより詳細に制御するには、関数 patch を使用して出力をプロットします。

  • n > 3 に対して delaunayn の出力をプロットすることはできません。

すべて折りたたむ

以下の例は、n = 3 に対する n 次元の Delaunary 三角形分割を作成します。

d = [-1 1];
[x,y,z] = meshgrid(d,d,d);  % A cube
x = [x(:);0];
y = [y(:);0];
z = [z(:);0];
% [x,y,z] are corners of a cube plus the center.
X = [x(:) y(:) z(:)];
Tes = delaunayn(X)
Tes = 12×4

     4     3     9     1
     4     9     2     1
     7     9     3     1
     7     5     9     1
     7     9     4     3
     7     8     4     9
     6     2     9     1
     6     9     5     1
     6     4     9     2
     6     4     8     9
     6     9     7     5
     6     8     7     9
      ⋮

関数 tetramesh を使って、対応するシンプレックスを形成する正四面体を可視化できます。関数 camorbit は、カメラの位置を回転して、Figure の見方に意味をもたせます。

tetramesh(Tes,X);
camorbit(20,0)

R2006a より前に導入