3Dシーンに表示されるオブジェクトは、物理オブジェクトのグラフィック表示です。3Dオブジェクトは、3D空間に存在する一連の頂点で、頂点がつながっている場合と、つながっていない場合があります。立方体を作成および球を作成など、ジオメトリVIは、単純なジオメトリオブジェクトの表示を定義します。より複雑なジオメトリのオブジェクトを作成する場合、または3Dオブジェクトの外観を定義する頂点法線指標テクスチャマッピングの特定の値を定義する場合、メッシュを構成できます。

メモ メッシュの使用は、上級の3Dグラフィックの設計技術です。この機能の使用には、以前に3Dグラフィックを設計した経験が役立ちます。

メッシュは属性の集合で、特定の方法で組み合わされると、3D曲面を作成します。メッシュの属性には、頂点、法線、色、テクスチャ座標、および頂点を詳細に描いたり結び付けるポイント、線、三角、多角形が含まれます。メッシュを定義する場合、メッシュの頂点、法線、色、テクスチャ座標を表す値の配列を定義します。また、各配列から値を適用するメッシュの位置を決定する指標の配列を定義します。最後に、各配列の値について、バインディングモードを定義します。メッシュを理解するには、以下の用語を確認する必要があります。

  • 頂点―メッシュの端点を作成する3D空間におけるポイント。x、y、z座標は各頂点を定義します。
  • プリミティブ―メッシュの独立して表示されているフェース。たとえば、メッシュが3つの異なる三角形で構成されている場合、各三角形はメッシュのプリミティブです。ポイント、線、三角形、四角形、その他多角形はすべてプリミティブになる可能性があります。
  • 法線―メッシュの曲面に対して垂直方向にポイントするベクトル。メッシュで各頂点または各多角形の法線を定義できます。メッシュの法線は、光源に相対するメッシュの曲面の方向を定義します。

LabVIEWでは、「メッシュを作成」VIで新規メッシュのリファレンスを作成できます。次に、シーンメッシュプロパティおよびメソッドを使用して、メッシュをプログラム的に構成できます。以下のセクションはメッシュの属性に関する追加情報です。

描画モード

メッシュに選択する描画モードは、メッシュの頂点を描画または接続する方法を指定します。以下の描画モードから選択できます。

ポイント

各頂点越しにポイントを描画します。このモードは別の頂点を接続しませんが、ポイントは3D空間に表示されます。

ライン

頂点のペアの間で、非連続的なラインセグメントを描画します。たとえば、LabVIEWではメッシュを4つの頂点と2つのライン (V0V1およびV2V3) で描画します。頂点の合計数が奇数の場合、LabVIEWは最後の頂点を無視します。

ラインストリップ

頂点間で、開始がV0で終了がVn – 1の連続的なラインセグメントを描画します。ここで、nは頂点の合計数です。このモードはすべての頂点を接続しますが、閉じた多角形は作成されません。

ラインループ

頂点間で、開始と終了がV0の連続的なラインを描画します。このモードは閉じた多角形を作成しますが、ラインセグメントで囲まれた空間は埋められません。

三角形

3つのグループで頂点を接続する一連の非連続的な三角形を描画し、各三角形に囲まれた空間を埋めます。たとえば、LabVIEWではメッシュを6つの頂点と2つの三角形 (V0V1V2およびV3V4V5) で描画します。このモードはそれぞれの三角形を接続しません。頂点の合計数が3の整数倍でない場合、最後の1番目または2番目の頂点は無視されます。

三角形ストリップ

連続して、空間が埋められた一連の三角形を描画します。頂点が接続されるため、三角形の方向は、オブジェクト曲面の一部を作成し、立体の一片を形成します。たとえば、最初の三角形は頂点V0V1V2を接続し、2番目の三角形は頂点V2V1V3を接続し、3番目の三角形は頂点V2V3V4というようになります。

三角形扇型

連続して、空間が埋められた一連の三角形を描画します。各三角形の最初の頂点は同じで、その後に続く各三角形に1つずつ、2番目と3番目の頂点が増分されます。これにより、0の中心点を軸とする扇型を作成する三角形ができます。たとえば、最初の三角形はV0V1V2を接続し、2番目の三角形はV0V2V3を接続するというようになります。

四角形

4つのグループで頂点を接続する一連の非連続的な四辺の多角形を描画し、各四角形に囲まれた空間を埋めます。たとえば、LabVIEWではメッシュを8つの頂点と2つの四角形 (V0V1V2V3およびV4V5V6V7) で描画します。頂点の合計数が4の整数倍でない場合、最後の1番目、2番目、または3番目の頂点は無視されます。

四角形ストリップ

