VTK (.vtk)

予備知識

    • Visualization Toolkit形式.
    • 3Dモデルの保管に使われる.
    • オープンソースのVisualization Toolkitソフトウェアのネイティブ形式.
    • ASCIIまたはバイナリ形式.
    • VTKはVisualization Toolkitに由来する頭字語である.
    • 線,点,多角形プリミティブとその特性をまとめた単体の3Dオブジェクトを保管する.
    • 非線形グラフィックスプリミティブも保管できる.
    • ユーザ定義の形式要素も使える.
    • 最初はKitwareによって開発された.

ImportとExport

  • Import["file.vtk"]はVTKファイルから多角形情報をインポートし,それをGraphics3Dオブジェクトとして返す.
  • Export["file.vtk",expr]Graphics3D式またはGraphicsComplex式をVTKファイルにエキスポートする.
  • Import["file.vtk"]Graphics3D[ GraphicsComplex[]]という形の式を返す.
  • Import["file.vtk",elem]はVTKファイルから指定された要素をインポートする.
  • Import["file.vtk",{elem,sub,}]はサブ要素をインポートする.
  • Import["file.vtk",{{elem1,elem2,}}]は複数の要素をインポートする.
  • インポート形式はImport["file","VTK"]またはImport["file",{"VTK",elem,}]で指定できる.
  • Export["file.vtk",expr,elem]expr が要素 elem を指定してるとしてVTKファイルを作成する.
  • Export["file.vtk",{expr1,expr2,},{{elem1,elem2,}}]は各 expri が対応する elemi を指定しているとして扱う.
  • Export["file.vtk",expr,opt1->val1,]は指定の値を持つ指定のオプション要素で expr をエキスポートする.
  • Export["file.vtk",{elem1->expr1,elem2->expr2,},"Rules"]は規則を使ってエキスポートする要素を指定する.
  • 一般的な情報は,以下の関数ページを参照のこと.
  • Import, Exportファイルからインポートする,あるいはファイルへエキスポートする
    CloudImport, CloudExportクラウドオブジェクトからインポートする,あるいはクラウドオブジェクトへエキスポートする
    ImportString, ExportString文字列からインポートする,あるいは文字列へエキスポートする
    ImportByteArray, ExportByteArrayバイト配列からインポートする,あるいはバイト配列へエキスポートする

Import要素

  • 一般的なImport要素:
  • "Elements" ファイル中の有効な要素とオプションのリスト
    "Summary"ファイルの概要
    "Rules"使用可能なすべての要素の規則のリスト
  • データ表現要素:
  • "CuboidData"指標付き形式の立方データ
    "CuboidObjects"絶対座標で与えられるCuboidプリミティブのリスト
    "Graphics3D"Graphics3Dオブジェクトとして表されたVTKファイル
    "GraphicsComplex"GraphicsComplexオブジェクトとしてのVTKファイル
    "LineData"指標付き形式によるVTKファイルの線要素で,整数指標は"VertexData"で与えられる頂点を参照する
    "LineObjects"絶対座標で与えられるLineプリミティブのリスト
    "PolygonData"指標付き形式による多角形要素
    "PolygonObjects"絶対座標で与えられるPolygonプリミティブのリスト
    "VertexData"頂点座標のリスト
    "PointData"指標付き形式による点データ
    "PointObjects"絶対座標で与えられるPointプリミティブのリスト
  • ImportExportはVTKファイルにデフォルトで"Graphics3D"要素を使う.
  • "VertexData"要素はGraphicsComplexの第1引数に対応する.

オプション

  • 一般的なImportオプション:
  • BackgroundAutomatic使用する背景色
    ImageSizeAutomatic表示する画像の全体の大きさ
    LightingAutomatic3D面の色付けに使用する模擬照明
  • VTKからインポートする際は,Graphics3Dの全オプションを与えることができる.
  • Exportオプション:
  • "BinaryFormat"FalseバイナリVTKファイルを作成するかどうか
  • 高度なオプション:
  • "VerticalAxis"{0,0,1}ファイルで使用される座標系に想定される方向
  • デフォルトでは,Wolfram言語はVTK形式に使用する座標系では縦軸は第3座標に対応すると想定する.
  • "VerticalAxis"->{0,1,0}という設定では,Wolfram言語はVTKからインポートする際に全グラフィックス座標に{x,y,z}->{x,-z,y}という変換を適用し,VTKへエキスポートする際は逆変換を適用する.

例題

すべて開くすべて閉じる

  (3)

VTKファイルをインポートする:

3DモデルをASCIIのVTKファイルにエキスポートする:

利用できる要素のリストを取得する:

スコープ  (2)

指向性の赤い照明:

モデルの点ベース表現を生成する: