Graph3D ライブラリ


概要 - Abstract

tool.Graph3D ライブラリ APIライブラリ(以下、Graph3D ライブラリライブラリ)は、3次元グラフソフトウェアを制御するためのライブラリです。

Graph3D ライブラリは拡張ライブラリであり、VCSSLの言語仕様における標準ライブラリには含まれていません。従って、全てのVCSSL処理系において、必ずしもGraph3D ライブラリの実装がサポートされるわけではありません。

Graph3D ライブラリの仕様は、広く一般的な3次元グラフソフトウェアをVCSSLから制御する事を想定して定義されており、特定の3次元グラフソフトウェアを前提としたものではありません。 Graph3D ライブラリの実装において、制御対象にどのような3次元グラフソフトウェアが採用されるかは処理系依存であり、処理系の開発元(ベンダー)、バージョン、またはグラフソフトウェアとの通信機能を提供するプラグインなどに依存します。このような事情があるため、Graph3D ライブラリが提供する各種関数も、異なる処理系に関しては、厳密に同一の挙動を期待すべきではありません。

また、同一の処理系であっても、Graph3D ライブラリは標準ライブラリでは無いため、その実装において、恒久的に同様の挙動が保証されるものではありません。Graph3D ライブラリの実装は、あくまで処理系が独自にサポートする拡張機能であるという点に留意しておく必要があります。例えば、グラフソフトウェアの大幅なアップデートが行われると、 それに伴い、Graph3D ライブラリの挙動も微妙に変化してしまうケースなどが考えられます。

RINEARN VCSSLランタイム、及びそれを搭載するVCSSL対応ソフトウェア(リニアンプロセッサーなど)では、Graph3D ライブラリをサポートしており、その実装には科学技術分野用グラフソフトウェア「 リニアングラフ3D 」を採用しています。リニアングラフ3D本体( RinearnGraph3D ライブラリ.jar )はVCSSLランタイムの配布パッケージ内に同梱されているため、別途何かを用意する必要はありません。


目次 - Index

int newGraph3D()
3次元グラフをデフォルトのサイズで生成し、それに固有の識別番号 ( グラフID ) を割り振って返します。
int newGraph3D( int x, int y, int width, int height, string title )
3次元グラフを指定されたサイズで生成し、それに固有の識別番号 ( グラフID ) を割り振って返します。
int getGraph3D()
処理系で起動・確保されている特別なグラフがあれば、そのグラフIDを取得します。無ければ新規生成します。
void deleteGraph3D( int graphID )
グラフを破棄します。
void clearGraph3D( int graphID )
グラフの内容をクリアします。
int getGraph3DGraphics( int graphID )
グラフの保持している描画内容を、Graphicsライブラリ互換のグラフィックスデータに変換します。変換されたグラフィックスデータは、2D/3Dレンダラ―などで加工できます。
void setGraph3DLocation( int graphID, int x, int y )
グラフウィンドウの位置を設定します。
void setGraph3DSize( int graphID, int width, int height )
グラフウィンドウの大きさを設定します。
void hideGraph3D( int graphID )
グラフウィンドウを不可視化します。
void showGraph3D( int graphID )
グラフウィンドウを可視化します。
void setGraph3DFile( int graphID, string filePath )
ファイルを読み込み、グラフにプロットします。
void setGraph3DFile( int graphID, string file[ ] )
複数のファイルを読み込み、グラフにプロットします。
void setGraph3DData( int graphID, string data )
ファイルの内容と同じ書式で記載されたテキストを読み込み、グラフにプロットします。
void setGraph3DData( int graphID, float dataX[ ], float dataY[ ], float dataZ[ ] )
座標値を格納する float 型配列を読み込み、グラフにプロットします。
void setGraph3DData( int graphID, float dataX[ ][ ], float dataY[ ][ ], float dataZ[ ][ ] )
座標値を格納する float 型配列を読み込み、グラフにプロットします。
void setGraph3DData( int graphID, float dataX[ ][ ][ ], float dataY[ ][ ][ ], float dataZ[ ][ ][ ] )
座標値を格納する float 型配列を読み込み、グラフにプロットします。
void addGraph3DData( int graphID, float dataX[ ], float dataY[ ], float dataZ[ ] )
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
void addGraph3DData( int graphID, float dataX[ ][ ], float dataY[ ][ ], float dataZ[ ][ ] )
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
void addGraph3DData( int graphID, float dataX[ ][ ][ ], float dataY[ ][ ][ ], float dataZ[ ][ ][ ] )
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
void setGraph3DConfigurationFile( int graphID, string file )
設定ファイルを読み込み、グラフに自動で設定を行います。
void setGraph3DRange( int graphID, double xMin, double xMax, double yMin, double yMax, double zMin, double zMax )
プロット範囲を設定します。
void setGraph3DRangeX( int graphID, double xMin, double xMax )
X軸のプロット範囲を設定します。
void setGraph3DRangeY( int graphID, double yMin, double yMax )
Y軸のプロット範囲を設定します。
void setGraph3DRangeZ( int graphID, double zMin, double zMax )
Z軸のプロット範囲を設定します。
void setGraph3DAutoRange( int graphID, bool autoX, bool autoY, bool autoZ )
プロット範囲の自動調整機能を有効化または無効化します。
void setGraph3DOption( int graphID, string option, bool value )
グラフのオプション項目を設定します。項目名は処理系に依存します。代表的なオプション項目名は以下の通りです: WITH_POINTS : 点プロット , WITH_LINES : 線プロット , WITH_MESHES : メッシュプロット , WITH_MEMBRANES : 曲面プロット , FLAT : 平面化 , FRAME : 枠線描画 , SCALE : 目盛り描画 , GRID_LINE : グリッドライン描画 , GRADATION : Z値によるグラデーション彩色 , ALPHA : 半透明描画 , LOG_X : X対数軸表示 , LOG_Y : Y対数軸表示 , LOG_Z : Z対数軸表示 , REVERSE_X : X軸反転表示 , REVERSE_Y : Y軸反転表示 , REVERSE_Z : Z軸反転表示 ,
void setGraph3DMenu( int graphID, string option, string value )
グラフのメニュー項目を設定します。項目名は処理系に依存します。代表的なオプション項目名は以下の通りです: SET_LABEL_X : X軸ラベル , SET_LABEL_Y : Y軸ラベル , SET_LABEL_Z : Z軸ラベル ,
void setGraph3DAnimation( int graphID, string option, bool state )
グラフのアニメーションを有効化または無効化します。利用可能なアニメーションモードは処理系に依存します。代表的なアニメーションモードは以下の通りです: TRACE : 点をアニメーションし、軌跡を残す , INDEX : 点をアニメーションする , INDEX-SERIES : 系列をアニメーションする , INDEX-X : メッシュデータのX方向ラインをアニメーションする , INDEX-Y : メッシュデータのY方向ラインをアニメーションする , RANGE-X : プロット範囲をX方向にスライドさせる , RANGE-Y : プロット範囲をY方向にスライドさせる , RANGE-Z : プロット範囲をZ方向にスライドさせる ,
void exportGraph3D( int graphID, string filename, string format )
グラフを画像に出力します。
void exportGraph3D( int graphID, string filename, string format, float quality )
グラフを画像に出力します。

構造体 - Structs

- なし - None -


変数 - Variables

- なし - None -


関数 - Functions

定義
- Signature
int newGraph3D()
詳細
- Details
3次元グラフをデフォルトのサイズで生成し、それに固有の識別番号 ( グラフID ) を割り振って返します。
戻り値
- Return
生成したグラフのID
定義
- Signature
int newGraph3D( int x, int y, int width, int height, string title )
詳細
- Details
3次元グラフを指定されたサイズで生成し、それに固有の識別番号 ( グラフID ) を割り振って返します。
引数
- Arguments
x : グラフウィンドウ左上頂点のX座標
y : グラフウィンドウ左上頂点のY座標
width : グラフウィンドウの幅
height : グラフウィンドウの高さ
title : グラフウィンドウタイトル
戻り値
- Return
生成したグラフのID
定義
- Signature
int getGraph3D()
詳細
- Details
処理系で起動・確保されている特別なグラフがあれば、そのグラフIDを取得します。無ければ新規生成します。
戻り値
- Return
取得または生成したグラフID
定義
- Signature
void deleteGraph3D( int graphID )
詳細
- Details
グラフを破棄します。
引数
- Arguments
graphID : 対象グラフのID
定義
- Signature
void clearGraph3D( int graphID )
詳細
- Details
グラフの内容をクリアします。
引数
- Arguments
graphID : 対象グラフのID
定義
- Signature
int getGraph3DGraphics( int graphID )
詳細
- Details
グラフの保持している描画内容を、Graphicsライブラリ互換のグラフィックスデータに変換します。変換されたグラフィックスデータは、2D/3Dレンダラ―などで加工できます。
引数
- Arguments
graphID : 対象グラフのID
戻り値
- Return
グラフィックスデータID
定義
- Signature
void setGraph3DLocation( int graphID, int x, int y )
詳細
- Details
グラフウィンドウの位置を設定します。
引数
- Arguments
graphID : 対象グラフのID
x : グラフウィンドウ左上頂点のX座標
y : グラフウィンドウ左上頂点のY座標
定義
- Signature
void setGraph3DSize( int graphID, int width, int height )
詳細
- Details
グラフウィンドウの大きさを設定します。
引数
- Arguments
graphID : 対象グラフのID
width : グラフウィンドウの幅
height : グラフウィンドウ高さ
定義
- Signature
void hideGraph3D( int graphID )
詳細
- Details
グラフウィンドウを不可視化します。
引数
- Arguments
graphID : 対象グラフのID
定義
- Signature
void showGraph3D( int graphID )
詳細
- Details
グラフウィンドウを可視化します。
引数
- Arguments
graphID : 対象グラフのID
定義
- Signature
void setGraph3DFile( int graphID, string filePath )
詳細
- Details
ファイルを読み込み、グラフにプロットします。
引数
- Arguments
graphID : 対象グラフのID
filePath : プロットするファイルのファイル名またはパス
定義
- Signature
void setGraph3DFile( int graphID, string file[ ] )
詳細
- Details
複数のファイルを読み込み、グラフにプロットします。
引数
- Arguments
graphID : 対象グラフのID
file : プロットするファイルのファイル名またはパス
定義
- Signature
void setGraph3DData( int graphID, string data )
詳細
- Details
ファイルの内容と同じ書式で記載されたテキストを読み込み、グラフにプロットします。
引数
- Arguments
graphID : 対象グラフのID
data : ファイルの内容と同じ書式で記載されたテキスト
定義
- Signature
void setGraph3DData( int graphID, float dataX[ ], float dataY[ ], float dataZ[ ] )
詳細
- Details
座標値を格納する float 型配列を読み込み、グラフにプロットします。
引数
- Arguments
graphID : 対象グラフのID
dataX : X座標を格納する配列( [ 点インデックス ] )
dataY : Y座標を格納する配列( [ 点インデックス ] )
dataZ : Z座標を格納する配列( [ 点インデックス ] )
定義
- Signature
void setGraph3DData( int graphID, float dataX[ ][ ], float dataY[ ][ ], float dataZ[ ][ ] )
詳細
- Details
座標値を格納する float 型配列を読み込み、グラフにプロットします。
引数
- Arguments
graphID : 対象グラフのID
dataX : X座標を格納する配列( [ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataY : Y座標を格納する配列( [ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataZ : Z座標を格納する配列( [ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
定義
- Signature
void setGraph3DData( int graphID, float dataX[ ][ ][ ], float dataY[ ][ ][ ], float dataZ[ ][ ][ ] )
詳細
- Details
座標値を格納する float 型配列を読み込み、グラフにプロットします。
引数
- Arguments
graphID : 対象グラフのID
dataX : X座標を格納する配列( [ 系列インデックス ][ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataY : Y座標を格納する配列( [ 系列インデックス ][ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataZ : Z座標を格納する配列( [ 系列インデックス ][ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
定義
- Signature
void addGraph3DData( int graphID, float dataX[ ], float dataY[ ], float dataZ[ ] )
詳細
- Details
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
引数
- Arguments
graphID : 対象グラフのID
dataX : X座標を格納する配列( [ 点インデックス ] )
dataY : Y座標を格納する配列( [ 点インデックス ] )
dataZ : Z座標を格納する配列( [ 点インデックス ] )
定義
- Signature
void addGraph3DData( int graphID, float dataX[ ][ ], float dataY[ ][ ], float dataZ[ ][ ] )
詳細
- Details
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
引数
- Arguments
graphID : 対象グラフのID
dataX : X座標を格納する配列( [ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataY : Y座標を格納する配列( [ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataZ : Z座標を格納する配列( [ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
定義
- Signature
void addGraph3DData( int graphID, float dataX[ ][ ][ ], float dataY[ ][ ][ ], float dataZ[ ][ ][ ] )
詳細
- Details
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
引数
- Arguments
graphID : 対象グラフのID
dataX : X座標を格納する配列( [ 系列インデックス ][ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataY : Y座標を格納する配列( [ 系列インデックス ][ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
dataZ : Z座標を格納する配列( [ 系列インデックス ][ メッシュ上のY方向インデックス ][ メッシュ上のX方向インデックス ] )
定義
- Signature
void setGraph3DConfigurationFile( int graphID, string file )
詳細
- Details
設定ファイルを読み込み、グラフに自動で設定を行います。
引数
- Arguments
graphID : 対象グラフのID
file : 設定ファイルのファイル名またはパス
定義
- Signature
void setGraph3DRange( int graphID, double xMin, double xMax, double yMin, double yMax, double zMin, double zMax )
詳細
- Details
プロット範囲を設定します。
引数
- Arguments
graphID : 対象グラフのID
xMin : X軸の最小値
xMax : X軸の最大値
yMin : Y軸の最小値
yMax : Y軸の最大値
zMin : Z軸の最小値
zMax : Z軸の最大値
定義
- Signature
void setGraph3DRangeX( int graphID, double xMin, double xMax )
詳細
- Details
X軸のプロット範囲を設定します。
引数
- Arguments
graphID : 対象グラフのID
xMin : X軸の最小値
xMax : X軸の最大値
定義
- Signature
void setGraph3DRangeY( int graphID, double yMin, double yMax )
詳細
- Details
Y軸のプロット範囲を設定します。
引数
- Arguments
graphID : 対象グラフのID
yMin : Y軸の最小値
yMax : Y軸の最大値
定義
- Signature
void setGraph3DRangeZ( int graphID, double zMin, double zMax )
詳細
- Details
Z軸のプロット範囲を設定します。
引数
- Arguments
graphID : 対象グラフのID
zMin : Z軸の最小値
zMax : Z軸の最大値
定義
- Signature
void setGraph3DAutoRange( int graphID, bool autoX, bool autoY, bool autoZ )
詳細
- Details
プロット範囲の自動調整機能を有効化または無効化します。
引数
- Arguments
graphID : 対象グラフのID
autoX : X軸方向の自動調性機能を有効にするならtrue、無効にするならfalse
autoY : Y軸方向の自動調性機能を有効にするならtrue、無効にするならfalse
autoZ : Z軸方向の自動調性機能を有効にするならtrue、無効にするならfalse
定義
- Signature
void setGraph3DOption( int graphID, string option, bool value )
詳細
- Details
グラフのオプション項目を設定します。項目名は処理系に依存します。代表的なオプション項目名は以下の通りです:
WITH_POINTS
点プロット
WITH_LINES
線プロット
WITH_MESHES
メッシュプロット
WITH_MEMBRANES
曲面プロット
FLAT
平面化
FRAME
枠線描画
SCALE
目盛り描画
GRID_LINE
グリッドライン描画
GRADATION
Z値によるグラデーション彩色
ALPHA
半透明描画
LOG_X
X対数軸表示
LOG_Y
Y対数軸表示
LOG_Z
Z対数軸表示
REVERSE_X
X軸反転表示
REVERSE_Y
Y軸反転表示
REVERSE_Z
Z軸反転表示
引数
- Arguments
graphID : 対象グラフのID
option : オプション項目名
value : オプションを有効にするならtrue、無効にするにはfalse
定義
- Signature
void setGraph3DMenu( int graphID, string option, string value )
詳細
- Details
グラフのメニュー項目を設定します。項目名は処理系に依存します。代表的なオプション項目名は以下の通りです:
SET_LABEL_X
X軸ラベル
SET_LABEL_Y
Y軸ラベル
SET_LABEL_Z
Z軸ラベル
引数
- Arguments
graphID : 対象グラフのID
option : メニュー項目名
value : メニュー項目を有効にするならtrue、無効にするにはfalse
定義
- Signature
void setGraph3DAnimation( int graphID, string option, bool state )
詳細
- Details
グラフのアニメーションを有効化または無効化します。利用可能なアニメーションモードは処理系に依存します。代表的なアニメーションモードは以下の通りです:
TRACE
点をアニメーションし、軌跡を残す
INDEX
点をアニメーションする
INDEX-SERIES
系列をアニメーションする
INDEX-X
メッシュデータのX方向ラインをアニメーションする
INDEX-Y
メッシュデータのY方向ラインをアニメーションする
RANGE-X
プロット範囲をX方向にスライドさせる
RANGE-Y
プロット範囲をY方向にスライドさせる
RANGE-Z
プロット範囲をZ方向にスライドさせる
引数
- Arguments
graphID : 対象グラフのID
mode : アニメーションモード
state : アニメーションを有効化するならtrue、無効化するならfalse
定義
- Signature
void exportGraph3D( int graphID, string filename, string format )
詳細
- Details
グラフを画像に出力します。
引数
- Arguments
graphID : 対象グラフのID
filename : 出力ファイル名またはパス
形式( : "PNG" または "JPEG" )
定義
- Signature
void exportGraph3D( int graphID, string filename, string format, float quality )
詳細
- Details
グラフを画像に出力します。
引数
- Arguments
graphID : 対象グラフのID
filename : 出力ファイル名またはパス
形式( : "PNG" または "JPEG" )
quality : 品質( 0.0 ~ 100.0 )


スポンサーリンク



スポンサーリンク

この階層の目次
お知らせ

各ソフトウェアの最新版を一括でリリース、OpenJDKのJava実行環境(JRE)に対応
2019年03月06日 - RINEARNでは3月6日に、主要なソフトウェアの最新版を一括でリリースしました。今回のアップデートには、以前お知らせした、OpenJDKで生成したJREへの対応が含まれています。その概要等をお知らせします。

次回のVCSSL 3.4.10において、関数1個の挙動に非互換な修正が適用されます
2019年02月12日 - VCSSLの次回の正式リリース版3.4.10において、これまでドキュメントと実際の挙動が異なっていた描画系の関数1個に、非互換な修正が適用されます。その詳細と、使用コードでの対応方法について解説します。

RINEARNのソフトウェア向けにOpenJDKで生成したJava実行環境(JRE)の提供を開始
2019年02月06日 - Javaのリリースモデル変更への対応として、OpenJDKのjlinkツールを用いて、RINEARNのソフトウェア実行用に生成したJava実行環境(JRE)の提供を開始しました。その詳細と、今後の方針について解説します。

新着
画像の矩形(四角形)領域を切り抜く簡易ツール(複数ファイル一括処理版)

フォルダ内にある全ての画像ファイルを開き、その中の矩形(四角形)領域を切り抜いて、別のフォルダに保存する簡易ツールです。
2019年03月15日
画像の矩形(四角形)領域を切り抜く簡易ツール

画像ファイルを開き、その中の矩形(四角形)領域を切り抜いて保存する簡易ツールです。
2019年03月14日
入力された数式を積分して値とグラフを表示するツール

画面上で数式を入力すると、それを数値的に積分し、値とグラフを表示してくれるGUIツールです。
2019年01月20日
z = f(x,y,t) の形の数式を3Dグラフとしてアニメーション描画するツール

入力欄に z = f(x,y,t) の形の数式を入力すると、それを3次元のグラフにアニメーション描画してくれる簡易ツールです。
2018年11月26日
y = f(x,t) の形の数式を2Dグラフとしてアニメーション描画するツール

入力欄に y = f(x,t) の形の数式を入力すると、それを2次元のグラフにアニメーション描画してくれる簡易ツールです。
2018年11月25日
開発元Twitterアカウント