一連の連続的な四辺の多角形を描画し、各四角形に囲まれた空間を埋めます。たとえば、LabVIEWではメッシュを8つの頂点と3つの四角形 (V0V1V3V2、V2V3V5V4、およびV4V5V7V6) で描画します。頂点の合計数が奇数の場合、最後の頂点は無視されます。

多角形

開始がV0で終了がVn – 1のすべての頂点を接続する空間が埋められた単体の多角形を描画します。ここで、nは頂点の合計数です。頂点の合計数は少なくとも3つである必要があります。これを満たしていない場合は何も描画されません。また、多角形は交差できません。

頂点配列

メッシュの頂点配列は、メッシュで頂点の各位置を定義します。配列内の各要素は、メッシュで1つの頂点を表します。指標配列で指定した値に従って、配列の指標付けが行われます。頂点配列はクラスタの配列です。ここで、各クラスタには、3D空間にある1つの頂点の位置を定義するx、y、z値が含まれます。

指標

指標は、LabVIEWでメッシュを作成するさまざまな配列を指標付けする方法を定義する整数の配列です。たとえば、指標配列の位置3での要素が0の場合、カラー配列、頂点配列法線配列テクスチャ座標配列の位置3での要素は、0に対してすべて指標付けされます。指標配列を使用し、それらの配列内の要素の順序を個々に変更せずに、4つの異なる配列要素の指標を変更することにより、メッシュの外観を変更します。

カラーバインディングモード

メッシュに選択するカラーバインディングモードは、メッシュに対するカラー配列の要素をバインドする方法を決定します。以下のカラーバインディングモードから選択できます。

  • 全体 (Overall)―カラー配列の最初の指標の色をメッシュのすべてのプリミティブにバインドします。
  • Per Primitive―異なる色はメッシュ内の各プリミティブにバインドします。メッシュの描画モードはプリミティブを定義します。たとえば、このメソッドはカラー配列の最初の指標でメッシュで定義された最初のプリミティブに色をバインドするというようになります。
  • 頂点毎―定義する指標に従ってメッシュの頂点にカラー配列の色をバインドします。単一または複数の塗りつぶし多角形をレンダリングする描画モードを選択すると、2つの頂点間の移動に伴って、1つの頂点の色は次の頂点の色とブレンドされます。
  • Binding Off―メッシュに色をバインドしません。LabVIEWではカラー配列を無視します。

カラー配列

メッシュのカラー配列は、指標配列の各指標で適用するRGBAカラー値を定義します。指定するカラーバインディングモードは、この配列における色が適用される方法を決定します。カラー配列はクラスタの配列です。ここで、各クラスタには1つの色を定義する赤、緑、青、アルファ値が含まれます。

法線バインディングモード

選択する法線バインディングモードは、メッシュに対する法線配列の要素をバインドする方法を決定します。法線バインディングモードは、光がメッシュの曲面にどのように反射するかを決定します。以下の法線バインディングモードから選択できます。

  • 全体―法線配列の最初の指標でメッシュのすべてのプリミティブに法線をバインドします。
  • プリミティブ毎―異なる法線は、メッシュ内でプリミティブにバインドします。メッシュの描画モードはプリミティブを定義します。たとえば、このメソッドは、法線配列の最初の指標でメッシュで定義された最初のプリミティブに法線をバインドするというようになります。
  • 頂点毎―定義する指標に従ってメッシュの頂点に法線配列の法線をバインドします。メッシュ内の各頂点に対して法線を定義する必要があります。
  • バインドオフ―法線バインディングをオフにします。LabVIEWは法線配列を無視します。

法線配列

メッシュの法線配列は、メッシュの各法線の基点を定義します。配列内の各要素は、メッシュで1つの法線を表します。指定する法線バインディングモードは、この配列における法線が適用される方法を決定します。法線配列はクラスタの配列です。ここで、各クラスタには、1つの法線の基点を定義するx、y、z値が含まれます。

テクスチャ座標配列

メッシュのテクスチャ座標配列は、テクスチャでメッシュの曲面にマップする方法を定義します。配列内の各要素は単一のテクスチャ座標を表します。メッシュの各頂点のテクスチャ座標を定義する必要があります。テクスチャ座標配列はクラスタの配列です。ここで、各クラスタには、テクスチャの1つの座標を定義するsおよびtの値が含まれます。テクスチャ処理を有効にしない場合、この配列は無視されます。シーンオブジェクトプロパティ特殊:テクスチャ処理で、3Dシーンのオブジェクトにテクスチャ処理を有効にします。

メッシュの属性の変更がどのようにメッシュの外観に影響するかを示すサンプルについては、labview\examples\Graphics and Sound\3D Picture ControlディレクトリのUsing Meshes VIを参照してください。