JVX (.jvx)

予備知識

    • JavaView 3D幾何形式.
    • JavaView可視化ソフトウェアのネイティブ形式.
    • または2Dまたは3D形状の可視化に使用される.
    • Webページに埋め込み,JavaViewアプレットで見ることができる.
    • XML形式.
    • 複数の形状を保持することができる.
    • 2Dや3Dオブジェクトを多面体,線,点の集合として表現する.

ImportとExport

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

Import要素

  • 一般的なImport要素:
  • "Elements" ファイル中の有効な要素とオプションのリスト
    "Summary"ファイルの概要
    "Rules"使用可能なすべての要素の規則のリスト
  • データ表現要素:
  • "Graphics"Graphicsオブジェクトとして表されるJVXファイル中の2次元オブジェクト
    "Graphics3D"Graphics3Dとして表される3D形状
    "GraphicsComplex"それぞれがファイルに保管された形状を表すGraphicsComplexオブジェクトのリスト
    "LineData""VertexData"要素として与えられた頂点を参照する,指標のリストとして表された線
    "LineObjects"絶対座標で与えられたLineプリミティブのリスト
    "PointData"指標付き形式での点のデータ
    "PointObjects"絶対座標で与えられたPointプリミティブのリスト
    "PolygonData"指標付き形式での多角形のデータ
    "PolygonObjects"絶対座標で与えられたPolygonプリミティブのリスト
    "VertexColors"色プリミティブのリストで与えられる,各頂点に関連付けられた色
    "VertexData"頂点座標のリスト
    "VertexNormals""VertexData"で与えられる,頂点に対応する法線ベクトル
  • ImportExportはデフォルトで3D形状を含むJVXファイルには"Graphics3D"を使い,2D形状を含むファイルには"Graphics"を使う.
  • 色モデルを表すJVXファイルを描画するとき,Importは自動的に設定Lighting->"Neutral"を使う.
  • メタ情報を指定するImport要素:
  • "CreationDate"ファイルがエキスポートされた時間と日付
    "Creator"ファイルを生成したアプリケーション

オプション

  • Importの一般的なオプション:
  • BackgroundAutomatic使用する背景色
    ImageSizeAutomatic表示するグラフィックスの全体の大きさ
    LightingAutomatic3D面の色付けに使用する模擬光
  • JVXからのインポートの際は,Graphics3Dの全オプションを与えることができる.
  • ImportExportに使用できるメタ情報要素:
  • "Version"""文字列で与えられる,ファイル内容のバージョン情報(オプション)
    "Keywords"{}保管されたオブジェクトに関連付けられたキーワード
    "ShortSummary"""ファイルの内容についての簡単な記述
    "Summary"""ファイルの内容についての記述
    "Title""Mathematica Graphics"ドキュメントのタイトル
  • Importオプション:
  • "ReadDTD"FalseDTDフォーマット指定に対して妥当性を検証するかどうか
  • 高度なオプション:
  • "InvertNormals"False頂点の法線の向きを逆にするかどうか
    "VerticalAxis"{0,0,1}ファイルで使用する座標系について想定する向き
  • デフォルトではWolfram言語はJVX形式で使用される座標系では縦軸は第3座標に対応すると想定する.
  • "VerticalAxis"->{0,1,0}と設定すると,Wolfram言語はJVXからインポートするときは全グラフィックス座標に{x,y,z}->{x,-z,y}という変換を適用し,JVXにエキスポートするときは逆変換を適用する.

例題

  (3)

JVXサンプルファイルをインポートし,3Dグラフィックスとして描画する:

2Dベクトルグラフィックスを表すJVXファイルをインポートする:

SphericalPlot3Dを使って3Dモデルを作成し,JVXにエキスポートする: