X3D (.x3d)

予備知識

    • MIMEタイプ:model/x3d+xml
    • Web3D幾何形式.
    • 一般にWeb上で,あるいはメディアアプリケーションで3Dモデルの分配に使われる.
    • XML形式.
    • 複数の形状を保管することができる.
    • 2003に導入され,Web3D Consortiumによって保守されている.
    • VRML形式の後継である.

ImportとExport

  • Import["file.x3d"]はX3Dファイルを,曲面を表すMeshRegionオブジェクトとしてインポートする.
  • Import["file.x3d",elem]はX3Dファイルから指定の要素をインポートする.
  • インポート形式Import["file","X3D"]またはImport["file",{"X3D",elem,}]で指定できる.
  • Export["file.x3d",expr]はメッシュベースの3D幾何領域をバイナリのX3Dファイルにエキスポートする.expr にはConstantRegionQ,または GraphicsオブジェクトかGraphics3Dオブジェクトである任意の領域が可能である.
  • エキスポート形式はExport["file",expr,"X3D"]またはExport["file",expr,{"X3D",opt1->val1,}]で明示的に指定できる.
  • 一般的な情報は,以下の関数ページを参照のこと.
  • Import, Exportファイルからインポートする,あるいはファイルへエキスポートする
    CloudImport, CloudExportクラウドオブジェクトからインポートする,あるいはクラウドオブジェクトへエキスポートする
    ImportString, ExportString文字列からインポートする,あるいは文字列へエキスポートする
    ImportByteArray, ExportByteArrayバイト配列からインポートする,あるいはバイト配列へエキスポートする

Import要素

  • 一般的なImport要素:
  • "Elements" ファイル中の有効な要素とオプションのリスト
    "Rules"使用可能なすべての要素の規則のリスト
    "Summary"ファイルの概要
  • データ形式表現要素:
  • "LineData""VertexData"要素として与えられた頂点を参照する,指標のリストとして表された線
    "PointData"指標付き形式での点のデータ
    "PolygonData"指標付き形式での多角形要素のリス
    "VertexData"頂点座標のリスト
    "VertexNormals""VertexData"で与えられる,頂点に対応する法線ベクトル
  • 形状表現要素:
  • "BoundaryMeshRegion"立体の境界メッシュ表現
    "MeshRegion"面のメッシュ表現
    "Region"面の領域表現
  • グラフィックス表現要素:
  • "Graphics3D"Graphics3Dオブジェクトとして表現されたX3Dファイル
    "GraphicsComplex"GraphicsComplexオブジェクトとして表されたX3Dファイル
    "LineObjects"絶対座標で与えられたLine プリミティブのリスト
    "PointObjects"絶対座標で与えられたPointプリミティブのリスト
    "PolygonObjects"絶対座標で与えられた多角形プリミティブのリスト
  • ImportExportはデフォルトでX3Dファイルに"MeshRegion"要素を使用する.

オプション

  • 高度なオプション:
  • "InvertNormals"False頂点の法線の向きを逆にするかどうか
    "VerticalAxis"{0,0,1}ファイルで使用する座標系について想定する向き
  • デフォルトではWolfram言語はX3D形式で使用される座標系では縦軸は第3座標に対応すると想定する.
  • "VerticalAxis"->{0,1,0}と設定すると,Wolfram言語はX3Dにエキスポートするときに全グラフィックス座標に{x,y,z}->{x,z,-y}という変換を適用する.

例題

すべて開くすべて閉じる

  (3)

X3Dから3DモデルをMeshRegionオブジェクトとしてインポートする:

立体モデルの特性の"Summary"

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

ファイルの生の内容をテキスト形式で出力する:

3Dモデルをエキスポートする:

スコープ  (8)

Import  (4)

ImportはX3Dファイルに対して使用できる:

アクセス可能な任意のURL:

ストリーム:

ImportはX3Dファイルの要素へのアクセスを提供する:

Export  (4)

Exportは3Dグラフィックスに対して動作する:

特殊領域:

方程式領域:

メッシュ領域:

Import要素  (13)

"BoundaryMeshRegion"  (1)

BoundaryMeshRegionを与える:

"Graphics3D"  (1)

Graphics3Dオブジェクトを与える:

"GraphicsComplex"  (1)

GraphicsComplexオブジェクトを与える:

"MeshRegion"  (1)

MeshRegionを与える:

"LineData"  (1)

"LineData"オブジェクトを与える:

"LineObjects"  (1)

"LineObjects"オブジェクトを与える:

"PointData"  (1)

"PointData"オブジェクトを与える:

"PointObjects"  (1)

"PointObjects"オブジェクトを与える:

"PolygonData"  (1)

指標付き形式の多角形要素を与える:

"PolygonObjects"  (1)

絶対座標で与えられたPolygonプリミティブのリストを与える:

"Region"  (1)

Regionを与える:

"Summary"  (1)

特性の"Summary"を与える:

ファイルサイズ:

"VertexData"  (1)

頂点座標を与える:

Exportオプション  (2)

"InvertNormals"  (1)

法線を逆にする:

"VerticalAxis"  (1)

縦軸を設定する: