可視化手法    

ストリームチューブの発散の表示

ストリームチューブは、ストリームラインと似ていますが、情報を表わすために利用可能なもう一つの次元を与える幅をもっています。

デフォルトでは、MATLABはチューブの幅によってベクトル場の発散を表わします。各々のチューブの頂点について幅を定義することが可能で、それにより他のデータを幅に写像することができます。

例題では、つぎのテクニックを利用しています。

入力には物体の座標、ベクトル場の要素、ストリームチューブの開始位置が含まれます。

1. データのロードと必要な値の計算

最初のステップは、データをロードし、プロットの作成に必要な値を計算することです。これらの値には、以下が含まれます。

2. スライス平面の描画

スライス平面を描画し(slice)、surface プロパティを設定して滑らかに色付けされたスライスを作成します。hsv colormap から16色を使います。

3. スライス平面にコンターラインを付加

スライス平面にコンターラインを付加します(contourslice)。コンターの間隔を調整して、つぎのようにラインがスライス平面内のカラーの境界と一致するようにします。

4. ストリームチューブの作成

meshgrid を使って、ストリームチューブに対する開始位置の配列を作成します。これは、x の最小値から始まり、y は20から50の範囲で、z 方向の1つの平面にあります(スライス平面のうちの1つに対応)。

ストリームチューブ(streamtube)は、指定した位置に描画され、デフォルトの幅の1.25倍にスケーリングされ、発散(幅)の変動を強調します。ベクトル[1.25 30] の2番目の要素は、チューブの周囲に沿ったポイント数を指定します(デフォルトは20です)。滑らかな外観のチューブを維持するために、チューブのサイズが大きくなるに連れて、この値を増加させる必要があります。

データの縦横比(daspect) を streamtube を呼び出す前に設定します。

ストリームチューブは、surfaceオブジェクトなので、(surface プロパティの)設定によりその外観を制御することができます。つぎの例は、surfaceのプロパティを設定して明るい光源と赤色のsurfaceを与えます。

5. ビューの定義

最後のステップは、ビューを定義し、光源を付加することです(view, axis volumebounds, Projection, camlight)。


  ストリームリボンを使ったCurlの表示 ストリーム粒子のアニメーションの作成