Main Content

tetramesh

四面体メッシュ プロット

説明

tetramesh(T,X) は、四面体の連結行列 T および点 X によって定義される 3 次元四面体メッシュをプロットします。

T は、m 個の四面体の頂点を指定する m4 列の行列です。X は、n 個の点の直交座標を指定する n3 列の行列です。T の各行には、四面体の 4 個の頂点を指定する X へのインデックスが含まれています。

tetramesh(TR) は、3 次元の triangulation オブジェクトまたは delaunayTriangulation オブジェクトによって定義される四面体メッシュをプロットします。

tetramesh(___,c) は、カラーマップ インデックスのベクトルを使用して各四面体の面の色も指定します。

tetramesh(___,Name,Value) は、名前と値の引数を使用して、メッシュ プロットの 1 つ以上のプロパティを指定します。たとえば 'LineWidth',2 は、エッジの幅を 2 ポイントに設定します。

h = tetramesh(___) は、四面体のハンドルのベクトルを返します。h の各ハンドルは、各四面体のメッシュ プロットの作成に使用される patch オブジェクトです。各四面体のプロットのプロパティについてクエリおよび変更を行うには、h(i) を使用します。詳細については、Patch のプロパティを参照してください。

すべて折りたたむ

立方体の頂点を直交座標で表す 8 個の点を作成します。

d = [-1 1];
[x,y,z] = meshgrid(d);
X = [x(:) y(:) z(:)]
X = 8×3

    -1    -1    -1
    -1     1    -1
     1    -1    -1
     1     1    -1
    -1    -1     1
    -1     1     1
     1    -1     1
     1     1     1

四面体の 4 個の頂点を指定する X へのインデックスが各行に含まれる四面体の連結行列を指定します。たとえば、最初の行は 1 番目、3 番目、4 番目、および 7 番目の点から構成される頂点をもつ四面体を記述しています。

T = [1 3 4 7;
     4 6 7 8;
     1 5 6 7;
     1 2 4 6;
     1 4 6 7]
T = 5×4

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

tetramesh を使用して、立方体を形成する 5 個の四面体をプロットします。

tetramesh(T,X);
view(-40,20)

Figure contains an axes object. The axes object contains 5 objects of type patch.

立方体を調べるために、面の透明度を高めて再度プロットします。

tetramesh(T,X,'FaceAlpha',0.1);
view(-40,20)

Figure contains an axes object. The axes object contains 5 objects of type patch.

20 個の乱数点の 3 次元 delaunayTriangulation オブジェクトを作成します。

rng('default');
x = rand([20 1]);
y = rand([20 1]);
z = rand([20 1]);
DT = delaunayTriangulation(x,y,z)
DT = 
  delaunayTriangulation with properties:

              Points: [20x3 double]
    ConnectivityList: [53x4 double]
         Constraints: []

四面体メッシュをプロットします。

tetramesh(DT)

Figure contains an axes object. The axes object contains 53 objects of type patch.

四面体の色を変更します。新しい色を使い、面の透明度を高めて再度プロットします。

tetramesh(DT,106:-2:1,'FaceAlpha',0.1)

Figure contains an axes object. The axes object contains 53 objects of type patch.

入力引数

すべて折りたたむ

四面体の連結性。4 列の行列として指定します。T の各行には、四面体の 4 個の頂点を指定する X へのインデックスが含まれています。

点の座標。3 列の行列として指定します。

3 次元三角形分割オブジェクト。triangulation オブジェクトまたは delaunayTriangulation オブジェクトとして指定します。

面の色。四面体の数と同じサイズのカラーマップ インデックスのベクトルとして指定します。四面体のカラーはベクトル c で定義でき、現在のカラーマップのインデックスとして使います。

カラー スキームをカスタマイズするには、関数 colormap を使用します。表面のカラーリングをさらに制御するには、名前と値の引数 'EdgeColor''FaceColor' を使用します。

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: tetramesh(TO,'LineStyle',':')

ここでは、プロパティの一部だけを紹介しています。完全な一覧については、Patch のプロパティを参照してください。

面の色。'FaceColor' と、色名、RGB 3 成分または 'none' で構成されるコンマ区切りのペアとして指定します。

RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。次の表に、色の完全名および省略名のオプションと、等価の RGB 3 成分の値を示します。

完全名省略名RGB 3 成分
'yellow''y'[1 1 0]
'magenta''m'[1 0 1]
'cyan''c'[0 1 1]
'red''r'[1 0 0]
'green''g'[0 1 0]
'blue''b'[0 0 1]
'white''w'[1 1 1]
'black''k'[0 0 0]

面の透明度。'FaceAlpha' と範囲 [0,1] のスカラーで構成されるコンマ区切りのペアとして指定します。値 1 は不透明、値 0 は完全な透明を表します。0 と 1 の間の値は半透明です。

エッジの色。'EdgeColor' と、色名、RGB 3 成分または 'none' で構成されるコンマ区切りのペアとして指定します。既定の色は [0 0 0] で、これは黒色の境界に対応します。

RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。次の表に、色の完全名および省略名のオプションと、等価の RGB 3 成分の値を示します。

完全名省略名RGB 3 成分
'yellow''y'[1 1 0]
'magenta''m'[1 0 1]
'cyan''c'[0 1 1]
'red''r'[1 0 0]
'green''g'[0 1 0]
'blue''b'[0 0 1]
'white''w'[1 1 1]
'black''k'[0 0 0]

ライン幅。'LineWidth' と、ポイント単位の正の数値で構成されるコンマ区切りのペアとして指定します。

ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。

ライン スタイル説明結果として得られる線
"-"実線

Sample of solid line

"--"破線

Sample of dashed line

":"点線

Sample of dotted line

"-."一点鎖線

Sample of dash-dotted line, with alternating dashes and dots

"none"ラインなしラインなし

バージョン履歴

R2006a より前に導入