VCSSL API
ライブラリ リファレンス

vcssl.org > ライブラリ リファレンス >

VCSSL API ライブラリ リファレンス

ここでは、VCSSLの標準的な処理系で利用できる、各種ライブラリの詳細仕様を掲載しています。


ライブラリ一覧

System ライブラリ ( 標準ライブラリ )

各種の重要な基盤機能を提供するライブラリです。

Math ライブラリ ( 標準ライブラリ )

各種数学関数を提供するライブラリです。

Text ライブラリ ( 標準ライブラリ )

テキスト(文字列)処理機能を提供するライブラリです。

File ライブラリ ( 標準ライブラリ )

ファイル一覧取得やパス処理などの機能を提供するライブラリです。

Time ライブラリ ( 標準ライブラリ )

時間計測や、時刻取得などの機能を提供するライブラリです。

Process ライブラリ ( 標準ライブラリ )

ネイティブプロセスの実行機能を提供するライブラリです。

Thread ライブラリ ( 標準ライブラリ )

スレッド関連機能を提供するライブラリです。

Sound ライブラリ ( 標準ライブラリ )

サウンド関連機能を提供するライブラリです。

Color ライブラリ ( 標準ライブラリ )

色の制御機能を提供するライブラリです。

GUI ライブラリ ( 標準ライブラリ )

GUIの生成や制御機能を提供するライブラリです。

Graphics2D ライブラリ ( 標準ライブラリ )

2DCG(2次元グラフィックス)機能を提供するライブラリです。

Graphics3D ライブラリ ( 標準ライブラリ )

3DCG(3次元グラフィックス)機能を提供するライブラリです。

science.graph.Graph2D ライブラリ

2次元グラフソフトを制御するAPIライブラリです。

science.graph.Graph3D ライブラリ

3次元グラフソフトを制御するAPIライブラリです。

open.system.Int ライブラリ

int型を補助する機能を提供するライブラリです。

open.system.Float ライブラリ

float型を補助する機能を提供するライブラリです。

open.system.Complex ライブラリ

complex型を補助する機能を提供するライブラリです。

open.system.Bool ライブラリ

bool型を補助する機能を提供するライブラリです。

open.system.String ライブラリ

string型を補助する機能を提供するライブラリです。

open.math.ElementaryFunction ライブラリ

使用頻度の高い、基本的な数学関数を提供するライブラリです。

open.math.StatisticalFunction ライブラリ

平均や標準偏差などの統計関数を提供するライブラリです。

open.math.GaussianFunction ライブラリ

ガウス関数を提供するライブラリです。

open.math.FourierTransform ライブラリ

離散フーリエ変換処理を提供するライブラリです。

open.data.DataWrapper ライブラリ

任意型の変数値を構造体でラッピングする機能を提供するライブラリです。

open.data.List ライブラリ

リスト型のデータ構造を提供するライブラリです。配列には対応していません。

open.data.Queue ライブラリ

キュー型のデータ構造を提供するライブラリです。配列には対応していません。

open.data.Stack ライブラリ

スタック型のデータ構造を提供するライブラリです。配列には対応していません。

open.data.WrappedList ライブラリ

リスト型のデータ構造を提供するライブラリです。配列に対応しています。

open.data.WrappedQueue ライブラリ

キュー型のデータ構造を提供するライブラリです。配列に対応しています。

open.data.WrappedStack ライブラリ

スタック型のデータ構造を提供するライブラリです。配列に対応しています。

open.file.TextFile ライブラリ

CSV/TSV形式などのテキストファイル入出力機能を提供します。

open.gui.ButtonPanel ライブラリ

GUI部品として、ボタンが並ぶパネルを提供するライブラリです。

open.gui.ButtonWindow ライブラリ

GUI部品として、ボタンが並ぶウィンドウを提供するライブラリです。

open.gui.CheckBoxPanel ライブラリ

GUI部品として、チェックボックスが並ぶパネルを提供するライブラリです。

open.gui.CheckBoxWindow ライブラリ

GUI部品として、チェックボックスが並ぶウィンドウを提供するライブラリです。

open.gui.GraphicsLabelWindow ライブラリ

GUI部品として、描画ラベルを表示するウィンドウを提供するライブラリです。

open.gui.HorizontalSliderPanelPanel ライブラリ

GUI部品として、水平スライダーが並ぶパネルを提供するライブラリです。

open.gui.HorizontalSliderPanelWindow ライブラリ

GUI部品として、水平スライダーが並ぶウィンドウを提供するライブラリです。

open.gui.TextFieldPanel ライブラリ

GUI部品として、テキストフィールドが並ぶパネルを提供するライブラリです。

open.gui.TextFieldWindow ライブラリ

GUI部品として、テキストフィールドが並ぶウィンドウを提供するライブラリです。

open.graphics2d.Graphics2DFramework ライブラリ

2DCG( 2次元グラフィックス )を手軽に扱うための軽量フレームワークです。

open.graphics2d.Graphics3DFramework ライブラリ

3DCG( 3次元グラフィックス )を手軽に扱うための軽量フレームワークです。


全ての関数・定数一覧

System ライブラリ

各種の重要な基盤機能を提供するライブラリです。

const string VER
処理系が対応する、VCSSLのバージョンコードを表します。
const string REV
処理系の開発リビジョンコードを表します。
const complex I
complex 型の虚数単位です。
const varcomplex VCI
varcomplex 型の虚数単位です。
const float INF
float 型の Inf (無限大) です。
const float NAN
float 型の NaN (非数) です。なお、NaN はあらゆる値と等しくありません。つまり、value == NAN といった比較で、変数 value が NaN であるかどうかを判定する事はできません。NaN の判定には nan 関数を使用してください。
const float FLOAT_MAX
float 型の最大値です。
const float FLOAT_MIN
float 型の最小値です。
const int INT_MAX
int 型の最大値です。
const int INT_MIN
int 型の最小値です。
const string EOL
環境依存の改行コードです。CR, LF, CR+LF などの中から、実行中の環境に適した値を保持しています。
const string CR
改行コード CR (0x0D) です。
const string LF
改行コード LF (0x0A) です。
const string READ
「読み込み」を行うファイル入出力モードです。open 関数で使用します。
const string WRITE
「書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string APPEND
「追記書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string READ_TSV
「TSV読み込み」を行うファイル入出力モードです。open 関数で使用します。
const string WRITE_TSV
「TSV書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string APPEND_TSV
「TSV追記書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string READ_CSV
「CSV読み込み」を行うファイル入出力モードです。open 関数で使用します。
const string WRITE_CSV
「CSV書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string APPEND_CSV
「CSV追記書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string READ_BINARY
「バイナリ読み込み」を行うファイル入出力モードです。open 関数で使用します。
const string WRITE_BINARY
「バイナリ書き込み」を行うファイル入出力モードです。open 関数で使用します。
const string APPEND_BINARY
「バイナリ追記書き込み」を行うファイル入出力モードです。open 関数で使用します。
const int UP
「切り上げ」を行う丸めモードです。round 関数で使用します。
const int DOWN
「切り下げ」を行う丸めモードです。round 関数で使用します。
const int HALF_UP
「half up 丸め」を行う丸めモードです。round 関数で使用します。
const int HALF_DOWN
「half down 丸め」を行う丸めモードです。round 関数で使用します。
const int HALF_EVEN
「half even 丸め」を行う丸めモードです。round 関数で使用します。
macro print(...)
コンソールに文字列を出力します。引数は任意型であり、自動的に文字列型に変換されます。引数を複数指定した場合、それがどのような形で出力されるかは処理系依存です。恐らく通常は、空白区切りで出力されます。
macro println(...)
コンソールに文字列を出力し、改行します。引数は任意型であり、自動的に文字列型に変換されます。引数を複数指定した場合、それがどのような形で出力されるかは処理系依存です。恐らく通常は、空白区切りで出力されます。
macro output(...)
プログラムの処理結果を表示するための領域に、文字列を出力します。引数は任意型であり、自動的に文字列型に変換されます。引数を複数指定した場合、それがどのような形で出力されるかは処理系依存です。恐らく通常は、空白区切りで出力されます。
macro input(...)
ユーザーから、任意文字列の入力を受け付けます。引数は任意型であり、自動的に文字列型に変換され、入力項目のメッセージとして表示されます。引数を複数指定した場合、それがどのような形で出力されるかは処理系依存です。恐らく通常は、改行区切りで出力されます。なお、最後の引数は、入力項目のデフォルト値として使用されます。
macro select(...)
ユーザに選択肢を提示し、選択された項目を取得します。引数は任意型であり、自動的に文字列型に変換され、選択肢として表示されます。
macro alert(...)
メッセージを出力し、ユーザーがそれを了承するまで、プログラムの実行を待機します。引数を複数指定した場合、それがどのような形で出力されるかは処理系依存です。恐らく通常は、改行区切りで出力されます。
macro confirm(...)
メッセージを出力し、ユーザーに 了承 / 拒否 の二択を提示します。引数を複数指定した場合、それがどのような形で出力されるかは処理系依存です。恐らく通常は、改行区切りで出力されます。
string[ ] choose()
ユーザーにファイルを選択画面を提示し、選択されるまでプログラムの実行を待機します。
string[ ] choose(string message)
ユーザーにファイルを選択画面を提示し、選択されるまでプログラムの実行を待機します。
string[ ] choose(string message, string directory)
ユーザーにファイルを選択画面を提示し、選択されるまでプログラムの実行を待機します。
void beep()
ビープ音を鳴らします。ただし、実際に鳴らせるかどうかは環境に依存します。場合によっては、ビープ音でない音(オペレーティングシステムの警告音など)が鳴る事もあります。
void beep(int repeat)
ビープ音を鳴らします。ただし、実際に鳴らせるかどうかは環境に依存します。場合によっては、ビープ音でない音(オペレーティングシステムの警告音など)が鳴る事もあります。
void beep(int repeat, int wait)
ビープ音を鳴らします。ただし、実際に鳴らせるかどうかは環境に依存します。場合によっては、ビープ音でない音(オペレーティングシステムの警告音など)が鳴る事もあります。
void clear()
コンソールの内容をクリアします。ただし、この関数の挙動は処理系依存です。例えば、コンソールの内容が、処理系に付属したウィンドウに表示されるような場合においては、恐らく期待した通りの結果が得られます。しかし、コンソールウィンドウを持たない、標準入出力ベースの処理系においては、恐らく何も行われません。
void hide()
コンソールを非表示にします。ただし、この関数の挙動は処理系依存です。例えば、コンソールの内容が、処理系に付属したウィンドウに表示されるような場合においては、恐らく期待した通りの結果が得られます。しかし、コンソールウィンドウを持たない、標準入出力ベースの処理系においては、恐らく何も行われません。
void show()
コンソールが非表示にされている場合、表示します。ただし、この関数の挙動は処理系依存です。例えば、コンソールの内容が、処理系に付属したウィンドウに表示されるような場合においては、恐らく期待した通りの結果が得られます。しかし、コンソールウィンドウを持たない、標準入出力ベースの処理系においては、恐らく何も行われません。
macro sleep(int milliSecond)
プログラムの実行を一時停止します。
void exit()
プログラムの実行を終了します。なお、この関数は、処理系にプログラムの終了をリクエストするものであり、必ずしも即自的に実行が終了される事が保証されるものではありません。この関数をコールするには、全てのループや分岐を抜けた後のプログラム最終行など、処理系がアイドリング状態となっているタイミングが理想的です。処理系が高速に処理を行っているタイミングでこの関数をコールすると、強制終了に近い状態となります。詳細は処理系の実装や最適化の方針などに依存しますが、処理系は、この関数がコールされた時点で、即自的に中断できないような一連の演算処理を行っている最中かもしれません。その場合はタイムラグが生じ、コール後も少しの間、実行が継続される場合があります。
void exit(int code)
終了ステータスコードを指定して、プログラムの実行を終了します。なお、この関数は、処理系にプログラムの終了をリクエストするものであり、必ずしも即自的に実行が終了される事が保証されるものではありません。この関数をコールするには、全てのループや分岐を抜けた後のプログラム最終行など、処理系がアイドリング状態となっているタイミングが理想的です。処理系が高速に処理を行っているタイミングでこの関数をコールすると、強制終了に近い状態となります。詳細は処理系の実装や最適化の方針などに依存しますが、処理系は、この関数がコールされた時点で、即自的に中断できないような一連の演算処理を行っている最中かもしれません。その場合はタイムラグが生じ、コール後も少しの間、実行が継続される場合があります。
void reset(string programName, string args[ ])
処理系をリセットし、別のプログラムを実行します。
macro error(...)
エラーメッセージを出力します。エラーメッセージ出力後、プログラムの実行が終了されるか、継続されるかは、処理系に依存します。確実に終了させたい場合は、続けて exit をコールしてください。
macro assert(bool expression)
式の値を評価し、真であれば何も行わず、偽であればエラーメッセージを出力します。プログラムの実行は恐らく終了されます。この関数はテストに使用します。
macro exec(...)
オペレーティングシステムのコマンド、または外部プログラムを、別プロセスで非同期で実行します。呼び出し元プログラムの実行は、処理の完了を待機しません。生成したプロセスと並列的に、実行を継続します。処理の実行を待機したり、標準入出力を制御したい場合は、Process ライブラリを使用してください。
macro system(...)
オペレーティングシステムのコマンド、または外部プログラムを、同期実行します。処理が完了するまで、呼び出し元プログラムの実行は待機します。
bool exists(string filePath)
ファイルが存在するか確認します。
void mkdir(string directoryPath)
ディレクトリ(フォルダ)を新規生成します。ディレクトリが既に存在した場合は、何もしません。
bool isdir(string filePath)
ファイルがディレクトリかどうかを確認します。
string[ ] listdir(string directoryPath)
ディレクトリ内のファイル名一覧を返します。
macro rank(...)
配列の次元数を返します。例えば配列 a[11][28][32] に対して、rank(a) は 3 です。
macro length(...)
配列の要素数を返します。第二引数には、要素数を知りたい次元を、左から 0, 1, 2, ... と数えたインデックスを指定します。例えば配列 a[11][28][32] に対して、length(a, 0) は 11 であり、length(a, 1) は 28 であり、 length(a, 2) は 32 です。
bool nan( float value )
float 型の変数または値が、NaN (非数) かどうか判定します。
bool inf( float value )
float 型の変数または値が、Inf (無限大) かどうか判定します。
string bin( int number )
int 型の変数または値を、2進数で表した文字列を返します。先頭には 0b のプレフィックスが付加されます。
string oct( int number )
int 型の変数または値を、8進数で表した文字列を返します。先頭には 0 のプレフィックスが付加されます。
string hex( int number )
int 型の変数または値を、16進数で表した文字列を返します。先頭には 0x のプレフィックスが付加されます。
macro digit(arg)
varfloat 型または varcomplex 型の演算桁数を指定します。
macro digit()
varfloat 型または varcomplex 型の演算桁数を取得します。
void round(int arg)
varfloat 型および varcomplex 型の丸めモードを指定します。なお、varfloat 型および varcomplex 型の丸め制御と、この round 関数の実装は、現在は試験的に導入されているものです。現時点では、あらゆる演算において指定通りに丸め制御が行われる事は、必ずしも保証されません。使用する際には、事前に検証を行って下さい。varfloat 型および varcomplex 型の丸め制御、及びこの round 関数の実装は、試験導入期間を経た上で、VCSSL 4 以降での正式導入を予定しています。
float re( complex value )
complex 型の実部を返します。
float im( complex value )
complex 型の虚部を返します。
void re( complex value, float realValue )
complex 型の実部を設定します。
void im( complex value, float imagValue )
complex 型の虚部を設定します。
varfloat re( varcomplex value )
varcomplex 型の実部を返します。
varfloat im( varcomplex value )
varcomplex 型の虚部を返します。
void re( varcomplex value, varfloat realValue )
varcomplex 型の実部を設定します。
void im( varcomplex value, varfloat imagValue )
varcomplex 型の虚部を設定します。
void save(string filePath, string text)
簡易ファイル出力関数です。string 変数の保持する内容を、ファイルに保存します。
void save(string filePath)
簡易ファイル出力関数です。現在コンソールに表示されている内容を、ファイルに保存します。ただし、この関数の挙動は処理系依存です。例えば、コンソールの内容が、処理系に付属したウィンドウに表示されるような場合においては、恐らく期待した通りの結果が得られます。しかし、コンソールウィンドウを持たない、標準入出力ベースの処理系においては、恐らく何も行われません。
string load(string filePath)
簡易ファイル入力関数です。ファイルの内容を全て読み込み、そのまま文字列として返します。読み込み後、ファイルは自動的に閉じられます。
string load()
簡易ファイル入力関数です。現在コンソールに表示されている内容を取得し、そのまま文字列として返します。ただし、この関数の挙動は処理系依存です。例えば、コンソールの内容が、処理系に付属したウィンドウに表示されるような場合においては、恐らく期待した通りの結果が得られます。しかし、コンソールウィンドウを持たない、標準入出力ベースの処理系においては、恐らく何も得られません。
int open(string filePath, string mode)
ファイルを開き、固有の識別番号( ファイルID )を割り振って返します。
int open(string filePath, string mode, string textEncoding)
ファイルを開き、固有の識別番号( ファイルID )を割り振って返します。
macro openw(...)
この関数は VCSSL 1.0 世代のものであり、open( filePath, "wtsv" ) と同等の機能でファイルを開きます。この関数は互換目的でサポートされています。
macro opencsvw(...)
この関数は VCSSL 1.0 世代のものであり、open( filePath, "wcsv" ) と同等の機能でファイルを開きます。この関数は互換目的でサポートされています。
macro openr(...)
この関数は VCSSL 1.0 世代のものであり、open( filePath, "rtsv" ) と同等の機能でファイルを開きます。この関数は互換目的でサポートされています。
macro opencsvr(...)
この関数は VCSSL 1.0 世代のものであり、open( filePath, "rcsv" ) と同等の機能でファイルを開きます。この関数は互換目的でサポートされています。
void close(int fileID)
ファイルを閉じます。この時点で、バッファされている書き込み内容は全てフラッシュされます。
void flush(int fileID)
ファイルのバッファされている書き込み内容をフラッシュします。
macro write(int fileID, ...)
ファイルに内容を書き込みます。書き込み内容は任意型で、書き込み時に文字列に変換されます。書き込み内容を複数指定した場合、それがどのような形で書き込まれるかは、ファイル入出力モードに依存します。 "w" または WRITE モードの場合 : 書き込み内容が、そのまま連結されて書き込まれます。 , "wtsv" または WRITE_TSV モードの場合 : 書き込み内容が、タブ文字区切りで連結されて書き込まれます。 , "wcsv" または WRITE_CSV モードの場合 : 書き込み内容が、カンマ文字区切りで連結されて書き込まれます。 , なおこの関数は、VCSSL2.1以前では改行されますが、2.2以降では改行されません。改行付きの機能は writeln 関数が提供します。
macro writeln(int fileID, ...)
ファイルに内容を書き込み、改行します。書き込み内容は任意型で、書き込み時に文字列に変換されます。書き込み内容を複数指定した場合、それがどのような形で書き込まれるかは、ファイル入出力モードに依存します。 "w" または WRITE モードの場合 : 書き込み内容が、そのまま連結されて書き込まれます。 , "wtsv" または WRITE_TSV モードの場合 : 書き込み内容が、タブ文字区切りで連結されて書き込まれます。 , "wcsv" または WRITE_CSV モードの場合 : 書き込み内容が、カンマ文字区切りで連結されて書き込まれます。 , なお、改行コードには、実行環境に適切なものが自動的に採用されます。もしも、LFCR などの特定の改行コードを使用したい場合は、この関数の代わりに write 関数を使用し、書き込み内容に LFCR を付加して書き込んでください。
string[ ] read(int fileID)
ファイルの内容を全て読み込みます。戻り値は string 型配列ですが、これに読み込み内容がどのように格納されるのかは、ファイル入出力モードに依存します。 "r" または READ モードの場合 : ファイルの内容がそのまま、要素数 1 の string 型配列に格納して返されます。 , "rtsv" または READ_TSV モードの場合 : ファイルの内容が、空白及び改行区切りで、string 型配列に格納して返されます。タブ文字と半角空白は同一視されます。 , "rcsv" または READ_CSV モードの場合 : ファイルの内容が、カンマ記号及び改行区切りで、string 型配列に格納して返されます。 , CSV や TSV の読み込みでは、エンクロージャやデリミタの解釈は行われず、単純に区切り文字が存在する位置で区切られます。また、TSV ではタブ文字と半角空白は区別されません。このあたりの挙動を、より厳密に制御したい場合は、open.file.TextFile ライブラリを使用してください。なおこの関数は、VCSSL2.1以前では行単位の読み込みでしたが、VCSSL2.2以降から全体の読み込みに変更されました。行単位の、過去と同様の機能は readln 関数が提供します。
string[ ] readln(int fileID)
ファイルから一行の内容を読み込みます。戻り値は string 型配列ですが、これに読み込み内容がどのように格納されるのかは、ファイル入出力モードに依存します。 "r" または READ モードの場合 : ファイルの内容がそのまま、要素数 1 の string 型配列に格納して返されます。 , "rtsv" または READ_TSV モードの場合 : ファイルの内容が、空白区切りで、string 型配列に格納して返されます。タブ文字と半角空白は同一視されます。 , "rcsv" または READ_CSV モードの場合 : ファイルの内容が、カンマ記号区切りで、string 型配列に格納して返されます。 , なお、CSV や TSV の読み込みでは、エンクロージャやデリミタの解釈は行われず、単純に区切り文字が存在する位置で区切られます。また、TSV ではタブ文字と半角空白は区別されません。このあたりの挙動を、より厳密に制御したい場合は、open.file.TextFile ライブラリを使用してください。
string load(int fileID)
ファイルの内容を全て読み込み、そのまま文字列として返します。
string loadln(int fileID)
ファイルから一行の内容を全て読み込み、そのまま文字列として返します。
int countln(int fileID)
ファイルの行数をカウントします。
macro eval(string expression)
文字列を式として評価します。レキシカルスコープで、変数や関数へのアクセスも可能です。また、代入を行う事もできます。戻り値には、式の値が string 型配列に変換されて返されます ( 式の値が非配列であった場合は、戻り値の要素数は 1 となります )。string 型配列は、最も変換自由度の高い型であり、あらゆるプリミティブ型の配列と非配列に代入できます ( 非配列へは要素数が1の場合に限り可能です )。反面、繰り返し高速に評価したい場合、特に戻り値が int 型や float 型である場合においては、文字列を介する型変換がボトルベックとなります。そういった場合は、評価式の中で結果を変数に代入し、戻り値を利用せずに捨てる事で、ボトルネックを回避できます。
macro eval(string expression, literalType)
文字列を式として評価します。引数 1 個の eval 関数と異なるのは、式中でサフィックスが明示されていない数値リテラルを、どの型と解釈するか指定できる点です。例えば \"1 / 2\" の式は、通常は int 型同士の除算となるため、値は 0 です。これを float 型同士の除算と見なして 0.5 を得たい場合には、第二引数に float 型の値 ( 0.0 など ) を指定してください。なお第二引数は、型のみが意味を持ち、値は無視されます(しかしながら、初来的に何らかの意味づけが加えられる可能性もあるため、特に理由が無ければ 0 や 0.0 を指定する事が推奨されます)。
macro feval(string expression)
文字列を式として評価し、値を float 型の非配列で返します。
macro feval(string expression, literalType)
文字列を式として評価し、値を float 型の非配列で返します。
macro ieval(string expression)
文字列を式として評価し、値を int 型の非配列で返します。
macro ieval(string expression, literalType)
文字列を式として評価し、値を int 型の非配列で返します。
macro ceval(string expression)
文字列を式として評価し、値を complex 型の非配列で返します。
macro ceval(string expression, literalType)
文字列を式として評価し、値を complex 型の非配列で返します。
macro beval(string expression)
文字列を式として評価し、値を bool 型の非配列で返します。
macro beval(string expression, literalType)
文字列を式として評価し、値を bool 型の非配列で返します。
macro seval(string expression)
文字列を式として評価し、値を string 型の非配列で返します。
macro seval(string expression, literalType)
文字列を式として評価し、値を string 型の非配列で返します。
macro vfeval(string expression)
文字列を式として評価し、値を varfloat 型の非配列で返します。
macro vfeval(string expression, literalType)
文字列を式として評価し、値を varfloat 型の非配列で返します。
macro vieval(string expression)
文字列を式として評価し、値を varint 型の非配列で返します。
macro vieval(string expression, literalType)
文字列を式として評価し、値を varint 型の非配列で返します。
macro vceval(string expression)
文字列を式として評価し、値を varcomplex 型の非配列で返します。
macro vceval(string expression, literalType)
文字列を式として評価し、値を varcomplex 型の非配列で返します。
macro evaluable(string expression)
式の内容が構文的に正しいかどうかを判定します。eval 関数は構文解析に失敗すると処理速度が低下するため、式を高速に繰り返し評価したい場合、事前にこの関数で式の正当性を確認しておく事が推奨されます。
macro evaluable(string expression, literalType)
式の内容が構文的に正しいかどうかを判定します。eval 関数は構文解析に失敗すると処理速度が低下するため、式を高速に繰り返し評価したい場合、事前にこの関数で式の正当性を確認しておく事が推奨されます。
macro evaltr(string expression)
文字列を式として評価し、処理系の内部処理情報を返します。内容は完全に処理系依存です。なお、利用できる式には処理系依存の制約があり、必ずしも通常の式評価と整合する内容を返すとは限りません。また、一般に副作用のある式には使用できません。この関数は、主に開発時やデバッグ時に使用します。
macro evaltr(string expression, literalType)
文字列を式として評価し、処理系の内部処理情報を返します。内容は完全に処理系依存です。なお、利用できる式には処理系依存の制約があり、必ずしも通常の式評価と整合する内容を返すとは限りません。また、一般に副作用のある式には使用できません。この関数は、主に開発時やデバッグ時に使用します。
macro override(string functionName, string argumentType[ ], string functionCode)
関数の処理内容を、実行時に変更します。eval 関数は、ローカル変数の宣言や、複数の文を実行できないため、そのような処理を動的評価で行いたい場合には、この関数を使用します。なお、この関数でできるのは、既存の関数の処理内容を変更する事のみであり、新しい関数を宣言する事はできません。
string lf()
環境依存の改行コードを返します。VCSSL 3 以降では、定数 EOL をそのまま改行コードとして使用できます。この関数は、関数コールのオーバーヘッドを無駄に要します。新しいプログラムでは 定数 EOL の使用が推奨されます。この関数は互換目的でサポートされています。
string linefeed()
環境依存の改行コードを返します。VCSSL 3 以降では、定数 EOL をそのまま改行コードとして使用できます。この関数は、関数コールのオーバーヘッドを無駄に要します。新しいプログラムでは 定数 EOL の使用が推奨されます。この関数は互換目的でサポートされています。

Math ライブラリ

各種数学関数を提供するライブラリです。

const float PI
float精度における、円周率の値です。多倍長精度の varfloat 値を得るには pi() を使用してください。
const float E
float精度における、ネイピア数(自然対数の底)の値です。多倍長精度の varfloat 値を得るには exp( 1.0vf ) で計算してください。
macro random()
0.0 ~ 1.0 までの乱数値を返します。
macro rand()
0.0 ~ 1.0 までの乱数値を返します。現在はrandomの使用が推奨されます。
macro exp( float arg )
ネイピア数を低とする指数関数を計算します。
varfloat exp( varfloat arg )
ネイピア数を低とする指数関数を計算します。内部では、元の桁数の 1.34 倍の桁数で、マクローリン展開によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro pow( float arg1, float arg2 )
指数関数を計算します。
varfloat pow( varfloat arg1, varint arg2 )
指数関数を計算します。内部では、「 元の桁数 + 指数 ( arg2 ) のオーダーの絶対値 」の2.1倍の桁数で、マクローリン展開によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
varfloat pow( varfloat arg1, varfloat arg2 )
指数関数を計算します。内部では、「 元の桁数 + 指数 ( arg2 ) のオーダーの絶対値 」の1.2倍の桁数で、マクローリン展開によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
varfloat pow( varint arg1, varfloat arg2 )
指数関数を計算します。内部では、arg1 を varfloat 型にキャストした上で、 pow( varfloat, varfloat ) が使用されます。
macro ln( float arg )
自然対数を計算します。log と同じです。
macro ln( varfloat arg )
自然対数を計算します。log と同じです。内部ではそのまま log(varfloat) が使用されています。
macro log( float arg )
自然対数を計算します。ln と同じです。
varfloat log( varfloat arg )
自然対数を計算します。ln と同じです。内部では、元の桁数の1.34倍の桁数で、「 1以上の引数ではニュートン法、1以下の引数ではテイラー展開 」によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro log10( float arg )
常用対数を計算します。
varfloat log10( varfloat arg )
常用対数を計算します。内部では、元の桁数の2.2倍の桁数で、「 log10(x) = ln(x) / ln(10) 」によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro sqrt( float arg )
平方根を計算します。
varfloat sqrt( varfloat arg )
平方根を計算します。内部では、元の桁数の1.34倍の桁数で、ニュートン法によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro root( float arg, int rootPower )
N乗根を計算します。
varfloat root( varfloat arg, varint p )
N乗根を計算します。内部では、元の桁数の1.34倍の桁数で、ニュートン法によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
varfloat root( varfloat arg, varfloat vfp )
N乗根を計算します。内部では、元の桁数の1.34倍の桁数で、ニュートン法によって計算されます。ただし 10 桁以下では、元の桁数 + 4桁 で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro abs( float arg )
絶対値を計算します。
macro abs( int arg )
絶対値を計算します。
varfloat abs( varfloat arg )
絶対値を計算します。
varint abs( varint arg )
絶対値を計算します。
macro max( float arg1, float arg2 )
2つの引数の内、大きい方を返します。
macro max( int arg1, int arg2 )
2つの引数の内、大きい方を返します。
varfloat max( varfloat arg1, varfloat arg2 )
2つの引数の内、大きい方を返します。
varint max( varint arg1, varint arg2 )
2つの引数の内、大きい方を返します。
macro min( float arg1, float arg2 )
2つの引数の内、小さい方を返します。
macro min( int arg1, int arg2 )
2つの引数の内、小さい方を返します。
varfloat min( varfloat arg1, varfloat arg2 )
2つの引数の内、小さい方を返します。
varint min( varint arg1, varint arg2 )
2つの引数の内、小さい方を返します。
float fac( float arg )
階乗を計算します。この関数は引数・戻り値共に float ですが、内部で近い int に丸めて計算されます。変換に伴い、誤差が精度に影響する可能性があります。厳密性を要求する場合は int 引数のものを使用してください。
macro fac( int arg )
階乗を計算します。
varint fac( varint arg )
階乗を計算します。
varfloat fac( varfloat arg )
階乗を計算します。
macro sin( float arg )
サイン(正弦)関数を計算します。
varfloat sin( varfloat arg )
サイン(正弦)関数を計算します。内部では、「 元の桁数の1.34倍 + 引数のオーダーの10倍 」の桁数で、マクローリン展開によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 + 引数のオーダーの10倍 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。0 ~ π/2 の範囲以外の引数に対しては、三角関数の対称性と周期性を利用し、内部では 0 ~ π の範囲の値を使用して計算されます。
macro cos( float arg )
コサイン(余弦)関数を計算します。
varfloat cos( varfloat arg )
コサイン(余弦)関数を計算します。内部では、「 元の桁数の1.34倍 + 引数のオーダーの10倍 」の桁数で、マクローリン展開によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 + 引数のオーダーの10倍 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。0 ~ π/2 の範囲以外の引数に対しては、三角関数の対称性と周期性を利用し、内部では 0 ~ π の範囲の値を使用して計算されます。
macro tan( float arg )
タンジェント(正接)関数を計算します。
varfloat tan( varfloat arg )
タンジェント(正接)関数を計算します。内部では、元の桁数の2.1倍の桁数で、「 tan(x) = sin(x) / cos(x) 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro asin( float arg )
アークサイン関数(サインの逆関数)を計算します。
varfloat asin( varfloat arg )
アークサイン関数(サインの逆関数)を計算します。内部では、元の桁数の1.34倍の桁数で、「 絶対値が0.7以下の引数についてはマクローリン展開、それより外側はニュートン法 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro acos( float arg )
アークコサイン関数(コサインの逆関数)を計算します。
varfloat acos( varfloat arg )
アークコサイン関数(コサインの逆関数)を計算します。内部では、元の桁数の1.34倍の桁数で、「 acos(x) = π/2 - asin(x) 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro atan( float arg )
アークタンジェント関数(タンジェントの逆関数)を計算します。
varfloat atan( varfloat arg )
アークタンジェント関数(タンジェントの逆関数)を計算します。内部では、元の桁数の1.34倍の桁数で、「 絶対値が0.7以下の引数についてはマクローリン展開、それより外側はニュートン法 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro sinh( float arg )
ハイパボリックサイン関数を計算します。
varfloat sinh( varfloat arg )
ハイパボリックサイン関数を計算します。内部では、元の桁数の2.1倍の桁数で、「 sinh(x) = ( exp(x) - exp(-x) ) / 2 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro cosh( float arg )
ハイパボリックコサイン関数を計算します。
varfloat cosh( varfloat arg )
ハイパボリックコサイン関数を計算します。内部では、元の桁数の2.1倍の桁数で、「 sinh(x) = ( exp(x) + exp(-x) ) / 2 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro tanh( float arg )
ハイパボリックコタンジェント関数を計算します。
varfloat tanh( varfloat arg )
ハイパボリックコタンジェント関数を計算します。内部では、元の桁数の2.8倍の桁数で、「 sinh(x) = ( exp(x) - exp(-x) ) / ( exp(x) + exp(-x) ) 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro asinh( float arg )
ハイパボリックサインの逆関数を計算します。
varfloat asinh( varfloat arg )
ハイパボリックサインの逆関数を計算します。内部では、元の桁数の2.1倍の桁数で、「 asinh(x) = ln( x + √( x*x + 1 ) ) 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro acosh( float arg )
ハイパボリックコサインの逆関数を計算します。
varfloat acosh( varfloat arg )
ハイパボリックコサインの逆関数を計算します。内部では、元の桁数の2.1倍の桁数で、「 acosh(x) = ln( x + √( x*x - 1 ) ) 」によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。
macro atanh( float arg )
ハイパボリックタンジェントの逆関数を計算します。
varfloat atanh( varfloat arg )
ハイパボリックタンジェントの逆関数を計算します。内部では、元の桁数の2.1倍の桁数で、「 絶対値が0.9以下の引数については atanh(x) = 1/2 * log(1+x)/log(1-x) 」によって、それより外側はニュートン法によって計算されます。ただし 10 桁以下では、「 元の桁数 + 4桁 」の桁数で計算されます。この余剰桁数は、将来的に( 恐らくより高精度な方向に )変更される可能性があります。関数の対称性を利用し、負の引数については、正の引数における値を利用して計算されます。古いバージョンでは、-0.7 以下(負の無限大側)の引数について値を求められません。計算が終わらないか、0 が返されます。この問題は VCSSL 3.3.2 において修正されました。
macro deg( float angle )
角度の単位変換です。度数法の角度を、弧度法(ラジアン)の角度に変換します。
varfloat deg(varfloat rad)
角度の単位変換です。度数法の角度を、弧度法(ラジアン)の角度に変換します。内部では、元の桁数の1.34倍の桁数で、「 度数 = ラジアン数 * 180 / π 」によって計算されます。
macro rad( float angle )
角度の単位変換です。弧度法(ラジアン)の角度を、度数法の角度に変換します。
varfloat rad(varfloat deg)
角度の単位変換です。弧度法(ラジアン)の角度を、度数法の角度に変換します。内部では、元の桁数の1.34倍の桁数で、「 ラジアン数 = 度数 * π / 180 」によって計算されます。
varfloat pi()
円周率の値を計算します。内部では、元の桁数の1.1倍の桁数で、ガウス=ルジャンドル法によって計算されます。高精度な円周率の値は、周期性がある関数の計算や、周期境界をもつシミュレーション(回転系や写像系など)において、引数や座標の円周率による剰余を求めるために必要となります。実際に Math ライブラリでも、varfloat型の三角関数を求める計算などで使用されています。

Text ライブラリ

テキスト(文字列)処理機能を提供するライブラリです。

string[ ] split( string text, string cut )
文字列を、特定の文字列の位置で分割し、配列にまとめて返します。
string[ ] splitPattern( string text, string cut )
文字列を、特定の正規表現に適合する位置で分割し、配列にまとめて返します。
string replace( string text, string oldText, string newText )
文字列に含まれる部分文字列を、別の部分文字列に置換したものを返します。部分文字列の適合箇所が複数存在する場合は、全て置換されます。
string replacePattern( string text, string oldText, string newText )
文字列内で正規表現に適合する区間を、別の部分文字列に置換したものを返します。正規表現の適合箇所が複数存在する場合は、全て置換されます。
string replaceFirst( string text, string oldText, string newText )
文字列に含まれる部分文字列を、別の部分文字列に置換したものを返します。部分文字列の適合箇所が複数存在する場合は、最初のものだけが置換されます。
string replaceFirstPattern( string text, string oldText, string newText )
文字列内で正規表現に適合する区間を、別の部分文字列に置換したものを返します。正規表現の適合箇所が複数存在する場合は、最初のものだけが置換されます。
string replaceFirst( string text, string oldText, string newText, int from )
文字列に含まれる部分文字列を、別の部分文字列に置換したものを返します。部分文字列の適合箇所が複数存在する場合は、引数 from に指定したインデックス以降で、最初のものだけが置換されます。
string replaceFirstPattern( string text, string oldText, string newText, int from )
文字列内で正規表現に適合する区間を、別の部分文字列に置換したものを返します。正規表現の適合箇所が複数存在する場合は、引数 from に指定したインデックス以降で、最初のものだけが置換されます。
bool startsWith( string text, string word )
文字列が、指定された部分文字列で始まっているかどうか判定します。
bool endsWith( string text, string word )
文字列が、指定された部分文字列で終わっているかどうか判定します。
string match( string text, string pattern )
この API の仕様は推奨されません。matchFirst を使用してください。
string match( string text, string pattern, int from )
この API の仕様は推奨されません。matchFirst を使用してください。
bool matchFull( string text, string pattern )
文字列全体が、正規表現に適合するかどうか判定します。
string matchFirst( string text, string pattern )
文字列全体から、正規表現に適合する箇所を抜き出して返します。正規表現の適合箇所が複数存在する場合は、最初のものだけが選択されます。
string matchFirst( string text, string pattern, int from )
文字列から、正規表現に適合する箇所を抜き出して返します。正規表現の適合箇所が複数存在する場合は、引数 from に指定したインデックス以降から、最初のものだけが選択されます。
string matchLast( string text, string pattern )
文字列全体から、正規表現に適合する箇所を抜き出して返します。正規表現の適合箇所が複数存在する場合は、最後のものだけが選択されます。
string matchLast( string text, string pattern, int from )
文字列から、正規表現に適合する箇所を抜き出して返します。正規表現の適合箇所が複数存在する場合は、引数 from に指定したインデックスの位置よりも前から、最後のものだけが選択されます。
int indexOf( string text, string word )
文字列内から、指定された部分文字列の位置を取得します。複数存在する場合は、最初のものが選択されます。存在しない場合は -1 を返します。
int indexOf( string text, string word, int from )
文字列内から、指定された部分文字列の位置を取得します。複数存在する場合は、引数 from に指定したインデックス以降から、最初のものが選択されます。存在しない場合は -1 を返します。
string indexOfPattern( string text, string word )
文字列内から、指定された正規表現に適合する位置を取得します。複数存在する場合は、最初のものが選択されます。存在しない場合は -1 を返します。
string indexOfPattern( string text, string word, int from )
文字列内から、指定された正規表現に適合する位置を取得します。複数存在する場合は、最初のものが選択されます。引数 from に指定したインデックス以降から、存在しない場合は -1 を返します。
int lastIndexOf( string text, string target )
文字列内から、指定された部分文字列の位置を取得します。複数存在する場合は、最後のものが選択されます。存在しない場合は -1 を返します。
int lastIndexOf( string text, string target, int from )
文字列内から、指定された部分文字列の位置を取得します。複数存在する場合は、引数 from に指定したインデックス以前から、最後のものが選択されます。存在しない場合は -1 を返します。
string lastIndexOfPattern( string text, string word )
文字列内から、指定された正規表現に適合する位置を取得します。複数存在する場合は、最後のものが選択されます。存在しない場合は -1 を返します。
string lastIndexOfPattern( string text, string word, int from )
文字列内から、指定された正規表現に適合する位置を取得します。複数存在する場合は、引数 from に指定したインデックス以前から、最後のものが選択されます。存在しない場合は -1 を返します。
int lengthOf( string text )
文字列の文字数を返します。
string charAt( string text, int index )
文字列内の、指定されたインデックスの位置にある文字を返します。
string substring( string text, int start, int end )
文字列内の、指定されたインデックス区間にある部分文字列を返します。
string[ ] tokenize( string text )
文字列内を、空白またはタブ、もしくは改行区切りでトークンに分割し、配列にまとめて返します。

File ライブラリ

ファイル一覧取得やパス処理などの機能を提供するライブラリです。

const int ABSOLUTE
絶対パスを意味する設定値です。
const int RELATIVE
相対パスを意味する設定値です。
const int PARENT
親階層を意味する設定値です。
const int HOME
ホームディレクトリを意味する設定値です。
const int ROOT
ルートディレクトリを意味する設定値です。
const int UNORDERED
特に整列されていないファイル順序を意味する設定値です。
const int LEXICAL
辞書順に整列されたファイル順序を意味する設定値です。
bool isDirectory( string pathOrName )
ファイルがディレクトリであるかどうかを判定します。
void makeDirectory( string pathOrName )
ディレクトリを新規作成します。
string[ ] listDirectory( string pathOrName )
指定ディレクトリ直下にあるファイル名の一覧を返します。ファイル名の順序は特に整列されず、環境や処理系に依存します。
string[ ] listDirectory( string pathOrName, bool sortByIgnoreCase, int sortOption )
指定ディレクトリ直下にあるファイル名の一覧を返します。ファイル名の整列オプションを指定できます。
void makeFile( string pathOrName )
ファイルを新規作成します。
string getFileName( string path )
ファイルパスから、ファイル名の部分を取得します。
void removeFile( string pathOrName )
ファイルを削除します。対象がディレクトリの場合、中身が空でなければ削除できないため、先に中身を削除する必要があります。
void moveFile( string pathOrName, string newName )
ファイルの移動や、ファイル名の変更を行います。引数が、共にファイル名のみの場合や、共に同じディレクトリ内のファイルパスである場合には、処理内容はファイル名の変更になります。引数が、互いに異なるディレクトリ内のファイルパスである場合には、処理内容はファイルの移動になります。ファイルは移動されます。ドライブをまたぐ移動はできない場合があります。
void renameFile( string pathOrName, string newName )
ファイル名を変更します。変更先にファイル名ではなくパスを指定した場合、ファイルは移動されます。ただし環境によっては、ドライブをまたぐ移動はできない場合があります。
※ このAPIの使用は推奨されません。このAPIの動作は処理系やバージョンに依存します。VCSSL 3.3 以降では、代わりに同機能の moveFile を使用してください。やむを得ずこの API を使用する必要があり、依存性を回避したい場合には、変更後のファイルパス newPath を絶対パスで指定してください。相対パスやファイル名のみを指定した場合の挙動は、処理系やバージョンに依存します。現在の標準VCSSLランタイムでは、newPath にファイル名や相対パスを指定した場合、実行プログラムの場所を基準とするものと解釈されますが、VCSSL 3.2 以前の古いバージョンなどでは、処理系の場所を基準として解釈される場合があります。絶対パスを指定すればバージョンへの依存性を回避できます。 例えば、renameFile("Test1.txt", "Test2.txt"); と記述した場合、現在の標準VCSSLランタイムでは、同じディレクトリ内で Test1.txt のファイルが Test2.txt に名称変更されます。しかし古いバージョンでは、"Test2.txt" は処理系からみた相対パスと解釈されるため、ファイルは処理系のディレクトリ( VCSSL.jar のある場所 )に移動されます。古いバージョンにおいても、同じディレクトリ内における名称変更を行いたい場合は、 renameFile("hoge1.txt", getFilePath("hoge2.txt", getFilePath(".")) ); などと記述します。
void copyFile( string inputPath, string outputPath )
ファイルをコピーします。
string getFilePath( string pathOrName )
ファイル名または相対パスから、絶対パスを取得して返します。
string getFilePath( string pathOrName, int type )
ファイル名またはパスから、絶対パスまたは相対パス、もしくは親階層パスを取得して返します。
string getFilePath( string pathOrName, string directory )
指定された基準ディレクトリから見たファイル名または相対パスを、絶対パスに変換取得して返します。
string getFilePath( string pathOrName, string directory, int type )
指定された基準ディレクトリから見たファイル名または相対パスを、絶対パスまたは(実行プログラム基準の)相対パス、もしくは(実行プログラム基準の)親階層パスに変換して返します。
string[ ] getFilePath( int target )
実行環境やオペレーティングシステムにおける特別な場所のパスを取得します。
string getMainDirectory()
実行プログラムがあるディレクトリのパスを返します。現在は getFilePath(".") で取得できます。この関数は互換目的でサポートされています。
string getHomeDirectory()
ホームディレクトリのパスを返します。現在は getFilePath( HOME ) で取得できます。この関数は互換目的でサポートされています。
string[ ] getRootDirectory()
ルートディレクトリのパスを返します。現在は getFilePath( ROOT ) で取得できます。この関数は互換目的でサポートされています。
string getParentDirectory( string pathOrName )
親階層のパスを返します。現在は getFilePath( pathOrName, PARENT ) で取得できます。この関数は互換目的でサポートされています。
string getFileRelativePath( string pathOrName, string directory )
指定ディレクトリから見た相対パスを、(実行プログラムから見た)相対パスに変換して返します。現在は getFilePath( pathOrName, directory, RELARIVE ) で取得できます。この関数は互換目的でサポートされています。
string[ ] getFileList( string pathOrName )
指定ディレクトリ直下のファイル名一覧を取得します。現在は listFile( pathOrName ) で取得できます。この関数は互換目的でサポートされています。この関数では、ファイル名の整列順序は環境やオペレーティングシステムに依存します。特定の順序である事を前提とした処理は推奨されません。新しい listFile( pathOrName ) は整列オプションを指定できます。

Time ライブラリ

時間計測や、時刻取得などの機能を提供するライブラリです。

int time()
プログラム実行開始からの経過時間を返します。通常、単位はミリ秒ですが、仕様上は処理系です。厳密に任意の単位で測るには、millisecond などを噛ませて変換してください。
int millisecond( int t )
time 関数が返す値などを、ミリ秒単位に変換します。
int second( int t )
time 関数が返す値などを、秒単位に変換します。
int minute( int t )
time 関数が返す値などを、分単位に変換します。
int hour( int t )
time 関数が返す値などを、時間(hour)単位に変換します。
int day( int t )
time 関数が返す値などを、日単位に変換します。自転速度の揺らぎや閏秒など、天文学的・物理学的な効果は考慮されません。単純に 86400000 ミリ秒を 1 日として変換します。
int year()
西暦カレンダーにおける現在の年を返します。
int month()
西暦カレンダーにおける現在の月を返します。範囲は 1 ? 12 の範囲で返します。0 ? 11 でない事に注意してください。
int day()
西暦カレンダーにおける現在の日を返します。
int hour()
現在の時刻における時間を返します。
int minute()
現在の時刻における分を返します。
int second()
現在の時刻における秒を返します。
string date()
西暦カレンダーにおける日付・時刻を表すテキストを返します。書式は現時点で仕様上未定となっており、処理系依存です。確実な書式が必要な場合は、year 関数や hour 関数などを用いて独自に表現してください。

Process ライブラリ

ネイティブプロセスの実行機能を提供するライブラリです。

int newProcess( string command[ ] )
ネイティブアプリケーションのプロセスを生成し、それに固有の識別番号である「プロセスID」を割り振って返します。この関数によるプロセスの生成後、startProcess をコールするまで実行は開始されないため( VCSSL 3.3以降 )、その間に標準入力内容の設定などを行う事ができます。プロセスの生成は System.exec でも可能ですが、exec はプロセス生成と同時に実行開始も行います。例として、「test.exe」にコマンドライン引数「1」「2」「3」を指定して起動するには、File ライブラリと Process ライブラリを import した上で:string command[] = { getFilePath("test.exe"), "1", "2", "3" }int processID = newProcess(command);などとします。実行を開始するには、続けて:startProcess(processID);とします。終了まで待機するには、続けて:waitForProcess(processID);とします。
int newProcess( string command )
ネイティブアプリケーションのプロセスを生成し、それに固有の識別番号である「プロセスID」を割り振って返します。この関数によるプロセスの生成後、startProcess をコールするまで実行は開始されないため( VCSSL 3.3以降 )、その間に標準入力内容の設定などを行う事ができます。プロセスの生成は System.exec でも可能ですが、exec はプロセス生成と同時に実行開始も行います。
void startProcess( int processID )
ネイティブアプリケーションのプロセスを実行開始します。実行開始後は、VCSSLの実行とは独立に、非同期に処理が行われます。プロセスの実行完了まで、VCSSL側の処理を待機させたい場合は、waitForProcess をコールしてください。
void deleteProcess( int processID )
ネイティブアプリケーションのプロセスに関するリソースを破棄します。プロセスの実行終了後にコールしてください。ただし、プロセスの実行途中でコールしてはいけません。プロセスを実行途中で破棄するには先に destroyProcess で強制終了させてください。
void destroyProcess( int processID )
ネイティブアプリケーションのプロセスを、実行途中で強制終了します。
void setProcessInput( int processID, string command )
プロセスに渡す標準入力内容を設定します。入力内容はバッファされ、プロセスが実際に入力待ちの状態になったタイミングで、プロセスに渡されます。そのためプロセスの終了までに必要な標準入力内容を、改行コード区切りで全てまとめて設定しておく事もできます。例として、順に「1」,「2」,「3」と入力する場合には:setProcessInput(processID, "1" + EOL + "2" + EOL + "3" + EOL);などとします。なお、バッファに頼らず、標準出力内容の取得と合わせて、対話的に(逐次的に)標準入力を行っていく事もできます。その際、環境にもよりますが、入力内容の末尾には改行コードを付けておかないと、受理されない場合があります。
string getProcessOutput( int processID )
コールされた時点までにバッファされている、プロセスの標準出力内容を取得します。環境によっては、バッファ量に上限があったり、バッファ量が蓄積すると効率が低下する事があります。そのため、標準出力内容が多いネイティブアプリケーションについては、clearProcessOutput で適時バッファをクリアしてください。
string getProcessError( int processID )
コールされた時点までにバッファされている、プロセスの標準エラー出力内容を取得します。環境によっては、バッファ量に上限があったり、バッファ量が蓄積すると効率が低下する事があります。そのため、標準エラー出力内容が多いネイティブアプリケーションについては、clearProcessError で適時バッファをクリアしてください。
void clearProcessOutput( int processID )
プロセスの標準出力バッファをクリアします。標準出力内容が多いネイティブアプリケーションについては、バッファ量が蓄積してくると効率が低下するため、適時クリアしてください。
void clearProcessError( int processID )
プロセスの標準エラー出力バッファをクリアします。標準出力内容が多いネイティブアプリケーションについては、バッファ量が蓄積してくると効率が低下するため、適時クリアしてください。
void flushProcessOutput( int processID )
プロセスの標準出力バッファをフラッシュします。フラッシュを行うと、その時点でバッファされている内容が全てonProcessOutput に流されます。
void flushProcessError( int processID )
プロセスの標準エラー出力バッファをフラッシュします。フラッシュを行うと、その時点でバッファされている内容が全てonProcessError に流されます。
int getProcessExitValue( int processID )
プロセスの終了ステータスコードを返します。
void waitForProcess( int processID )
プロセスの実行が終了するまで、VCSSL側の実行を待機します。
void onProcessStart(int processID)
プロセスが生成された際にコールされます。
void onProcessEnd(int processID)
プロセスが終了した際にコールされます。
void onProcessOutput(int processID, string output)
プロセスが標準出力を行った際にコールされます。ただし出力内容はバッファされるため、実際に出力が行われた瞬間にコールされるわけではなく、タイムラグが存在します。バッファがフラッシュされるタイミングは、厳密には処理系依存ですが、恐らく通常は行単位です。その場合、このイベントハンドラにも、出力内容が行単位で渡されます(ただし、処理系のバッファ容量を超過するような長い行では、1行の内容が区切られ、複数回に渡ってコールされる可能性もあります)。なお、改行を待たずに、任意のタイミングでバッファを強制的にフラッシュさせるには、flushProcessOutput 関数を使用してください。
void onProcessOutput(int processID, string output)
プロセスが標準エラー出力を行った際にコールされます。ただし出力内容はバッファされるため、実際に出力が行われた瞬間にコールされるわけではなく、タイムラグが存在します。バッファがフラッシュされるタイミングは、厳密には処理系依存ですが、恐らく通常は行単位です。その場合、このイベントハンドラにも、出力内容が行単位で渡されます(ただし、処理系のバッファ容量を超過するような長い行では、1行の内容が区切られ、複数回に渡ってコールされる可能性もあります)。なお、改行を待たずに、任意のタイミングでバッファを強制的にフラッシュさせるには、flushProcessError 関数を使用してください。

Thread ライブラリ

スレッド関連機能を提供するライブラリです。

int newThread()
スレッドを生成し、それに固有の識別番号である「スレッドID」を割り振って返します。
void deleteThread( int threadID )
スレッドを破棄します。
void startThread( int threadID )
スレッドの実行を開始します。
void waitForThread( int threadID )
スレッドの実行が終了するまで、呼び出し元の処理を待機します。
void sleepThread( int threadID, int milli )
スレッドの実行を一時停止します。
void sleepThread( int threadID, int milli, nano )
スレッドの実行を一時停止します。
void onThreadStart( int threadID )
スレッドが生成され、実行が開始した時にコールされます。この関数は、生成されたスレッドの処理として実行されます。ここに、スレッドに行わせたい処理を実装します。
void onThreadEnd( int threadID )
スレッドの処理が終了した時にコールされます。

Sound ライブラリ

サウンド関連機能を提供するライブラリです。

int newSound(string filePath)
サウンドファイルを読み込んでサウンドデータを生成し、それに固有の識別番号である「グラフィックスデータID」を割り振って返します。
void deleteSound(int soundID)
サウンドデータを破棄します。
void startSound(int soundID)
サウンドの再生を開始します。
void stopSound(int soundID)
サウンドの再生を一時停止します。
void setSoundGain(int soundID, float gain)
サウンドの音量ゲインを設定します。
void setSoundFrame(int soundID, int frame)
サウンドの再生位置をフレーム単位で設定します。
int getSoundFrame(int soundID)
サウンドの再生位置をフレーム単位で取得します。
int getSoundFrameLength(int soundID)
サウンドの長さをフレーム数単位で取得します。
void setSoundTime(int soundID, int milliSec)
サウンドの再生位置を時間単位(ミリ秒)で設定します。
int getSoundTime(int soundID)
サウンドの再生位置を時間単位(ミリ秒)で取得します。
int getSoundTimeLength(int soundID)
サウンドの長さを時間単位(ミリ秒)で取得します。
void onSoundStart( int soundID )
サウンドの再生が開始した際にコールされます。
void onSoundStop( int soundID )
サウンドの再生が停止した際にコールされます。
void onSoundEnd( int soundID )
サウンドの再生が終了した際にコールされます。

Color ライブラリ

色の制御機能を提供するライブラリです。

const int BLACK[ ]
黒色の色成分を格納する配列です。
const int WHITE[ ]
白色の色成分を格納する配列です。
const int RED[ ]
赤色の色成分を格納する配列です。
const int GREEN[ ]
緑色の色成分を格納する配列です。
const int BLUE[ ]
青色の色成分を格納する配列です。
const int MAGENTA[ ]
紫色(マゼンタ)の色成分を格納する配列です。
const int YELLOW[ ]
黄色の色成分を格納する配列です。
const int CYAN[ ]
水色(シアン)の色成分を格納する配列です。
int[ ] color(int red, int green, int blue, int alpha)
0 ? 255 の整数RGBA値から、色成分を格納する配列を生成して返します。
int[ ] color(int red, int green, int blue)
0 ? 255 の整数RGB値から、色成分(不透明色)を格納する配列を生成して返します。
int[ ] color(float red, float green, float blue, float alpha)
0.0 ? 1.0 の小数RGBA値から、色成分を格納する配列を生成して返します。
int[ ] color(float red, float green, float blue)
0.0 ? 1.0 の小数RGB値から、色成分(不透明色)を格納する配列を生成して返します。
int[ ] color(int hexCode)
16進数カラーコード値から、色成分(不透明色)を格納する配列を生成して返します。例として、青色である 0000ff を変換するには:int rgba[] = color(0x0000ff);などとします。0x は整数を16進数表記したい場合に付加するプレフィックスです。
int getColorCode(int rgba[ ])
色成分の配列を、カラーコード値に変換して返します。例として、紫色(マゼンタ)をカラーコードに変換するには:int rgba[] = { 255, 0, 255, 255 };int colorCode = getColorCode(rgba);string hexCode = hex(colorCode);などとします。変数 hexCode に得られる結果は 0xff00ff です。なお、緑色の場合は 0xff00、青色の場合は 0xff を得ます。より一般的なカラーコード形式に整形するには、先頭の 0x を除去し、6桁になるよう左からゼロ詰めなどを行ってください。そういった文字列処理には Text ライブラリを使用すると便利です。

GUI ライブラリ

GUIの生成や制御機能を提供するライブラリです。

const int MOUSE_LEFT
マウスの左ボタンを表す定数です。
const int MOUSE_MIDDLE
マウスの中央ボタンを表す定数です。
const int MOUSE_RIGHT
マウスの右ボタンを表す定数です。
const int MOUSE_SINGLE
マウスのシングルクリックを表す定数です。
const int MOUSE_DOUBLE
マウスのダブルクリックを表す定数です。
const int KEY_SPACE
スペースキーを表す定数です。
const int KEY_ENTER
エンターキーを表す定数です。
const int KEY_SHIFT
シフトキーを表す定数です。
const int KEY_ALT
Alt キーを表す定数です。
const int KEY_AT
@ キーを表す定数です。
const int KEY_TAB
Tab キーを表す定数です。
const int KEY_CONTROL
Ctrl キーを表す定数です。
const int KEY_BACK_SPACE
Backspace キーを表す定数です。
const int KEY_A
A キーを表す定数です。
const int KEY_B
B キーを表す定数です。
const int KEY_C
C キーを表す定数です。
const int KEY_D
D キーを表す定数です。
const int KEY_E
E キーを表す定数です。
const int KEY_F
F キーを表す定数です。
const int KEY_G
G キーを表す定数です。
const int KEY_H
H キーを表す定数です。
const int KEY_I
I キーを表す定数です。
const int KEY_J
J キーを表す定数です。
const int KEY_K
K キーを表す定数です。
const int KEY_L
L キーを表す定数です。
const int KEY_M
M キーを表す定数です。
const int KEY_N
N キーを表す定数です。
const int KEY_O
O キーを表す定数です。
const int KEY_P
P キーを表す定数です。
const int KEY_Q
Q キーを表す定数です。
const int KEY_R
R キーを表す定数です。
const int KEY_S
S キーを表す定数です。
const int KEY_T
T キーを表す定数です。
const int KEY_U
U キーを表す定数です。
const int KEY_V
V キーを表す定数です。
const int KEY_W
W キーを表す定数です。
const int KEY_X
X キーを表す定数です。
const int KEY_Y
Y キーを表す定数です。
const int KEY_Z
Z キーを表す定数です。
const int KEY_0
0 キーを表す定数です。
const int KEY_1
1 キーを表す定数です。
const int KEY_2
2 キーを表す定数です。
const int KEY_3
3 キーを表す定数です。
const int KEY_4
4 キーを表す定数です。
const int KEY_5
5 キーを表す定数です。
const int KEY_6
6 キーを表す定数です。
const int KEY_7
7 キーを表す定数です。
const int KEY_8
8 キーを表す定数です。
const int KEY_9
9 キーを表す定数です。
const int KEY_NUMPAD0
0 キーを表す定数です。
const int KEY_NUMPAD1
1 キーを表す定数です。
const int KEY_NUMPAD2
2 キーを表す定数です。
const int KEY_NUMPAD3
3 キーを表す定数です。
const int KEY_NUMPAD4
4 キーを表す定数です。
const int KEY_NUMPAD5
5 キーを表す定数です。
const int KEY_NUMPAD6
6 キーを表す定数です。
const int KEY_NUMPAD7
7 キーを表す定数です。
const int KEY_NUMPAD8
8 キーを表す定数です。
const int KEY_NUMPAD9
9 キーを表す定数です。
const int KEY_UP
上 キーを表す定数です。
const int KEY_DOWN
下 キーを表す定数です。
const int KEY_RIGHT
右 キーを表す定数です。
const int KEY_LEFT
左 キーを表す定数です。
const int KEY_INSERT
Insert キーを表す定数です。
const int KEY_HOME
Home キーを表す定数です。
const int KEY_DELETE
Delete キーを表す定数です。
const int KEY_END
End キーを表す定数です。
const int KEY_PAGE_UP
Page Up キーを表す定数です。
const int KEY_PAGE_DOWN
Page Down キーを表す定数です。
const int KEY_CAPS_LOCK
Caps Lock キーを表す定数です。
const int KEY_BACK_SLASH
バックスラッシュ キーを表す定数です。
const int KEY_SLASH
/ キーを表す定数です。
const int KEY_MINUS
- キーを表す定数です。
const int KEY_PLUS
+ キーを表す定数です。
const int KEY_NUMBER
lib/GUI.html# キーを表す定数です。
const int KEY_SEMICOLON
; キーを表す定数です。
const int KEY_COLON
: キーを表す定数です。
const int KEY_COMMA
, キーを表す定数です。
const int KEY_PERIOD
. キーを表す定数です。
const int KEY_UNDERSCORE
_ キーを表す定数です。
const int KEY_EXCLAMATION
! キーを表す定数です。
const int KEY_EQUALS
= キーを表す定数です。
const int KEY_DOLLAR
$ キーを表す定数です。
const int KEY_CIRCUMFLEX
^ キーを表す定数です。
const int KEY_LEFT_SQUARE_BRACKET
[ キーを表す定数です。
const int KEY_RIGHT_SQUARE_BRACKET
] キーを表す定数です。
const int KEY_LEFT_PARENTHESIS
( キーを表す定数です。
const int KEY_RIGHT_PARENTHESIS
) キーを表す定数です。
const int KEY_SEPARATOR
| キーを表す定数です。
const int KEY_ADD
加算キーを表す定数です。
const int KEY_SUBTRACT
減算キーを表す定数です。
const int KEY_DIVIDE
除算キーを表す定数です。
const int KEY_MULTIPLY
乗算キーを表す定数です。
const int KEY_F1
F1 キーを表す定数です。
const int KEY_F2
F2 キーを表す定数です。
const int KEY_F3
F3 キーを表す定数です。
const int KEY_F4
F4 キーを表す定数です。
const int KEY_F5
F5 キーを表す定数です。
const int KEY_F6
F6 キーを表す定数です。
const int KEY_F7
F7 キーを表す定数です。
const int KEY_F8
F8 キーを表す定数です。
const int KEY_F9
F9 キーを表す定数です。
const int KEY_F10
F10 キーを表す定数です。
const int KEY_F11
F11 キーを表す定数です。
const int KEY_F12
F12 キーを表す定数です。
const int KEY_F13
F13 キーを表す定数です。
const int KEY_F14
F14 キーを表す定数です。
const int KEY_F15
F15 キーを表す定数です。
const int KEY_F16
F16 キーを表す定数です。
const int KEY_F17
F17 キーを表す定数です。
const int KEY_F18
F18 キーを表す定数です。
const int KEY_F19
F19 キーを表す定数です。
const int KEY_F20
F20 キーを表す定数です。
const int INNER
GUIコンポーネントの内側を指定するための定数です。getComponentSize 関数で使用します。
const int OUTER
GUIコンポーネントの外側を指定するための定数です。getComponentSize 関数で使用します。
const int LISTED
リストアップされている項目全てを指定するための定数です。setComponentStringArray 関数や getComponentStringArray 関数で使用します。
const int SELECTED
選択されている項目全てを指定するための定数です。setComponentStringArray 関数や getComponentStringArray 関数で使用します。
void mountComponent( int componentID, int parentComponentID )
GUIコンポーネントを、別のGUIコンポーネント上に配置します。
void addComponent( int componentID, int parentComponentID )
GUIコンポーネントを、別のGUIコンポーネント上に配置します。VCSSL 3 以降では、より新しい mountComponent 関数がサポートされています。この関数は互換目的でサポートされています。
void demountComponent( int componentID, int parentComponentID )
GUIコンポーネントを配置解除します。
void removeComponent( int componentID, int parentComponentID )
GUIコンポーネントを配置解除します。VCSSL 3 以降では、より新しい demountComponent 関数がサポートされています。この関数は互換目的でサポートされています。
void deleteComponent( int componentID )
GUIコンポーネントを破棄します。
int newWindow( int x, int y, int w, int h, string title )
ウィンドウを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newButton( int x, int y, int w, int h, string text )
ボタンを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newTextField( int x, int y, int w, int h, string text )
テキストフィールド( 1行のテキストを入力するコンポーネント )を生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newTextArea( int x, int y, int w, int h, string text )
テキストエリア( 複数行のテキストを入力するコンポーネント )を生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newTextLabel( int x, int y, int w, int h, string text )
テキストラベル( 1行のテキストを表示するコンポーネント )を生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newGraphicsLabel( int x, int y, int w, int h, int graphicsID )
グラフィックスラベル( 描画内容や画像を表示するコンポーネント )を生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newCheckBox( int x, int y, int w, int h, string text, boolean b )
チェックボックスを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newSelectField( int x, int y, int w, int h, string str[ ] )
セレクトフィールド( 選択肢から1つの項目を選択可能な、1行のコンポーネント )を生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newSelectArea( int x, int y, int w, int h, string str[ ] )
セレクトエリア( 選択肢から複数項目を選択可能な、複数行のコンポーネント )を生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newVerticalSlider( int x, int y, int w, int h, float value )
0.0 ? 1.0 の範囲でfloat 値を操作する垂直スライダーを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newVerticalSlider( int x, int y, int w, int h, float value, float min, float max )
float 値を操作する垂直スライダーを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newVerticalSlider( int x, int y, int w, int h, int value, int min, int max )
int 値を操作する垂直スライダーを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newHorizontalSlider( int x, int y, int w, int h, float value )
0.0 ? 1.0 の範囲でfloat 値を操作する水平スライダーを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newHorizontalSlider( int x, int y, int w, int h, float value, float min, float max )
float 値を操作する水平スライダーを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newHorizontalSlider( int x, int y, int w, int h, int value, int min, int max )
int 値を操作する水平スライダーを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newPanel( int x, int y, int w, int h, string title )
任意座標レイアウト用のパネルを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newGridPanel( int x, int y, int w, int h, string title, int rows, int columns )
グリッド配置用のパネルを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newFlowPanel( int x, int y, int w, int h, string title )
フロー配置用のパネルを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。
int newTabPanel( int x, int y, int w, int h, string title )
タブ表示用のパネルを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。このパネルの上に、別のパネルを配置して使用します。
int newScrollPanel( int x, int y, int w, int h, string title )
スクロール表示用のパネルを生成し、固有の識別番号(GUIコンポーネントID)を割り振って返します。このパネルの上に、別のパネルを配置して使用します。
macro paintComponent( int componentID )
GUIコンポーネントを再描画します。再描画は、表示内容のテキストやグラフィックスデータが変化した際に必要です。及び自身に配置されている子コンポーネントの表示内容が変化した際にも必要となります。
void setComponentLocation( int componentID, int x, int y )
GUIコンポーネントの位置を設定します。
int[ ] getComponentLocation( int componentID )
GUIコンポーネントの位置を取得します。
void setComponentSize( int componentID, int width, int height )
GUIコンポーネントの大きさを設定します。
int[ ] getComponentSize( int componentID )
GUIコンポーネントの大きさを取得します。
int[ ] getComponentSize( int componentID, int option )
GUIコンポーネントの特定部分の大きさを取得します。
void setComponentColor( int componentID, int fr, int fg, int fb, int fa, int br, int bg, int bb, int ba )
GUIコンポーネントの色を設定します。
void setComponentColor( int componentID, int fgRGBA[ ], int bgRGBA[ ] )
GUIコンポーネントの色を設定します。
macro getComponentColor( int componentID )
GUIコンポーネントの色を返します。
void setComponentText( int componentID, string text )
GUIコンポーネントのテキスト情報を設定します。
string getComponentText( int componentID )
GUIコンポーネントのテキスト情報を取得します。
void setComponentText( int componentID, string text[ ], int option )
GUIコンポーネントのテキスト情報を設定します。
string[ ] getComponentText( int componentID, int option )
GUIコンポーネントのテキスト情報を設定します。
void setComponentGraphics( int componentID, int graphicsID )
GUIコンポーネントのグラフィックスデータIDを設定します。
int getComponentGraphics( int componentID )
GUIコンポーネントのグラフィックスデータIDを返します。
void showComponent( int componentID )
GUIコンポーネントの非表示にします。
void hideComponent( int componentID )
GUIコンポーネントの表示します。
void setComponentFont( int componentID, string name )
GUIコンポーネントのフォントを設定します
void setComponentFontSize( int componentID, int size )
GUIコンポーネントのフォントサイズを設定します
void setComponentFontBold( int componentID, bool isBold )
GUIコンポーネントのフォントを太字に設定または解除します。イタリック体と併用はできません。
void setComponentFontItalic( int componentID, bool isItalic )
GUIコンポーネントのフォントをイタリック体に設定または解除します。太字と併用はできません。
void setComponentFloat( int componentID, float value )
GUIコンポーネントが保持する float 型の値を設定します。
float getComponentFloat( int componentID )
GUIコンポーネントが保持する float 型の値を返します。
void setComponentInt( int componentID, int value )
GUIコンポーネントが保持する int 型の値を設定します。
int getComponentInt( int componentID )
GUIコンポーネントが保持する int 型の値を返します。
void setComponentBool( int componentID, bool state )
GUIコンポーネントが保持する bool 型の値を設定します。
bool getComponentBool( int componentID )
GUIコンポーネントが保持する bool 型の値を返します。
void setComponentString( int componentID, string text )
GUIコンポーネントが保持する string 型の値を設定します。
string getComponentString( int componentID )
GUIコンポーネントが保持する string 型の値を返します。
void setComponentStringArray( int componentID, string text[ ], int option )
GUIコンポーネントが保持する string 型配列の値を設定します。
string[ ] getComponentStringArray( int componentID, int option )
GUIコンポーネントが保持する string 型配列の値を返します。
void setComponentIntArray( int componentID, int value[ ] )
GUIコンポーネントが保持する int 型配列の値を設定します。
int[ ] getComponentIntArray( int componentID )
GUIコンポーネントが保持する int 型配列の値を返します。
void onWindowOpen( int componentID )
ウィンドウが開いた際にコールされます。
void onWindowClose( int componentID )
ウィンドウが閉じられた際にコールされます。
void onWindowMove( int componentID, int x, int y )
ウィンドウが動かされた際にコールされます。
void onWindowResize( int componentID, int width, int height )
ウィンドウがリサイズされた際にコールされます。
void onWindowShow( int componentID )
ウィンドウが可視化された際にコールされます。
void onWindowHide( int componentID )
ウィンドウが不可視化された際にコールされます。
void onButtonClick( int componentID, string text )
ボタンが押された際にコールされます。
void onSelectFieldClick( int componentID, string text )
セレクトフィールドの項目が選択された際にコールされます。
void onCheckBoxClick( int componentID, bool value )
チェックボックスの項目が選択または解除された際にコールされます。
void onSliderMove( int componentID, int value )
int値のスライダーが操作された際にコールされます。
void onSliderMove( int componentID, float value )
float値のスライダーが操作された際にコールされます。
void onKeyDown( int componentID, string keyLabel )
キーボードのキーが押された際にコールされます。
void onKeyDown( int componentID, string keyConstant )
キーボードのキーが押された際にコールされます。
void onKeyUp( int componentID, string keyLabel )
キーボードのキーが離された際にコールされます。
void onKeyUp( int componentID, string keyConstant )
キーボードのキーが離された際にコールされます。
void onMouseDown( int componentID, int x, int y, int button )
マウスのボタンが押された際にコールされます。
void onMouseUp( int componentID, int x, int y, int button )
マウスのボタンが離された際にコールされます。
void onMouseClick( int componentID, int x, int y, int button, int count )
マウスがクリックされた際にコールされます。
void onMouseClick( int componentID, int x, int y, int button, int count )
マウスがドラッグされた際にコールされます。
void onMouseScroll( int componentID, int degree )
マウスホイールがスクロールされた際にコールされます。

Graphics2D ライブラリ

2DCG(2次元グラフィックス)機能を提供するライブラリです。

int newGraphics2DRenderer( int width, int height, int graphicsID )
2DCGレンダラ?を生成し、固有の識別番号( レンダラ?ID )を割り振って返します。
void deleteGraphics2DRenderer( int rendererID )
2DCGレンダラ?を破棄します。
macro paintGraphics2D( int rendererID )
スプライトを合成し、2DCGを描画します。
macro clearGraphics2D( int rendererID )
描画内容を背景色でクリアします。
macro clearGraphics2D( int rendererID, bool removeAll )
描画内容を背景色でクリアし、必要であれば全てのスプライトを配置解除します。
macro setGraphics2DColor( int rendererID, int red, int green, int blue, int alpha )
背景色を設定します。
void setGraphics2DColor( int rendererID, int rgba[ ] )
背景色を設定します。
macro setGraphics2DSize( int rendererID, int width, int height )
描画領域の大きさを設定します。
macro setDrawColor( int rendererID, int red, int green, int blue, int alpha )
描画色を設定します。
void setDrawColor( int rendererID, int rgba[ ] )
描画色を設定します。
void setDrawFont( int rendererID, string name )
テキスト描画に使用するフォントを設定します
void setDrawFontSize( int rendererID, int size )
テキスト描画に使用するフォントのサイズを設定します
void setDrawFontBold( int rendererID, bool isBold )
テキスト描画に使用するフォントを太字に設定または解除します。イタリック体と併用はできません。
void setDrawFontItalic( int rendererID, bool isItalic )
テキスト描画に使用するフォントをイタリック体に設定または解除します。太字と併用はできません。
macro drawLine( int rendererID, int vertex_x1, int vertex_y1, int vertex_x2, int vertex_y2 )
直線(線分)を描画します。
macro drawLine( int rendererID, int vertex_x1, int vertex_y1, int vertex_x2, int vertex_y2, int lineWidth )
任意の太さで、直線(線分)を描画します。
macro drawOval( int rendererID, int vertex_x, int vertex_y, int width, int height, bool fill )
楕円を描画します。
macro drawRect( int rendererID, int vertex_x, int vertex_y, int width, int height, bool fill )
長方形を描画します。
macro drawPolyline( int rendererID, int vertex_x[ ], int vertex_y[ ] )
折れ線を描画します。
macro drawPolyline( int rendererID, int vertex_x[ ], int vertex_y[ ], int lineWidth )
任意の太さで、折れ線を描画します。
macro drawPolygon( int rendererID, int vertex_x[ ], int vertex_y[ ], bool fill )
多角形を描画します。
macro drawPolygon( int rendererID, int vertex_x[ ], int vertex_y[ ], int lineWidth )
任意の太さで、多角形を描画します。
macro drawText( int rendererID, int vertex_x, int vertex_y, string textString )
テキストを1行で描画します。
macro drawText( int rendererID, int vertex_x, int vertex_y, int width, int height, string textString )
テキストを、折り返しながら複数行で描画します。
macro drawGraphics( int rendererID, int vertex_x, int vertex_y, int graphicsID )
別のレンダラ?の描画結果や、画像ファイルなどから生成したグラフィックスデータを読み込み、その内容を描画します。
macro drawGraphics( int rendererID, int vertex_x, int vertex_y, int width, int height, int graphicsID )
別のレンダラ?の描画結果や、画像ファイルなどから生成したグラフィックスデータを読み込み、その内容をリサイズして描画します。
void drawGraphics( int rendererID, int x, int y, int width, int height, int baseX, int baseY, int baseWidth, int baseHeight, int graphicsID )
別のレンダラ?の描画結果や、画像ファイルなどから生成したグラフィックスデータを読み込み、その内容から指定領域を抜き出して描画します。
macro setPixel( int rendererID, int red[ ][ ], int green[ ][ ], int blue[ ][ ], int alpha[ ][ ] )
描画内容を、ピクセル色成分配列で直接的に設定します。
macro setPixel( int rendererID, int rgba[ ][ ][ ] )
描画内容を、ピクセル色成分配列で直接的に設定します。
void drawPixel( int rendererID, int x, int y, int red[ ][ ], int green[ ][ ], int blue[ ][ ], int alpha[ ][ ] )
現在の描画内容の上に、ピクセル色成分配列の内容を重ねて描画します。
void drawPixel( int rendererID, int x, int y, int rgba[ ][ ][ ] )
現在の描画内容の上に、ピクセル色成分配列の内容を重ねて描画します。
void drawPixel( int rendererID, int x, int y, int width, int height, int red[ ][ ], int green[ ][ ], int blue[ ][ ], int alpha[ ][ ] )
現在の描画内容の上に、ピクセル色成分配列の内容をリサイズした上で、重ねて描画します。
void drawPixel( int rendererID, int x, int y, int width, int height, int rgba[ ][ ][ ] )
現在の描画内容の上に、ピクセル色成分配列の内容をリサイズした上で、重ねて描画します。
void drawPixel( int rendererID, int x, int y, int width, int height, int baseX, int baseY, int baseWidth, int baseHeight, int red[ ][ ], int green[ ][ ], int blue[ ][ ], int alpha[ ][ ] )
現在の描画内容の上に、ピクセル色成分配列の内容から指定領域を抜き出し、重ねて描画します。
void drawPixel( int rendererID, int x, int y, int width, int height, int baseX, int baseY, int baseWidth, int baseHeight, int rgba[ ][ ][ ] )
現在の描画内容の上に、ピクセル色成分配列の内容から指定領域を抜き出し、重ねて描画します。
int[ ][ ][ ] getPixel( int rendererID )
描画領域の保持する内容を、ピクセル色成分配列に変換して返します。
int[ ][ ] getPixelRed( int rendererID )
描画領域の保持する内容を、ピクセルの赤色成分配列に変換して返します。
int[ ][ ] getPixelGreen( int rendererID )
描画領域の保持する内容を、ピクセルの緑色成分配列に変換して返します。
int[ ][ ] getPixelBlue( int rendererID )
描画領域の保持する内容を、ピクセルの青色成分配列に変換して返します。
int[ ][ ] getPixelAlpha( int rendererID )
描画領域の保持する内容を、ピクセルのα値成分配列に変換して返します。
int newLineSprite( int x1, int y1, int x2, int y2 )
直線(線分)スプライトを生成し、固有の識別番号( スプライトID )を返します。
int newOvalSprite( int x, int y, int width, int height, bool fill )
楕円スプライトを生成し、固有の識別番号( スプライトID )を返します。
int newRectSprite( int x, int y, int width, int height, bool fill )
長方形スプライトを生成し、固有の識別番号( スプライトID )を返します。
int newPolylineSprite( int x[ ], int y[ ] )
折れ線スプライトを生成し、固有の識別番号( スプライトID )を返します。
int newPolygonSprite( int x[ ], int y[ ], bool fill )
多角形スプライトを生成し、固有の識別番号( スプライトID )を返します。
int newGraphicsSprite( int x, int y, int width, int height, int graphicsID )
グラフィックスデータスプライトを生成し、固有の識別番号( スプライトID )を返します。
int newTextSprite( int x, int y, int width, int height, string text )
テキストプライトを生成し、固有の識別番号( スプライトID )を返します。
void deleteSprite( int spriteID )
スプライトを破棄します。
void mountSprite( int spriteID, int rendererID )
スプライトを配置します。
void addSprite( int spriteID, int rendererID )
スプライトを配置します。VCSSL 3 以降では、より新しい mountSprite 関数がサポートされています。この関数は互換目的でサポートされています。
void demountSprite( int spriteID, int rendererID )
スプライトを配置解除します。
void removeSprite( int spriteID, int rendererID )
スプライトを配置解除します。VCSSL 3 以降では、より新しい demountSprite 関数がサポートされています。この関数は互換目的でサポートされています。
macro setSpriteDepth( int spriteID, double vertex_z )
スプライトの深度を設定します。スプライトは、深度の値が大きいほど奥に、小さいほど手前に表示されます。
macro setSpriteLocation( int spriteID, int vertex_x, int vertex_y )
スプライトの位置を設定します。
macro setSpriteSize( int spriteID, int width, int height )
スプライトの大きさを設定します。
macro setSpriteClip( int spriteID, int clip_x, int clip_y, int clip_width, int clip_height )
スプライトのクリップ情報を設定します。
macro setSpriteColor( int spriteID, int red, int green, int blue, int alpha )
スプライトの色を設定します。
void setSpriteColor( int spriteID, int rgba[ ] )
スプライトの色を設定します。
macro setSpriteFill( int spriteID, bool fillState )
スプライトを塗りつぶすかどうか設定します。
macro setSpriteText( int spriteID, string textString )
スプライトのテキストを設定します。
macro setSpriteGraphics( int spriteID, int graphicsID )
スプライトのグラフィックスデータを設定します。
void setSpriteFont( int spriteID, string name )
スプライトのテキスト描画に使用するフォントを設定します
void setSpriteFontSize( int spriteID, int size )
スプライトのテキスト描画に使用するフォントのサイズを設定します
void setSpriteFontBold( int spriteID, bool isBold )
スプライトのテキスト描画に使用するフォントを太字に設定または解除します。イタリック体と併用はできません。
void setSpriteFontItalic( int spriteID, bool isItalic )
スプライトのテキスト描画に使用するフォントをイタリック体に設定または解除します。太字と併用はできません。

Graphics3D ライブラリ

3DCG(3次元グラフィックス)機能を提供するライブラリです。

const int QUADRANGLE_LIST
四角形ポリゴン集合の座標値を素直に配列化した座標値配列形式です。newModel 関数などで使用します。
const int QUADRANGLE_GRID
面状に並ぶ四角形ポリゴンにおいて、格子点の座標値を配列化した座標値配列形式です。newModel 関数などで使用します。
const int TRIANGLE_LIST
三角形ポリゴン集合の座標値を素直に配列化した座標値配列形式です。newModel 関数などで使用します。
const int TRIANGLE_FAN
扇状に並ぶ三角形ポリゴンにおいて、中心と弧の座標値を配列化した座標値配列形式です。newModel 関数などで使用します。
const int TRIANGLE_STRIP
連なって並列する三角形ポリゴンにおいて、隣接三角形が頂点を共有する座標値配列形式です。newModel 関数などで使用します。
const int VIEW
ビュー座標系でを表す定数です。setPolygonVertexOffset 関数や setModelVertexOffset 関数で使用します。
const int LOCAL
ローカル座標系を表す定数です。setPolygonVertexOffset 関数や setModelVertexOffset 関数で使用します。
int newGraphics3DRenderer( int width, int height, int graphicsID )
3DCGレンダラ?を生成し、固有の識別番号( レンダラ?ID )を割り振って返します。
void deleteGraphics3DRenderer( int rendererID )
2DCGレンダラ?を破棄します。
macro paintGraphics3D( int rendererID )
3DCGを描画します。
macro clearGraphics3D( int rendererID, bool removeModel, bool removeLight, bool removeCoordinate )
描画内容を背景色でクリアし、必要であれば全ての立体( モデル及びポリゴン )、光源、座標系を配置解除します。
void setGraphics3DMagnification( int rendererID, float magnification )
描画倍率を設定します。視点から 1.0 の距離にある、長さ 1.0 の直線が、magnification ピクセルの長さになるように描画されます。 setGraphics3DDistance 関数と組み合わせる事で、遠近感の強弱を調整する事もできます。近くのものを縮小して表示すると、遠近感が強調されます。遠くの物を拡大して表示すると、遠近感が弱まります。
void setGraphics3DAngle( int rendererID, float angle )
画角を設定します。
void setGraphics3DDistance( int rendererID, float distance )
画面と注視点との間の距離を設定します。この関数をコールすると、ワールド座標系の原点が、必ずビュー座標系のZ軸上にあるように配置調整されます。そして、ワールド座標系とビュー座標系との原点間距離が、引数 distance に指定された値となります。setGraphics3DMagnification 関数と組み合わせる事で、遠近感の強弱を調整する事もできます。近くのものを縮小して表示すると、遠近感が強調されます。遠くの物を拡大して表示すると、遠近感が弱まります。
void setGraphics3DCenter( int rendererID, int x, int y )
描画中心座標を設定します。ここでの描画中心座標とは、画面上において、ビュー座標系の原点と一致する位置であり、「絵」としてはいわゆる「(一点透視法の)消失点」の位置です。例えば、カメラアングルが同じでも、画面中心を下寄り ( 小さめのY座標 ) に設定すると、空が多めに映ります。逆に上寄り( 大きめのY座標 )に設定すると、地面が多めに映ります。
void setGraphics3DClip( int rendererID, float frontClipZ, float backClipZ )
遠近クリップを設定します。
void setGraphics3DColor( int rendererID, int red, int green, int blue, int alpha )
背景色を設定します。
void setGraphics3DColor( int rendererID, int rgba[ ] )
背景色を設定します。
void setGraphics3DSize( int rendererID, int width, int height )
描画領域の大きさを設定します。
void setGraphics3DDefaultEventHandler( int rendererID, int componentID )
指定された画面表示用GUIコンポーネントに対するマウス/キー操作を、3DCG映像の直感的な操作に関連付ける、デフォルトのイベントハンドラを自動生成します。
int newQuadranglePolygon( float ax, float ay, float az, float bx, float by, float bz, float cx, float cy, float cz, float dx, float dy, float dz )
四角形ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newQuadranglePolygon( int aVectorID, int bVectorID, int cVectorID, int dVectorID )
四角形ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newTrianglePolygon( float ax, float ay, float az, float bx, float by, float bz, float cx, float cy, float cz )
三角形ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newTrianglePolygon( int aVectorID, int bVectorID, int cVectorID )
三角形ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newLinePolygon( float ax, float ay, float az, float bx, float by, float bz )
線ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newLinePolygon( float ax, float ay, float az, float bx, float by, float bz, float width )
線ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newLinePolygon( int aVectorID, int bVectorID )
線ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newLinePolygon( int aVectorID, int bVectorID, float width )
線ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newPointPolygon( float ax, float ay, float az, float size )
点ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newPointPolygon( int vectorID, float size )
点ポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newTextPolygon( float ax, float ay, float az, float size, string text )
テキストポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newTextPolygon( int vectorID, float size, string text )
テキストポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newGraphicsPolygon( float ax, float ay, float az, float width, float height, int graphicsID )
グラフィックスポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newGraphicsPolygon( int vectorID, float width, float height, int graphicsID )
グラフィックスポリゴンを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
int newPolygon( int copyID )
既存ポリゴンのコピーを生成し、固有の識別番号( ポリゴンID )を割り振って返します。
void deletePolygon( int polygonID )
ポリゴンを破棄します。
void mountPolygon( int polygonID, int rendererID )
ポリゴンをワールド座標系上に配置登録します。
void mountPolygon( int polygonID, int rendererID, int coordinateID )
ポリゴンを任意の座標系上に配置登録します。
int demountPolygon( int polygonID, int rendererID )
ポリゴンをワールド座標系上から配置解除します。
int demountPolygon( int polygonID, int rendererID, int coordinateID )
ポリゴンを任意の座標系上から配置解除します。
macro movePolygon( int polygonID, float deltaX, float deltaY, float deltaZ )
ポリゴンを平行移動させます。
void movePolygon( int polygonID, int deltaVectorID )
ポリゴンを平行移動させます。
macro rotPolygonX( int polygonID, float angle )
ポリゴンをX軸まわりに回転させます。
macro rotPolygonY( int polygonID, float angle )
ポリゴンをY軸まわりに回転させます。
macro rotPolygonZ( int polygonID, float angle )
ポリゴンをZ軸まわりに回転させます。
macro rotPolygon( int polygonID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、ポリゴンを回転させます。
void rotPolygon( int polygonID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ポリゴンを回転させます。
macro rotPolygon( int polygonID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、ポリゴンを回転させます。
void rotPolygon( int polygonID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ポリゴンを回転させます。
macro scalePolygon( int polygonID, float rateX, float rateY, float rateZ )
ポリゴンを拡大または縮小します。
void reversePolygon( int polygonID )
ポリゴンの裏表を反転させます。
void mirrorPolygon( int polygonID, bool mx, bool my, bool mz )
ポリゴンの頂点座標値を鏡像反転させます。なお、1つの軸方向に鏡像反転させるごとに、ポリゴンの裏表が反転するため、reversePolygon 関数で面の向きを補正してください。
macro setPolygonVertex( int polygonID, float vertex_ax, float vertex_ay, float vertex_az )
ポリゴンの頂点座標値を設定します。
macro setPolygonVertex( int polygonID, float vertex_ax, float vertex_ay, float vertex_az, float vertex_bx, float vertex_by, float vertex_bz )
ポリゴンの頂点座標値を設定します。
macro setPolygonVertex( int polygonID, float vertex_ax, float vertex_ay, float vertex_az, float vertex_bx, float vertex_by, float vertex_bz, float vertex_cx, float vertex_cy, float vertex_cz )
ポリゴンの頂点座標値を設定します。
macro setPolygonVertex( int polygonID, float vertex_ax, float vertex_ay, float vertex_az, float vertex_bx, float vertex_by, float vertex_bz, float vertex_cx, float vertex_cy, float vertex_cz, float vertex_dx, float vertex_dy, float vertex_dz )
ポリゴンの頂点座標値を設定します。
void setPolygonVertex( int polygonID, float vertex[ ][ ] )
ポリゴンの頂点座標値を設定します。
void setPolygonVertex( int polygonID, ... int vectorID[ ] )
ポリゴンの頂点座標値を設定します。
float[ ][ ] getPolygonVertex( int polygonID )
ポリゴンの頂点座標値を取得します。
void getPolygonVertex( int polygonID, ... int vectorID[ ] )
ポリゴンの頂点座標値を取得し、引数に指定されたベクトルに代入します。
void setPolygonColor( int polygonID, int red, int green, int blue, int alpha )
ポリゴンの色を設定します。
void setPolygonColor( int polygonID, int rgba[ ] )
ポリゴンの色を設定します。
int[ ][ ] getPolygonColor( int polygonID )
ポリゴンの色を取得します。
macro setPolygonSize( int polygonID, float value )
ポリゴンの大きさ情報を設定します。
macro setPolygonSize( int polygonID, float width, float height )
ポリゴンの幅および高さを設定します。
macro setPolygonText( int polygonID, string textString )
ポリゴンのテキスト情報を設定します。
macro setPolygonGraphics( int polygonID, int graphicsID )
ポリゴンのグラフィックスデータを設定します。
macro setPolygonFill( int polygonID, bool fillState )
ポリゴンの塗りつぶし情報を設定します。
void setPolygonCull( int polygonID, bool frontCulling, bool backCulling )
ポリゴンのカリング情報を設定します。
void setPolygonVertexOffset( int polygonID, float offsetX, float offsetY, float offsetZ, int offsetMode )
ポリゴンの位置をずらして描画するための、オフセット値を設定します。
macro setPolygonVertexOffset( int polygonID, int vectorID, int offsetMode )
ポリゴンの位置をずらして描画するための、オフセット値を設定します。
void setPolygonDepthOffset( int polygonID, float offsetX, float offsetY, float offsetZ, int offsetMode )
ポリゴンの前後判定において、ポリゴンが本来よりもずれた位置にあると見なして、前後関係を計算するための、オフセット値を設定します。
macro setPolygonDepthOffset( int polygonID, int vectorID, int offsetMode )
ポリゴンの前後判定において、ポリゴンが本来よりもずれた位置にあると見なして、前後関係を計算するための、オフセット値を設定します。
void setPolygonDiffuse( int polygonID, float rate )
ポリゴンの拡散光反射係数を設定します。
void setPolygonDiffractive( int polygonID, float rate )
ポリゴンの回折光反射係数を設定します。
void setPolygonAmbient( int polygonID, float rate )
ポリゴンの環境光反射係数を設定します。
void setPolygonEmissive( int polygonID, float rate )
ポリゴンの自発光係数を設定します。
void setPolygonSpecular( int polygonID, float rate, float angle )
ポリゴンのスペキュラ反射係数を設定します。
void transformPolygon( int polygonID, int transformedPolygonID, int coordinateID )
ポリゴンを座標変換し、結果を引数に指定されたポリゴンに代入します。なお、対象ポリゴンと、結果を代入するポリゴンは、必ず頂点数が等しい同型のポリゴンである必要があります。
bool getPolygonIntersection( int polygonID, int directionalVectorID, int pointVectorID, int intersectionVectorID, int normalVectorID )
ポリゴンと半直線との交点と法線を求め、結果を引数に指定されたベクトルに代入します。
int newAxisModel( float lx, float ly, float lz )
座標軸モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newSphereModel( float rx, float ry, float rz, int n1, int n2 )
球モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newBoxModel( float lx, float ly, float lz )
箱型モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newBoxModel( float lx, float ly, float lz, int nx, int ny, int nz )
箱型モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newCylinderModel( float rx, float ry, float height, int n1, int n2 )
底付きの円筒モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newTubeModel( float rx, float ry, float height, int n1, int n2 )
底なしの円筒モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newConeModel( float rx, float ry, float height, int n1, int n2 )
底付きの円錐モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newShadeModel( float rx, float ry, float height, int n1, int n2 )
底なしの円錐モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newDiskModel( float rx, float ry, int n1 )
円盤モデルを生成し、固有の識別番号( モデルID )を割り振って返します。
int newModel( int copyID )
既存モデルのコピーを生成し、固有の識別番号( モデルID )を割り振って返します。
int newModel( int polygonID[ ] )
ポリゴンの配列からモデルを生成し、固有の識別番号( モデルID )を割り振って返します。
macro newModel( float vertex[ ][ ], int format )
座標値配列からモデルを生成し、固有の識別番号( モデルID )を割り振って返します。
macro newModel( float vertex[ ][ ][ ], int format )
座標値配列からモデルを生成し、固有の識別番号( モデルID )を割り振って返します。
void deleteModel( int modelID )
モデルを破棄します。
void mountModel( int modelID, int rendererID )
モデルをワールド座標系上に配置登録します。
void mountModel( int modelID, int rendererID, int coordinateID )
モデルを任意の座標系上に配置登録します。
int demountModel( int modelID, int rendererID )
モデルをワールド座標系上から配置解除します。
int demountModel( int modelID, int rendererID, int coordinateID )
モデルを任意の座標系上から配置解除します。
macro moveModel( int modelID, float deltaX, float deltaY, float deltaZ )
モデルを平行移動させます。
void moveModel( int modelID, int deltaVectorID )
モデルを平行移動させます。
macro rotModelX( int modelID, float angle )
モデルをX軸まわりに回転させます。
macro rotModelY( int modelID, float angle )
モデルをY軸まわりに回転させます。
macro rotModelZ( int modelID, float angle )
モデルをZ軸まわりに回転させます。
macro rotModel( int modelID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、モデルを回転させます。
void rotModel( int modelID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、モデルを回転させます。
macro rotModel( int modelID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、モデルを回転させます。
void rotModel( int modelID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、モデルを回転させます。
macro scaleModel( int modelID, float rateX, float rateY, float rateZ )
モデルを拡大または縮小します。
void reverseModel( int modelID )
モデルを構成するポリゴンの裏表を反転させます。
void mirrorModel( int modelID, bool mx, bool my, bool mz )
モデルの頂点座標値を鏡像反転させます。なお、1つの軸方向に鏡像反転させるごとに、モデルを構成するポリゴンの裏表が反転するため、reverseModel 関数で面の向きを補正してください。
void setModelColor( int modelID, int r, int g, int b, int a )
モデルの色を設定します。
void setModelColor( int modelID, int rgba[ ] )
モデルの色を設定します。
macro setModelColor( int modelID, int color[ ][ ] )
モデルの色を設定します。
void setModelPolygonColor( int modelID, int polygonIndex, int red, int green, int blue, int alpha )
モデルを構成するポリゴンの色を設定します。
void setModelPolygonColor( int modelID, int polygonIndex, int rgba[ ] )
モデルを構成するポリゴンの色を設定します。
float[ ][ ] getModelPolygonColor( int modelID, int polygonIndex )
モデルを構成するポリゴンの色を取得します。
void setModelFill( int polygonID, bool fill )
モデルの塗りつぶし情報を設定します。
void setModelCull( int modelID, bool frontCulling, bool backCulling )
モデルのカリング情報を設定します。
void setModelSize( int modelID, ... float size[ ] )
モデルのサイズ情報を設定します。
macro setModelVertex( int modelID, float vertex[ ][ ], int format )
モデルの頂点座標値を設定します。
macro setModelVertex( int modelID, float vertex[ ][ ][ ], int format )
モデルの頂点座標値を設定します。
void setModelPolygonVertex( int modelID, int polygonIndex, float vertex[ ][ ] )
モデルを構成するポリゴンの頂点座標値を設定します。
void setModelPolygonVertex( int modelID, int polygonIndex, float vertex_ax, float vertex_ay, float vertex_az )
モデルを構成するポリゴンの頂点座標値を設定します。
void setModelPolygonVertex( int modelID, int polygonIndex, float vertex_ax, float vertex_ay, float vertex_az, float vertex_bx, float vertex_by, float vertex_bz )
モデルを構成するポリゴンの頂点座標値を設定します。
void setModelPolygonVertex( int modelID, int polygonIndex, float vertex_ax, float vertex_ay, float vertex_az, float vertex_bx, float vertex_by, float vertex_bz, float vertex_cx, float vertex_cy, float vertex_cz )
モデルを構成するポリゴンの頂点座標値を設定します。
void seModeltPolygonVertex( int modelID, int polygonIndex, float vertex_ax, float vertex_ay, float vertex_az, float vertex_bx, float vertex_by, float vertex_bz, float vertex_cx, float vertex_cy, float vertex_cz, float vertex_dx, float vertex_dy, float vertex_dz )
モデルを構成するポリゴンの頂点座標値を設定します。
void setModelPolygonVertex( int modelID, int polygonIndex, ... int vectorID[ ] )
モデルを構成するポリゴンの頂点座標値を設定します。
void getModelPolygonVertex( int modelID, int polygonIndex, ... int vectorID[ ] )
モデルを構成するポリゴンの頂点座標値を取得し、引数に指定されたベクトルに代入します。
float[ ][ ] getModelPolygonVertex( int modelID, int polygonIndex )
モデルを構成するポリゴンの頂点座標値を取得します。
void setModelVertexOffset( int modelID, float offsetX, float offsetY, float offsetZ, int offsetMode )
モデルの位置をずらして描画するための、オフセット値を設定します。
macro setModelVertexOffset( int modelID, int vectorID, int offsetMode )
モデルの位置をずらして描画するための、オフセット値を設定します。
void setModelDepthOffset( int modelID, float offsetX, float offsetY, float offsetZ, int offsetMode )
モデルを構成するポリゴンの前後判定において、ポリゴンが本来よりもずれた位置にあると見なして、前後関係を計算するための、オフセット値を設定します。
macro setModelDepthOffset( int modelID, int vectorID, int offsetMode )
モデルを構成するポリゴンの前後判定において、ポリゴンが本来よりもずれた位置にあると見なして、前後関係を計算するための、オフセット値を設定します。
void setModelDiffuse( int id, float rate )
モデルの拡散光反射係数を設定します。
void setModelDiffractive( int id, float rate )
モデルの回折光反射係数を設定します。
void setModelAmbient( int id, float rate )
モデルの環境光反射係数を設定します。
void setModelEmissive( int id, float rate )
モデルの自発光係数を設定します。
void setModelSpecular( int id, float rate, float angle )
モデルのスペキュラ反射係数を設定します。
void transformModel( int modelID, int transformedModelID, int coordinateID )
モデルを座標変換し、結果を引数に指定されたモデルに代入します。なお、対象モデルと、結果を代入するモデルは、必ず頂点数が等しい同型のモデルである必要があります。
bool getModelIntersection( int modelID, int directionalVectorID, int pointVectorID, int intersectionVectorID, int normalVectorID )
モデルと半直線との交点と法線を求め、結果を引数に指定されたベクトルに代入します。
int newLight( float x, float y, float z, float power )
ライトを生成し、固有のID番号( ライトID )を割り振って返します。なお、この関数では newDirectionalLight 関数で生成される方向性ライトと同じものが生成されます。将来的には、より拡張されたライトを生成するようになるかもしれませんが、現状では全く違いはありません。
int newLight( int copyID )
ライトのコピーを生成し、固有のID番号( ライトID )を割り振って返します。
int newDirectionalLight( float x, float y, float z, float power )
方向性ライトを生成し、固有のID番号( ライトID )を割り振って返します。
int newPointLight( float x, float y, float z, float power )
点ライトを生成し、固有のID番号( ライトID )を割り振って返します。
int newAmbientLight( float x, float y, float z, float power )
環境光ライトを生成し、固有のID番号( ライトID )を割り振って返します。
void deleteLight( int lightID )
ライトを破棄します。
void mountLight( int lightID, int rendererID )
ライトをワールド座標系上に配置登録します。
void mountLight( int lightID, int rendererID, int coordinateID )
ライトを任意の座標系上に配置登録します。
int demountLight( int lightID, int rendererID )
ライトをワールド座標系上から配置解除します。
int demountLight( int lightID, int rendererID, int coordinateID )
ライトを任意の座標系上から配置解除します。
macro moveLight( int lightID, float deltaX, float deltaY, float deltaZ )
ライトを平行移動させます。
void moveLight( int lightID, int deltaVectorID )
ライトを平行移動させます。
macro rotLightX( int lightID, float angle )
ライトをX軸まわりに回転させます。
macro rotLightY( int lightID, float angle )
ライトをY軸まわりに回転させます。
macro rotLightZ( int lightID, float angle )
ライトをZ軸まわりに回転させます。
macro rotLight( int lightID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、ライトを回転させます。
void rotLight( int lightID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ライトを回転させます。
macro rotLight( int lightID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、ライトを回転させます。
void rotLight( int lightID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ライトを回転させます。
void scaleLight( int lightID, float sx, float sy, float sz )
ライトを拡大または縮小します。
void mirrorLight( int lightID, bool mx, bool my, bool mz )
ライトの座標値を鏡像反転させます。
macro setLightBrightness( int lightID, float power )
ライトの光強度を設定します。
macro getLightBrightness( int lightID )
ライトの光強度を取得します。
macro setLightColor( int lightID, int red, int green, int blue, int alpha )
ライトの色を設定します。
macro setLightColor( int lightID, int rgba[ ] )
ライトの色を設定します。
float[ ] getLightColor( int lightID )
ライトの色を取得します。
macro setLightLocation( int lightID, float locationX, float locationY, float locationZ )
ライトの位置または方向ベクトルを設定します。
void setLightLocation( int lightID, int vectorID )
ライトの位置または方向ベクトルを設定します。
float[ ] getLightLocation( int lightID )
ライトの位置または方向を取得します。
void getLightLocation( int lightID, int vectorID )
ライトの位置または方向を取得し、引数に指定されたベクトルに代入します。
int newVector()
ベクトルを生成し、固有の識別番号( ベクトルID )を割り振って返します。
int newVector( float x, float y, float z )
ベクトルを生成し、固有の識別番号( ベクトルID )を割り振って返します。
int newVector( float vertex[ ] )
ベクトルを生成し、固有の識別番号( ベクトルID )を割り振って返します。
int newVector( int copyID )
ベクトルのコピーを生成し、固有の識別番号( ベクトルID )を割り振って返します。
void deleteVector( int vectorID )
ベクトルを破棄します。
void mountVector( int vectorID, int rendererID )
ベクトルをワールド座標系上に配置登録します。
void mountVector( int vectorID, int rendererID, int coordinateID )
ベクトルを任意の座標系上に配置登録します。
int demountVector( int id, int rendererID )
ベクトルをワールド座標系上から配置解除します。
int demountVector( int id, int rendererID, int coordinateID )
ベクトルを任意の座標系上から配置解除します。
macro moveVector( int vectorID, float deltaX, float deltaY, float deltaZ )
ベクトルを平行移動させます。
void moveVector( int vectorID, int deltaVectorID )
ベクトルを平行移動させます。
macro rotVectorX( int vectorID, float angle )
ベクトルをX軸まわりに回転させます。
macro rotVectorY( int vectorID, float angle )
ベクトルをY軸まわりに回転させます。
macro rotVectorZ( int vectorID, float angle )
ベクトルをZ軸まわりに回転させます。
macro rotVector( int vectorID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、ベクトルを回転させます。
void rotVector( int vectorID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ベクトルを回転させます。
macro rotVector( int vectorID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、ベクトルを回転させます。
void rotVector( int vectorID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ベクトルを回転させます。
macro scaleVector( int vectorID, float rateX, float rateY, float rateZ )
ベクトルを拡大または縮小します。
macro mirrorVector( int vectorID, bool mirrorX, bool mirrorY, bool mirrorZ )
ベクトルの成分を鏡像反転させます。
macro setVector( int vectorID, float vectorComponentX, float vectorComponentY, float vectorComponentZ )
ベクトルの成分を設定します。
void setVector( int vectorID, float vectorComponent[ ] )
ベクトルの成分を設定します。
void setVector( int vectorID, int vertexVectorID )
ベクトルの成分を設定します。
macro setVectorX( int vectorID, float value )
ベクトルのX成分を設定します。
macro setVectorY( int vectorID, float value )
ベクトルのY成分を設定します。
macro setVectorZ( int vectorID, float value )
ベクトルのZ成分を設定します。
macro getVectorX( int vectorID )
ベクトルのX成分を取得します。
macro getVectorY( int vectorID )
ベクトルのY成分を取得します。
macro getVectorZ( int vectorID )
ベクトルのZ成分を取得します。
macro setVectorLength( int vectorID, float newlength )
ベクトルの大きさ( 絶対値 )を設定します。この操作において、ベクトルの方向、つまりXYZ各成分の比率は保たれます。
macro getVectorLength( int vectorID )
ベクトルの大きさ( 絶対値 )を取得します。
float getVectorInnerProduct( int vector1, int vector2 )
ベクトルの内積を取得します。
float getVectorCrossProduct( int vector1, int vector2, int crossVector )
ベクトルの外積を取得し、引数に指定されたベクトルに代入します。
int getVectorCrossProduct( int vector1, int vector2 )
ベクトルの外積を取得し、新しく生成したベクトルに代入して返します。
int projectVectorX( int vectorID, int rendererID )
ベクトルの画面射影におけるX成分を取得します。
int projectVectorY( int vectorID, int rendererID )
ベクトルの画面射影におけるY成分を取得します。
void transformVector( int vectorID, int transformedVectorID, int coordinateID )
ベクトルを座標変換し、引数に指定されたベクトルに代入します。
int newCoordinate()
座標系を生成し、固有の識別番号( 座標系ID )を割り振って返します。
void deleteCoordinate( int coordinateID )
座標系を破棄します。
void mountCoordinate( int coordinateID, int rendererID )
座標系をワールド座標系上に配置登録します。
void mountCoordinate( int coordinateID, int rendererID, int parentID )
座標系を他の座標系上に配置登録します。
int demountCoordinate( int coordinateID, int rendererID )
座標系をワールド座標系上から配置解除します。
int demountCoordinate( int coordinateID, int rendererID, int parentID )
座標系を他の座標系上から配置解除します。
int getWorldCoordinate( int rendererID )
レンダラ?によって確保されている、ワールド座標系のIDを取得します。
int getViewCoordinate( int rendererID )
レンダラ?によって確保されている、ビュー座標系のIDを取得します。
macro moveCoordinate( int coordinateID, float deltaX, float deltaY, float deltaZ )
座標系を、親座標系の座標軸を基準として、平行移動させます。
void moveCoordinate( int coordinateID, int deltaVectorID )
座標系を、親座標系の座標軸を基準として、平行移動させます。
macro walkCoordinate( int coordinateID, float deltaX, float deltaY, float deltaZ )
座標系を、自身の座標軸を基準として、平行移動させます( VCSSL ではこのような移動を「歩行」と呼びます )。
void walkCoordinate( int coordinateID, int deltaVectorID )
座標系を、自身の座標軸を基準として、平行移動させます( VCSSL ではこのような移動を「歩行」と呼びます )。
macro rotCoordinateX( int coordinateID, float angle )
座標系を、親座標系の座標軸を基準として、X軸まわりに回転させます。
macro rotCoordinateY( int coordinateID, float angle )
座標系を、親座標系の座標軸を基準として、Y軸まわりに回転させます。
macro rotCoordinateZ( int coordinateID, float angle )
座標系を、親座標系の座標軸を基準として、Z軸まわりに回転させます。
macro rotCoordinate( int coordinateID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(親座標系の座標軸基準)。
void rotCoordinate( int coordinateID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(親座標系の座標軸基準)。
macro rotCoordinate( int coordinateID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(親座標系の座標軸基準)。
void rotCoordinate( int coordinateID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(親座標系の座標軸基準)。
macro spinCoordinateX( int coordinateID, float angle )
座標系を、自身の座標軸を基準として、X軸まわりに回転させます( VCSSL ではこのような回転を「自転」と呼びます )。
macro spinCoordinateY( int coordinateID, float angle )
座標系を、自身の座標軸を基準として、Y軸まわりに回転させます( VCSSL ではこのような回転を「自転」と呼びます )。
macro spinCoordinateZ( int coordinateID, float angle )
座標系を、自身の座標軸を基準として、Z軸まわりに回転させます( VCSSL ではこのような回転を「自転」と呼びます )。
macro spinCoordinate( int coordinateID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(自身の座標軸基準)。
void spinCoordinate( int coordinateID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(自身の座標軸基準)。
macro spinCoordinate( int coordinateID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(自身の座標軸基準)。
void spinCoordinate( int coordinateID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、座標系を回転させます(自身の座標軸基準)。
macro setCoordinateLocation( int coordinateID, float locationX, float locationY, float locationZ )
座標系の、親座標系から見た原点位置座標を設定します。
macro setCoordinateLocation( int coordinateID, float locationVector[ ] )
座標系の、親座標系から見た原点位置座標を設定します。
void setCoordinateLocation( int coordinateID, int localocationVectorID )
座標系の、親座標系から見た原点位置座標を設定します。
macro getCoordinateLocation( int coordinateID )
座標系の、親座標系から見た原点位置座標を取得します。
void setCoordinateAngle( int coordinateID, float alpha, float beta, float gamma )
座標系の角度を Z-X-Z オイラー角で設定します。
void setCoordinateAngle( int coordinateID, float angle[ ] )
座標系の角度を Z-X-Z オイラー角で設定します。
float[ ] getCoordinateAngle( int coordinateID )
座標系の角度を Z-X-Z オイラー角で取得します。
void moveView( int rendererID, float dx, float dy, float dz )
ビュー座標系を、ワールド座標系の座標軸を基準として、平行移動させます。
void moveView( int rendererID, int deltaVectorID )
ビュー座標系を、ワールド座標系の座標軸を基準として、平行移動させます。
void walkView( int rendererID, float deltaX, float deltaY, float deltaZ )
ビュー座標系を、自身の座標軸を基準として、平行移動させます。
void walkView( int rendererID, int deltaVectorID )
ビュー座標系を、自身の座標軸を基準として、平行移動させます。
void rotViewX( int rendererID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、X軸まわりに回転させます。
void rotViewY( int rendererID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Y軸まわりに回転させます。
void rotViewZ( int rendererID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Z軸まわりに回転させます。
void rotView( int rendererID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。
void rotView( int rendererID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。
void rotView( int rendererID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。
void rotView( int rendererID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。
void spinViewX( int rendererID, float angle )
ビュー座標系を、自身の座標軸を基準として、X軸まわりに回転させます。
void spinViewY( int rendererID, float angle )
ビュー座標系を、自身の座標軸を基準として、Y軸まわりに回転させます。
void spinViewZ( int rendererID, float angle )
ビュー座標系を、自身の座標軸を基準として、Z軸まわりに回転させます。
void spinView( int rendererID, float angle, float vectorX, float vectorY, float vectorZ )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。
void spinView( int rendererID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。
void spinView( int rendererID, float angle, float vectorX, float vectorY, float vectorZ, float pointX, float pointY, float pointZ )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。
void spinView( int rendererID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。
void setViewLocation( int rendererID, float x, float y, float z )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。
void setViewLocation( int rendererID, float locationVector[ ] )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。
void setViewLocation( int rendererID, int locationVectorID )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。
void setViewAngle( int rendererID, float alpha, float beta, float gamma )
ビュー座標系の角度を Z-X-Z オイラー角で設定します。
void addPolygon( int polygonID, int rendererID )
ポリゴンをワールド座標系上に配置登録します。VCSSL 3 以降では、より新しい mountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
void addPolygon( int polygonID, int rendererID, int coordinateID )
ポリゴンを任意の座標系上に配置登録します。VCSSL 3 以降では、より新しい mountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
int removePolygon( int polygonID, int rendererID )
ポリゴンをワールド座標系上から配置解除します。VCSSL 3 以降では、より新しい demountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
int removePolygon( int polygonID, int rendererID, int coordinateID )
ポリゴンを任意の座標系上から配置解除します。VCSSL 3 以降では、より新しい demountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotXPolygon( int polygonID, float angle )
ポリゴンをX軸まわりに回転させます。現在は、より新しい rotPolygonX 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotYPolygon( int polygonID, float angle )
ポリゴンをY軸まわりに回転させます。現在は、より新しい rotPolygonY 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotZPolygon( int polygonID, float angle )
ポリゴンをZ軸まわりに回転させます。現在は、より新しい rotPolygonZ 関数がサポートされています。この関数は互換目的でサポートされています。
macro setPolygonSortOffset( int polygonID, float offset )
Zソート法での描画において、ポリゴン前後判定を補正するためのオフセット値を設定します。現在は、より新しく高機能な setPolygonDepthOffset 関数が利用可能です。この関数は互換目的でサポートされています。
void addModel( int modelID, int rendererID )
モデルをワールド座標系上に配置登録します。VCSSL 3 以降では、より新しい mountModel 関数がサポートされています。この関数は互換目的でサポートされています。
void addModel( int modelID, int rendererID, int coordinateID )
モデルを任意の座標系上に配置登録します。VCSSL 3 以降では、より新しい mountModel 関数がサポートされています。この関数は互換目的でサポートされています。
int removeModel( int modelID, int rendererID )
モデルをワールド座標系上から配置解除します。VCSSL 3 以降では、より新しい demountModel 関数がサポートされています。この関数は互換目的でサポートされています。
int removeModel( int modelID, int rendererID, int coordinateID )
モデルを任意の座標系上から配置解除します。VCSSL 3 以降では、より新しい demountModel 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotXModel( int modelID, float angle )
モデルをX軸まわりに回転させます。現在は、より新しい rotModelX 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotYModel( int modelID, float angle )
モデルをY軸まわりに回転させます。現在は、より新しい rotModelY 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotZModel( int modelID, float angle )
モデルをZ軸まわりに回転させます。現在は、より新しい rotModelZ 関数がサポートされています。この関数は互換目的でサポートされています。
macro setModelSortOffset( int modelID, float offset )
Zソート法での描画において、モデル前後判定を補正するためのオフセット値を設定します。現在は、より新しく高機能な setModelDepthOffset 関数が利用可能です。この関数は互換目的でサポートされています。
void addLight( int lightID, int rendererID )
ライトをワールド座標系上に配置登録します。VCSSL 3 以降では、より新しい mountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
void addLight( int lightID, int rendererID, int coordinateID )
ライトを任意の座標系上に配置登録します。VCSSL 3 以降では、より新しい mountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
int removeLight( int lightID, int rendererID )
ライトをワールド座標系上から配置解除します。VCSSL 3 以降では、より新しい demountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
int removeLight( int lightID, int rendererID, int coordinateID )
ライトを任意の座標系上から配置解除します。VCSSL 3 以降では、より新しい demountPolygon 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotXLight( int lightID, float angle )
ライトをX軸まわりに回転させます。現在は、より新しい rotLightX 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotYLight( int lightID, float angle )
ライトをY軸まわりに回転させます。現在は、より新しい rotLightY 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotZLight( int lightID, float angle )
ライトをZ軸まわりに回転させます。現在は、より新しい rotLightZ 関数がサポートされています。この関数は互換目的でサポートされています。
macro setLightVector( int lightID, float locationX, float locationY, float locationZ )
ライトの位置または方向ベクトルを設定します。現在は、より新しい setLightLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setLightVector( int lightID, int vectorID )
ライトの位置または方向ベクトルを設定します。現在は、より新しい setLightLocation 関数がサポートされています。この関数は互換目的でサポートされています。
float[ ] getLightVector( int lightID )
ライトの位置または方向を取得します。現在は、より新しい getLightLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void getLightVector( int lightID, int vectorID )
ライトの位置または方向を取得し、引数に指定されたベクトルに代入します。現在は、より新しい getLightLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void addVector( int vectorID, int rendererID )
ベクトルをワールド座標系上に配置登録します。VCSSL 3 以降では、より新しい mountVector 関数がサポートされています。この関数は互換目的でサポートされています。
void addVector( int vectorID, int rendererID, int coordinateID )
ベクトルをワールド座標系上に配置登録します。VCSSL 3 以降では、より新しい mountVector 関数がサポートされています。この関数は互換目的でサポートされています。
int removeVector( int id, int rendererID )
ベクトルをワールド座標系上から配置解除します。VCSSL 3 以降では、より新しい demountVector 関数がサポートされています。この関数は互換目的でサポートされています。
int removeVector( int id, int rendererID, int coordinateID )
ベクトルをワールド座標系上から配置解除します。VCSSL 3 以降では、より新しい demountVector 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotXVector( int vectorID, float angle )
ベクトルをX軸まわりに回転させます。現在では、より新しい rotVectorX 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotYVector( int vectorID, float angle )
ベクトルをY軸まわりに回転させます。現在では、より新しい rotVectorY 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotZVector( int vectorID, float angle )
ベクトルをZ軸まわりに回転させます。現在では、より新しい rotVectorZ 関数がサポートされています。この関数は互換目的でサポートされています。
int getScreenCoordinate( int rendererID )
レンダラ?によって確保されている、ビュー座標系のIDを取得します。この関数は名称が紛らわしいため、使用は推奨されません。新しいプログラムでは、代わりに getViewCoordinate 関数を使用してください。この関数は互換目的でサポートされています。
void addCoordinate( int coordinateID, int rendererID )
座標系をワールド座標系上に配置登録します。VCSSL 3 以降では、より新しい mountCoordinate 関数がサポートされています。この関数は互換目的でサポートされています。
void addCoordinate( int coordinateID, int rendererID, int parentID )
座標系を他の座標系上に配置登録します。VCSSL 3 以降では、より新しい mountCoordinate 関数がサポートされています。この関数は互換目的でサポートされています。
int removeCoordinate( int coordinateID, int rendererID )
座標系をワールド座標系上から配置解除します。VCSSL 3 以降では、より新しい demountCoordinate 関数がサポートされています。この関数は互換目的でサポートされています。
int removeCoordinate( int coordinateID, int rendererID, int parentID )
座標系を他の座標系上から配置解除します。VCSSL 3 以降では、より新しい demountCoordinate 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotXCoordinate( int coordinateID, float angle )
座標系を、親座標系の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい rotCoordinateX 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotYCoordinate( int coordinateID, float angle )
座標系を、親座標系の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい rotCoordinateY 関数がサポートされています。この関数は互換目的でサポートされています。
macro rotZCoordinate( int coordinateID, float angle )
座標系を、親座標系の座標軸を基準として、Z軸まわりに回転させます。現在は、より新しい rotCoordinateZ 関数がサポートされています。この関数は互換目的でサポートされています。
macro spinXCoordinate( int coordinateID, float angle )
座標系を、自身の座標軸を基準として、X軸まわりに回転させます( VCSSL ではこのような回転を「自転」と呼びます )。現在は、より新しい spinCoordinateX 関数がサポートされています。この関数は互換目的でサポートされています。
macro spinYCoordinate( int coordinateID, float angle )
座標系を、自身の座標軸を基準として、Y軸まわりに回転させます( VCSSL ではこのような回転を「自転」と呼びます )。現在は、より新しい spinCoordinateY 関数がサポートされています。この関数は互換目的でサポートされています。
macro spinZCoordinate( int coordinateID, float angle )
座標系を、自身の座標軸を基準として、Z軸まわりに回転させます( VCSSL ではこのような回転を「自転」と呼びます )。現在は、より新しい spinCoordinateZ 関数がサポートされています。この関数は互換目的でサポートされています。
macro setCoordinateOrigin( int coordinateID, float originVectorX, float originVectorY, float originVectorZ )
座標系の、親座標系から見た原点位置座標を設定します。現在は、より新しい setCoordinateLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setCoordinateOrigin( int coordinateID, int originVectorID )
座標系の、親座標系から見た原点位置座標を設定します。現在は、より新しい setCoordinateLocation 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateOriginX( int coordinateID )
座標系の、親座標系から見た原点位置座標のX成分を取得します。現在は、より新しい getCoordinateLocation 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateOriginY( int coordinateID )
座標系の、親座標系から見た原点位置座標のY成分を取得します。現在は、より新しい getCoordinateLocation 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateOriginZ( int coordinateID )
座標系の、親座標系から見た原点位置座標のZ成分を取得します。現在は、より新しい getCoordinateLocation 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateOrigin( int coordinateID )
座標系の、親座標系から見た原点位置座標を取得します。現在は、より新しい getCoordinateLocation 関数がサポートされています。この関数は互換目的でサポートされています。
macro setCoordinateEulerAngle( int coordinateID, float alpha, float beta, float gamma )
座標系の角度を Z-X-Z オイラー角で設定します。現在は、より新しい setCoordinateAngle 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateEulerAngleAlpha( int coordinateID )
座標系の角度を Z-X-Z オイラー角で表した場合におけるα角を取得しします。現在は、より新しい getCoordinateAngle 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateEulerAngleBeta( int coordinateID )
座標系の角度を Z-X-Z オイラー角で表した場合におけるβ角を取得しします。現在は、より新しい getCoordinateAngle 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateEulerAngleGamma( int coordinateID )
座標系の角度を Z-X-Z オイラー角で表した場合におけるγ角を取得しします。現在は、より新しい getCoordinateAngle 関数がサポートされています。この関数は互換目的でサポートされています。
macro getCoordinateAlphaAngle( int coordinateID )
この関数の使用は推奨されません。この関数は正しい Z-X-Z オイラー角に準拠していません。代わりに setCoordinateAngle 関数を使用してください。この関数は互換目的でサポートされています。
macro getCoordinateBetaAngle( int coordinateID )
この関数の使用は推奨されません。この関数は正しい Z-X-Z オイラー角に準拠していません。代わりに setCoordinateAngle 関数を使用してください。この関数は互換目的でサポートされています。
macro getCoordinateGammaAngle( int coordinateID )
この関数の使用は推奨されません。この関数は正しい Z-X-Z オイラー角に準拠していません。代わりに setCoordinateAngle 関数を使用してください。この関数は互換目的でサポートされています。
void rotXView( int rendererID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい rotVectorX 関数がサポートされています。この関数は互換目的でサポートされています。
void rotYView( int rendererID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい rotVectorY 関数がサポートされています。この関数は互換目的でサポートされています。
void rotZView( int rendererID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Z軸まわりに回転させます。現在は、より新しい rotVectorZ 関数がサポートされています。この関数は互換目的でサポートされています。
void spinXView( int rendererID, float angle )
ビュー座標系を、自身の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい rotVectorX 関数がサポートされています。この関数は互換目的でサポートされています。
void spinYView( int rendererID, float angle )
ビュー座標系を、自身の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい rotVectorY 関数がサポートされています。この関数は互換目的でサポートされています。
void spinZView( int rendererID, float angle )
ビュー座標系を、自身の座標軸を基準として、Z軸まわりに回転させます。現在は、より新しい rotVectorZ 関数がサポートされています。この関数は互換目的でサポートされています。
void setViewOrigin( int rendererID, float x, float y, float z )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setViewOrigin( int rendererID, int originVectorID )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setViewEulerAngle( int rendererID, float alpha, float beta, float gamma )
この関数の使用は推奨されません。この関数は正しい Z-X-Z オイラー角に準拠していません。代わりに setViewAngle 関数を使用してください。この関数は互換目的でサポートされています。
void moveCamera( int worldID, float dx, float dy, float dz )
ビュー座標系を、ワールド座標系の座標軸を基準として、平行移動させます。現在は、より新しい moveView 関数がサポートされています。この関数は互換目的でサポートされています。
void moveCamera( int worldID, int deltaVectorID )
ビュー座標系を、ワールド座標系の座標軸を基準として、平行移動させます。現在は、より新しい moveView 関数がサポートされています。この関数は互換目的でサポートされています。
void walkCamera( int worldID, float dx, float dy, float dz )
ビュー座標系を、自身の座標軸を基準として、平行移動させます。現在は、より新しい walkCamera 関数がサポートされています。この関数は互換目的でサポートされています。
void walkCamera( int worldID, int deltaVectorID )
ビュー座標系を、自身の座標軸を基準として、平行移動させます。現在は、より新しい walkCamera 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCameraX( int worldID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい rotViewX 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCameraY( int worldID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい rotViewY 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCameraZ( int worldID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Z軸まわりに回転させます。現在は、より新しい rotViewZ 関数がサポートされています。この関数は互換目的でサポートされています。
void rotXCamera( int worldID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい rotViewX 関数がサポートされています。この関数は互換目的でサポートされています。
void rotYCamera( int worldID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい rotViewY 関数がサポートされています。この関数は互換目的でサポートされています。
void rotZCamera( int worldID, float angle )
ビュー座標系を、ワールド座標系の座標軸を基準として、Z軸まわりに回転させます。現在は、より新しい rotViewZ 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCamera( int worldID, float angle, float vx, float vy, float vz )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。現在は、より新しい rotView 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCamera( int worldID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。現在は、より新しい rotView 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCamera( int worldID, float angle, float vx, float vy, float vz, float px, float py, float pz )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。現在は、より新しい rotView 関数がサポートされています。この関数は互換目的でサポートされています。
void rotCamera( int worldID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(ワールド座標系の座標軸基準)。現在は、より新しい rotView 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCameraX( int worldID, float angle )
ビュー座標系を、自身の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい spinViewX 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCameraY( int worldID, float angle )
ビュー座標系を、自身の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい spinViewY 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCameraZ( int worldID, float angle )
ビュー座標系を、自身の座標軸を基準として、Z軸まわりに回転させます。現在は、より新しい spinViewZ 関数がサポートされています。この関数は互換目的でサポートされています。
void spinXCamera( int worldID, float angle )
ビュー座標系を、自身の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい spinViewX 関数がサポートされています。この関数は互換目的でサポートされています。
void spinYCamera( int worldID, float angle )
ビュー座標系を、自身の座標軸を基準として、Y軸まわりに回転させます。現在は、より新しい spinViewY 関数がサポートされています。この関数は互換目的でサポートされています。
void spinZCamera( int worldID, float angle )
ビュー座標系を、自身の座標軸を基準として、X軸まわりに回転させます。現在は、より新しい spinViewX 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCamera( int worldID, float angle, float vx, float vy, float vz )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。現在は、より新しい spinView 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCamera( int worldID, float angle, int dirVectorID )
原点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。現在は、より新しい spinView 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCamera( int worldID, float angle, float vx, float vy, float vz, float px, float py, float pz )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。現在は、より新しい spinView 関数がサポートされています。この関数は互換目的でサポートされています。
void spinCamera( int worldID, float angle, int dirVectorID, int pointVectorID )
任意点を通る、任意方向ベクトルの回転軸まわりに、ビュー座標系を回転させます(自身の座標軸基準)。現在は、より新しい spinView 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraOrigin( int worldID, float x, float y, float z )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraOrigin( int worldID, int originVectorID )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraLocation( int worldID, float x, float y, float z )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraLocation( int worldID, float originVector[ ] )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraLocation( int worldID, int originVectorID )
ビュー座標系の、ワールド座標系から見た原点位置座標を設定します。現在は、より新しい setViewLocation 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraAngle( int worldID, float alpha, float beta, float gamma )
ビュー座標系の角度を Z-X-Z オイラー角で設定します。現在は、より新しい setViewAngle 関数がサポートされています。この関数は互換目的でサポートされています。
void setCameraEulerAngle( int worldID, float alpha, float beta, float gamma )
この関数の使用は推奨されません。この関数は正しい Z-X-Z オイラー角に準拠していません。代わりに setViewAngle 関数を使用してください。この関数は互換目的でサポートされています。

science.graph.Graph2D ライブラリ

2次元グラフソフトを制御するAPIライブラリです。

int newGraph2D()
2次元グラフをデフォルトのサイズで生成し、それに固有の識別番号 ( グラフID ) を割り振って返します。
int newGraph2D( int x, int y, int width, int height, string title )
2次元グラフを指定されたサイズで生成し、それに固有の識別番号 ( グラフID ) を割り振って返します。
int getGraph2D()
処理系で起動・確保されている特別なグラフがあれば、そのグラフIDを取得します。無ければ新規生成します。
void deleteGraph2D( int graphID )
グラフを破棄します。
void clearGraph2D( int graphID )
グラフの内容をクリアします。
int getGraph2DGraphics( int graphID )
グラフの保持している描画内容を、Graphicsライブラリ互換のグラフィックスデータに変換します。変換されたグラフィックスデータは、2D/3Dレンダラ?などで加工できます。
void setGraph2DLocation( int graphID, int x, int y )
グラフウィンドウの位置を設定します。
void setGraph2DSize( int graphID, int width, int height )
グラフウィンドウの大きさを設定します。
void hideGraph2D( int graphID )
グラフウィンドウを不可視化します。
void showGraph2D( int graphID )
グラフウィンドウを可視化します。
void setGraph2DFile( int graphID, string file )
ファイルを読み込み、グラフにプロットします。
void setGraph2DFile( int graphID, string file[ ] )
複数のファイルを読み込み、グラフにプロットします。
void setGraph2DData( int graphID, string data )
ファイルの内容と同じ書式で記載されたテキストを読み込み、グラフにプロットします。
void setGraph2DData( int graphID, float dataX[ ], float dataY[ ] )
座標値を格納する float 型配列を読み込み、グラフにプロットします。
void setGraph2DData( int graphID, float dataX[ ][ ], float dataY[ ][ ] )
座標値を格納する float 型配列を読み込み、グラフにプロットします。
void addGraph2DData( int graphID, float dataX[ ], float dataY[ ] )
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
void addGraph2DData( int graphID, float dataX[ ][ ], float dataY[ ][ ] )
座標値を格納する float 型配列を読み込み、グラフに追記プロットします。
void setGraph2DConfigurationFile( int graphID, string file )
設定ファイルを読み込み、グラフに自動で設定を行います。
void setGraph2DRange( int graphID, double xMin, double xMax, double yMin, double yMax )
プロット範囲を設定します。
void setGraph2DRangeX( int graphID, double xMin, double xMax )
X軸のプロット範囲を設定します。
void setGraph2DRangeY( int graphID, double yMin, double yMax )
Y軸のプロット範囲を設定します。
void setGraph2DAutoRange( int graphID, bool autoX, bool autoY )
プロット範囲の自動調整機能を有効化または無効化します。
void setGraph2DOption( int graphID, string option, bool value )
グラフのオプション項目を設定します。項目名は処理系に依存します。代表的なオプション項目名は以下の通りです: WITH_POINTS : 点プロット , WITH_LINES : 線プロット , WITH_DOTS : ドットプロット , WITH_GRID_LINE : グリッドライン描画 , LOG_X : X対数軸表示 , LOG_Y : Y対数軸表示 , REVERSE_X : X軸反転表示 , REVERSE_Y : Y軸反転表示 ,
void setGraph2DMenu( int graphID, string menu, string value )
グラフのメニュー項目を設定します。項目名は処理系に依存します。
void setGraph2DAnimation( int graphID, string mode, bool state )
グラフのアニメーションを有効化または無効化します。利用可能なアニメーションモードは処理系に依存します。代表的なアニメーションモードは以下の通りです: TRACE : 点をアニメーションし、軌跡を残す , INDEX : 点をアニメーションする , INDEX-SERIES : 系列をアニメーションする ,
void setGraph2DTitle( int graphID, string title )
グラフのタイトルを設定します。
void setGraph2DLabel( int graphID, string xLabel, string yLabel )
グラフの軸ラベルを設定します。
void setGraph2DLegend( int graphID, string legend[ ] )
グラフの凡例を設定します。
void exportGraph2D( int graphID, string filename, string format )
グラフを画像に出力します。
void exportGraph2D( int graphID, string filename, string format, float quality )
グラフを画像に出力します。
void onGraph2DClose( int graphID )
グラフウィンドウが閉じられた際にコールされます。

science.graph.Graph3D ライブラリ

3次元グラフソフトを制御するAPIライブラリです。

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 file )
ファイルを読み込み、グラフにプロットします。
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 )
グラフを画像に出力します。
void onGraph2DClose( int graphID )
グラフウィンドウが閉じられた際にコールされます。

open.system.Int ライブラリ

int型を補助する機能を提供するライブラリです。

int[ ] toIntArray(... int args[ ])
int型の複数の値を、配列にまとめて返します。
bool isInt(string s)
文字列の中身がint型に変換可能か判定します。
bool isDec(string s)
文字列の中身が10進数表記であり、かつint型に変換可能か判定します。つまるところ、中身が符号を除いて全部数字なら true が返されます。
bool isHex(string s)
文字列の中身が16進数表記であり、かつint型に変換可能か判定します。
bool isOct(string s)
文字列の中身が8進数表記であり、かつint型に変換可能か判定します。
bool isBin(string s)
文字列の中身が2進数表記であり、かつint型に変換可能か判定します。

open.system.Float ライブラリ

float型を補助する機能を提供するライブラリです。

float[ ] toFloatArray(... float args[ ])
float型の複数の値を、配列にまとめて返します。
bool isFloat(string s)
文字列の中身がfloat型に変換可能か判定します。

open.system.Complex ライブラリ

complex型を補助する機能を提供するライブラリです。

const int RE
float[2]を複素数として扱う場合の実部インデックスを表します。
const int IM
float[2]を複素数として扱う場合の虚部インデックスを表します。
complex toComplex(float arg[ ])
float[2] を complex に変換します。
complex[ ] toComplexArray(... complex args[ ])
complex型の複数の値を、配列にまとめて返します。
varcomplex[ ] toVarcomplexArray(... varcomplex args[ ])
varcomplex型の複数の値を、配列にまとめて返します。
float[ ] toFloatArray(complex arg)
complex を float[2] に変換します。
varcomplex toVarcomplex(varfloat arg[ ])
varfloat[2] を varcomplex に変換します。
varfloat[ ] toVarfloatArray(varcomplex arg)
complex を float[2] に変換します。
float creal(complex arg)
複素数の実部を返します。この関数は、System.re( complex ) 関数をそのままラッピングしています。
varfloat creal(varcomplex arg)
複素数の実部を返します。この関数は、System.re( varcomplex ) 関数をそのままラッピングしています。
float creal(float arg[ ])
複素数の実部を返します。
varfloat creal(varfloat arg[ ])
複素数の実部を返します。
float cimag(complex arg)
複素数の虚部を返します。この関数は、System.im( complex ) 関数をそのままラッピングしています。
varfloat cimag(varcomplex arg)
複素数の虚部を返します。この関数は、System.im( varcomplex ) 関数をそのままラッピングしています。
float cimag(float arg[ ])
虚部を返します。
varfloat cimag(varfloat arg[ ])
虚部を返します。
float[ ] cadd(float a[ ], float b[ ])
float[2]/varfloat[2]を複素数と見なし、加算値を返します。
varfloat[ ] cadd(varfloat a[ ], varfloat b[ ])
float[2]/varfloat[2]を複素数と見なし、加算値を返します。
float[ ] csub(float a[ ], float b[ ])
float[2]/varfloat[2]を複素数と見なし減算値を返します。
varfloat[ ] csub(varfloat a[ ], varfloat b[ ])
float[2]/varfloat[2]を複素数と見なし減算値を返します。
float[ ] cmul(float a[ ], float b[ ])
float[2]/varfloat[2]を複素数と見なし、乗算値を返します。
varfloat[ ] cmul(varfloat a[ ], varfloat b[ ])
float[2]/varfloat[2]を複素数と見なし、乗算値を返します。
float[ ] cdiv(float a[ ], float b[ ])
float[2]/varfloat[2]を複素数と見なし、除算値を返します。
varfloat[ ] cdiv(varfloat a[ ], varfloat b[ ])
float[2]/varfloat[2]を複素数と見なし、除算値を返します。
complex cexp(complex arg)
指数関数です。通常は open.math.ElementaryFunction を使用する事が推奨されます。この関数は互換目的のためにサポートされています。
varcomplex cexp(varcomplex arg)
指数関数です。通常は open.math.ElementaryFunction を使用する事が推奨されます。この関数は互換目的のためにサポートされています。
float[ ] cexp(float arg[ ])
指数関数です。通常は open.math.ElementaryFunction を使用する事が推奨されます。この関数は互換目的のためにサポートされています。
varfloat[ ] cexp(varfloat arg[ ])
指数関数です。通常は open.math.ElementaryFunction を使用する事が推奨されます。この関数は互換目的のためにサポートされています。

open.system.Bool ライブラリ

bool型を補助する機能を提供するライブラリです。

bool isBool(string s)
文字列の中身がbool型に変換可能か判定します。
bool[ ] toBoolArray(... bool args[ ])
bool型の複数の値を、配列にまとめて返します。

open.system.String ライブラリ

string型を補助する機能を提供するライブラリです。

string[ ] toStringArray(... string args[ ])
string型の複数の値を、配列にまとめて返します。

open.math.ElementaryFunction ライブラリ

使用頻度の高い、基本的な数学関数を提供するライブラリです。

complex exp(complex arg)
複素数の指数関数です。
varcomplex exp(varcomplex arg)
複素数の指数関数です。
float abs(complex arg)
複素数の絶対値を返す関数です。
varfloat abs(varcomplex arg)
複素数の絶対値を返す関数です。

open.math.StatisticalFunction ライブラリ

平均や標準偏差などの統計関数を提供するライブラリです。

float sum( ... float args[ ] )
和を計算します。
varfloat sum( ... varfloat args[ ] )
和を計算します。
float mean( ... float args[ ] )
平均値を計算します。
varfloat mean( ... varfloat args[ ] )
平均値を計算します。
float van( ... float args[ ] )
分散(分母は n )を計算します。
varfloat van( ... varfloat args[ ] )
分散(分母は n )を計算します。
float van1( ... float args[ ] )
不偏分散(分母は n-1 )を計算します。
varfloat van1( ... varfloat args[ ] )
不偏分散(分母は n-1 )を計算します。
float sdn( ... float args[ ] )
標準偏差(分母は n )を計算します。
varfloat sdn( ... varfloat args[ ] )
標準偏差(分母は n )を計算します。
float sdn1( ... float args[ ] )
不偏標準偏差(分母は n-1 )を計算します。
varfloat sdn1( ... varfloat args[ ] )
不偏標準偏差(分母は n-1 )を計算します。

open.math.GaussianFunction ライブラリ

ガウス関数を提供するライブラリです。

float gauss(float x, float a, float b, float c)
実数のガウス関数です。a * exp( -(x-b)**2 / c**2 ) の値を返します。gaussian 関数と異なるのは、指数部分母に 2 がかからない点です。
varfloat gauss(varfloat x, varfloat a, varfloat b, varfloat c)
実数のガウス関数です。a * exp( -(x-b)**2 / c**2 ) の値を返します。gaussian 関数と異なるのは、指数部分母に 2 がかからない点です。
float gaussian(float x, float a, float b, float c)
実数のガウス関数です。gauss 関数と異なるのは、指数部分母に 2 がかかる点です。a * exp( -(x-b)**2 / (2 * c**2) ) の値を返します。
varfloat gaussian(varfloat x, varfloat a, varfloat b, varfloat c)
実数のガウス関数です。gauss 関数と異なるのは、指数部分母に 2 がかかる点です。a * exp( -(x-b)**2 / (2 * c**2) ) の値を返します。

open.math.FourierTransform ライブラリ

離散フーリエ変換処理を提供するライブラリです。

const int FORWARD
順変換となるフーリエ変換の指数部符号です。
const int INVERSE
逆変換となるフーリエ変換の指数部符号です。
complex[ ] dft(complex arg[ ], int sgn)
離散フーリエ変換を行います。定義域は 0〜2π で、変換後の規格化は行いません。
varcomplex[ ] dft(varcomplex arg[ ], int sgn)
離散フーリエ変換を行います。定義域は 0〜2π で、変換後の規格化は行いません。

open.data.DataWrapper ライブラリ

任意型の変数値を構造体でラッピングする機能を提供するライブラリです。

struct DataWrapper<Type>
任意型のデータをラッピングする構造体です。
DataWrapper<Type> wrap<Type>(Type arg)
任意型のデータをラッピングします。
Type unwrap<Type>(DataWrapper<Type> wrapper)
ラッピングしているデータを取り出します。

open.data.List ライブラリ

リスト型のデータ構造を提供するライブラリです。配列には対応していません。

struct List<Type>
リスト構造体です。リストのデータを保持します。
void clear<Type>( List<Type> &list )
要素を全て削除します。
int size<Type>( List<Type> &list )
使用中のサイズを返します。
void add<Type>( List<Type> &list, Type value )
リストの末尾に要素を追加します。
Type get<Type>( List<Type> &list, int index )
特定インデックスの要素を取得します。
void set<Type>( List<Type> &list, int index, Type element )
特定インデックスの要素を代入します。そのインデックスの位置にあった要素は上書きされます。
Type insert<Type>( List<Type> &list, int index, Type value )
特定インデックスに要素を挿入します。そのインデックスの位置にあった要素は、次のインデックスの位置に移動します。また、それ以降の全ての要素も、インデックスが後方に 1 ずつ移動します。
bool contains<Type>( List<Type> &list, Type element )
リストが指定された要素を含んでいるか判定します。
Type removeAt<Type>( List<Type> &list, int index )
特定インデックスの要素を削除します。
void remove<Type>( List<Type> &list, Type element )
指定された要素を削除します。複数存在する場合は、最初のものだけが削除されます。
void removeAll<Type>( List<Type> &list, Type element )
指定された要素を全て削除します。
int indexOf<Type>( List<Type> &list, Type element )
指定された要素を、先頭から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int indexOf<Type>( List<Type> &list, Type element, int from )
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int lastIndexOf<Type>( List<Type> &list, Type element )
指定された要素を、末尾から前方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int lastIndexOf<Type>( List<Type> &list, Type element, int from )
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
void reverse<Type>( List<Type> &list )
リストが保持する全要素の順序を反転させます。
Type[ ] toArray<Type>( List<Type> &list )
リストが保持する全要素を、1次元の配列に格納して返します。

open.data.Queue ライブラリ

キュー型のデータ構造を提供するライブラリです。配列には対応していません。

struct Queue<Type>
キュー構造体です。キューのデータを保持します。
void clear<Type>( Queue<Type> &queue )
要素を全て削除します。
int size<Type>( Queue<Type> &queue )
使用中のサイズを返します。
void enqueue<Type>( Queue<Type> &queue, Type value )
キューに要素を追加します。
Type dequeue<Type>( Queue<Type> &queue )
キューから要素を取り出します。取り出した要素は、キューから削除されます。
Type peek<Type>( Queue<Type> &queue )
キューから要素を削除せずに取り出します。
bool contains<Type>( Queue<Type> &queue, Type element )
キューが指定された要素を含んでいるか判定します。
void reverse<Type>( Queue<Type> &queue )
キューが保持する全要素の順序を反転させます。
Type[ ] toArray<Type>( Queue<Type> &queue )
キューが保持する全要素を、1次元の配列に変換して返します。

open.data.Stack ライブラリ

スタック型のデータ構造を提供するライブラリです。配列には対応していません。

struct Stack<Type>
スタック構造体です。スタックのデータを保持します。
void clear<Type>( Stack<Type> &stack )
要素を全て削除します。
int size<Type>( Stack<Type> &stack )
使用中のサイズを返します。
void push<Type>( Stack<Type> &stack, Type value )
スタックに要素を追加します。
Type pop<Type>( Stack<Type> &stack )
スタックから要素を取り出します。取り出した要素は、スタックから削除されます。
Type peek<Type>( Stack<Type> &stack )
スタックから要素を削除せずに取り出します。
bool contains<Type>( Stack<Type> &stack, Type element )
スタックが指定された要素を含んでいるか判定します。
void reverse<Type>( Stack<Type> &stack )
スタックが保持する全要素の順序を反転させます。
Type[ ] toArray<Type>( Stack<Type> &stack )
スタックが保持する全要素を、1次元の配列に変換して返します。なお、順序は pop や peek で最初に得られる要素が [ 0 ] になります。

open.data.WrappedList ライブラリ

リスト型のデータ構造を提供するライブラリです。配列に対応しています。

struct WrappedList<Type>
リスト構造体です。リストのデータを保持します。
void clear<Type>( WrappedList<Type> &list )
要素を全て削除します。
int size<Type>( WrappedList<Type> &list )
使用中のサイズを返します。
void add<Type>( WrappedList<Type> &list, Type value )
リストの末尾に要素を追加します。
Type get<Type>( WrappedList<Type> &list, int index )
特定インデックスの要素を取得します。
void set<Type>( WrappedList<Type> &list, int index, Type element )
特定インデックスの要素を代入します。そのインデックスの位置にあった要素は上書きされます。
Type insert<Type>( WrappedList<Type> &list, int index, Type value )
特定インデックスに要素を挿入します。そのインデックスの位置にあった要素は、次のインデックスの位置に移動します。また、それ以降の全ての要素も、インデックスが後方に 1 ずつ移動します。
bool contains<Type>( WrappedList<Type> &list, Type element )
リストが指定された要素を含んでいるか判定します。
Type removeAt<Type>( WrappedList<Type> &list, int index )
特定インデックスの要素を削除します。
void remove<Type>( WrappedList<Type> &list, Type element )
指定された要素を削除します。複数存在する場合は、最初のものだけが削除されます。
void removeAll<Type>( WrappedList<Type> &list, Type element )
指定された要素を全て削除します。
int indexOf<Type>( WrappedList<Type> &list, Type element )
指定された要素を、先頭から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int indexOf<Type>( WrappedList<Type> &list, Type element, int from )
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int lastIndexOf<Type>( WrappedList<Type> &list, Type element )
指定された要素を、末尾から前方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int lastIndexOf<Type>( WrappedList<Type> &list, Type element, int from )
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
void reverse<Type>( WrappedList<Type> &list )
リストが保持する全要素の順序を反転させます。
DataWrapper<Type>[ ] toDataWrapperArray<Type>( WrappedList<Type> &list )
リストが保持する全要素を、DataWrapper配列に格納して返します。

open.data.WrappedQueue ライブラリ

キュー型のデータ構造を提供するライブラリです。配列に対応しています。

struct WrappedQueue<Type>
キュー構造体です。キューのデータを保持します。
void clear<Type>( WrappedQueue<Type> &queue )
要素を全て削除します。
int size<Type>( WrappedQueue<Type> &queue )
使用中のサイズを返します。
void enqueue<Type>( WrappedQueue<Type> &queue, Type value )
キューに要素を追加します。
Type dequeue<Type>( WrappedQueue<Type> &queue )
キューから要素を取り出します。取り出した要素は、キューから削除されます。
Type peek<Type>( WrappedQueue<Type> &queue )
キューから要素を削除せずに取り出します。
bool contains<Type>( WrappedQueue<Type> &queue, Type element )
キューが指定された要素を含んでいるか判定します。
void reverse<Type>( WrappedQueue<Type> &queue )
キューが保持する全要素の順序を反転させます。
DataWrapper<Type>[ ] toDataWrapperArray<Type>( WrappedQueue<Type> &queue )
キューが保持する全要素を、DataWrapper配列に変換して返します。

open.data.WrappedStack ライブラリ

スタック型のデータ構造を提供するライブラリです。配列に対応しています。

struct WrappedStack<Type>
スタック構造体です。スタックのデータを保持します。
void clear<Type>( WrappedStack<Type> &stack )
要素を全て削除します。
int size<Type>( WrappedStack<Type> &stack )
使用中のサイズを返します。
void push<Type>( WrappedStack<Type> &stack, Type value )
スタックに要素を追加します。
Type pop<Type>( WrappedStack<Type> &stack )
スタックから要素を取り出します。取り出した要素は、スタックから削除されます。
Type peek<Type>( WrappedStack<Type> &stack )
スタックから要素を削除せずに取り出します。
bool contains<Type>( WrappedStack<Type> &stack, Type element )
スタックが指定された要素を含んでいるか判定します。
void reverse<Type>( WrappedStack<Type> &stack )
スタックが保持する全要素の順序を反転させます。
DataWrapper<Type>[ ] toDataWrapperArray<Type>( WrappedStack<Type> &stack )
スタックが保持する全要素を、DataWrapper配列に格納して返します。なお、順序は pop や peek で最初に得られる要素を格納するものが [ 0 ] になります。

open.file.TextFile

CSV/TSV形式などのテキストファイル入出力機能を提供します。

struct TextFile
テキストファイル構造体です。ファイルIDなどのシステムリソースや、区切り文字情報などを保持します。
const string READ
汎用テキストファイルの「読み込み」モードです。区切り文字(デリミタ)及び引用符記号(エンクロージャ)は設定されません。引用符の挙動は ENCLOSED_NONE が適用されます。
const string WRITE
汎用テキストファイルの「書き込み」モードです。区切り文字(デリミタ)及び引用符記号(エンクロージャ)は設定されません。引用符の挙動は ENCLOSED_NONE が適用されます。
const string APPEND
汎用テキストファイルの「追記」モードです。区切り文字(デリミタ)及び引用符記号(エンクロージャ)は設定されません。引用符の挙動は ENCLOSED_NONE が適用されます。
const string READ_TSV
TSV形式ファイルの「読み込み」モードです。区切り文字(デリミタ)はタブ記号、引用符記号(エンクロージャ)はダブルクォーテーションに設定されます。引用符の挙動は ENCLOSED_IF_NECESSARY が適用されます。
const string WRITE_TSV
TSV形式ファイルの「書き込み」モードです。区切り文字(デリミタ)はタブ記号、引用符記号(エンクロージャ)はダブルクォーテーションに設定されます。引用符の挙動は ENCLOSED_IF_NECESSARY が適用されます。
const string APPEND_TSV
TSV形式ファイルの「追記」モードです。区切り文字(デリミタ)はタブ記号、引用符記号(エンクロージャ)はダブルクォーテーションに設定されます。引用符の挙動は ENCLOSED_IF_NECESSARY が適用されます。
const string READ_CSV
CSV形式ファイルの「読み込み」モードです。区切り文字(デリミタ)はカンマ記号、引用符記号(エンクロージャ)はダブルクォーテーションに設定されます。引用符の挙動は ENCLOSED_IF_NECESSARY が適用されます。
const string WRITE_CSV
CSV形式ファイルの「書き込み」モードです。区切り文字(デリミタ)はカンマ記号、引用符記号(エンクロージャ)はダブルクォーテーションに設定されます。引用符の挙動は ENCLOSED_IF_NECESSARY が適用されます。
const string APPEND_CSV
CSV形式ファイルの「追記」モードです。区切り文字(デリミタ)はカンマ記号、引用符記号(エンクロージャ)はダブルクォーテーションに設定されます。引用符の挙動は ENCLOSED_IF_NECESSARY が適用されます。
const int ENCLOSED_ALL
全ての値を引用符記号(エンクロージャ)で囲むオプションです。
const int ENCLOSED_IF_NECESSARY
必要な値のみ引用符記号(エンクロージャ)で囲むオプションです。CSV/TSV形式ファイルのデフォルト設定値です。
const int ENCLOSED_NONE
どの値も引用符記号(エンクロージャ)で囲まないオプションです。汎用テキストファイルのデフォルト設定値です。
TextFile openTextFile(string filePath, string mode)
ファイル名とモードを指定して、テキストファイルを開きます。モードは下記の定数から選択します。 WRITE : 特に何も設定されていない、汎用テキストファイル用の書き込みモードです。設定を独自に行う事もできます。 , APPEND : 特に何も設定されていない、汎用テキストファイル用の追記モードです。設定を独自に行う事もできます。 , READ : 特に何も設定されていない、汎用テキストファイル用の読み込みモードです。設定を独自に行う事もできます。 , WRITE_CSV : CSV(カンマ区切り)ファイル用に設定された書き込みモードです。 , APPEND_CSV : CSV(カンマ区切り)ファイル用に設定された追記モードです。 , READ_CSV : CSV(カンマ区切り)ファイル用に設定された読み込みモードです。 , WRITE_TSV : TSV(タブ区切り)ファイル用に設定された書き込みモードです。 , APPEND_TSV : TSV(タブ区切り)ファイル用に設定された追記モードです。 , READ_TSV : TSV(タブ区切り)ファイル用に設定された読み込みモードです。 ,
TextFile openTextFile(string filePath, string mode, string textEncoding)
ファイル名、モード、文字コードを指定して、テキストファイルを開きます。モードは下記の定数から選択します。 WRITE : 特に何も設定されていない、汎用テキストファイル用の書き込みモードです。設定を独自に行う事もできます。 , APPEND : 特に何も設定されていない、汎用テキストファイル用の追記モードです。設定を独自に行う事もできます。 , READ : 特に何も設定されていない、汎用テキストファイル用の読み込みモードです。設定を独自に行う事もできます。 , WRITE_CSV : CSV(カンマ区切り)ファイル用に設定された書き込みモードです。 , APPEND_CSV : CSV(カンマ区切り)ファイル用に設定された追記モードです。 , READ_CSV : CSV(カンマ区切り)ファイル用に設定された読み込みモードです。 , WRITE_TSV : TSV(タブ区切り)ファイル用に設定された書き込みモードです。 , APPEND_TSV : TSV(タブ区切り)ファイル用に設定された追記モードです。 , READ_TSV : TSV(タブ区切り)ファイル用に設定された読み込みモードです。 , また、文字コードは下記の文字列リテラルから選択ます。 "Shift_JIS" : Shift_JIS です。ハイフン( - )では無くアンダーバー( _ )である事に注意して下さい。 , "UTF-8" : UTF-8 です。アンダーバー( _ )では無くハイフン( - )である事に注意して下さい。 , "EUC-JP" : EUC-JP です。アンダーバー( _ )では無くハイフン( - )である事に注意して下さい。 ,
void close(TextFile &textFile)
テキストファイルへのアクセスを閉じます。特に書き込みアクセス後には、バッファされている内容を最後まで書き込み切るためにも、必ず呼び出す必要があります。
string getEndOfLineCode(TextFile &textFile)
ファイル入出力に使用する改行コードを取得します。読み込みモードでは、ファイルに使用されている改行コードを解析し、CR+LF, CR, LF の3つから適切と思われるものを返します。複数の改行コードが混在している場合は、優先度の高いほうから CR+LF, CR, LF の順番で判定します。それらのどれにも該当しない場合は NULL を返します。なお、setEndOfLineCode 関数で改行コードを明示指定した後は、その指定値が返されます。
void setEndOfLineCode(TextFile &textFile, string endOfLineCode)
ファイル入出力に使用する改行コードを指定します。改行コードの指定には、System ライブラリに定義されている、以下の定数を使用する事が推奨されます。 LF : 文字コードで 0x0A, 一般的なエスケープシーケンスで \n に対応する改行コードです。 , CR : 文字コードで 0x0D, 一般的なエスケープシーケンスで \r に対応する改行コードです。 , CR+LF : 文字コードで 0x0D 0x0A, 一般的なエスケープシーケンスで \r\n に対応する改行コードです。(これは1つの定数では無く、CRとLFを加算した式です。) , EOL : 実行環境におけるデフォルトの文字コードを表します。通常は CR, LF, CR+LF のいずれかが使用されます。 ,
void setCommentLineCode(TextFile &textFile, string commentLineCode)
コメント行を表す行頭文字列を指定します。ここで指定した文字列で始まる行は、読み込み時に無視されます。また、commentln 関数でコメント行を出力する際に、ここで指定した文字列が使用されます。なお、読み込みモードの場合、この関数をコールした時点で、どこまでファイルを読み込んだかの情報は初期化されます。この項目は、デフォルトでは何も設定されていないため、コメント行を考慮する際は必ず設定する必要があります。一般的によく用いられる行頭文字列は、以下のようなものがあります。 "open/file/TextFile.html#" (ナンバー記号) : CSV/TSVファイルや、スクリプトなどによく用いられます。 , ":" (コロン) : 一部の設定ファイルやスクリプトなどで用いられます。 , ";" (セミコロン) : 一部の設定ファイルやスクリプトなどで用いられます。 , "//" (ダブルスラッシュ) : 一部のプログラミング言語で用いられます。 ,
string getCommentLineCode(TextFile &textFile)
コメント行を表す行頭文字列を返します。
bool isReadable(TextFile &textFile)
ファイルが読み込み可能な状態であるか確認します。
bool isWritable(TextFile &textFile)
ファイルが読み込み可能な状態であるか確認します。
void setDelimiter(TextFile &textFile, string delimiter)
値の区切り文字(デリミタ)を設定します。区切り文字を設定すると、 read 関数やreadln 関数が、値を区切って配列として返すようになります。一般的によく用いられる区切り文字は、以下のようなものがあります。また、write 関数やwritelnが、書き込み時に値を区切り文字で区切るようになります。 "," (カンマ記号) : CSVファイルに用いられます。 , " " (タブ記号) : TSVファイルに用いられます。 , " " (半角スペース記号) : SSVファイルに用いられます。 , ";" (セミコロン記号) : 一部の設定ファイルに用いられます。 , なお、読み込みモードの場合、この関数をコールした時点で、どこまでファイルを読み込んだかの情報は初期化されます。
void setEnclosure(TextFile &textFile, string enclosure, string enclosureEscapeCharacter, int enclosingOption)
値を囲む引用符記号(エンクロージャ)を設定します。引用符記号を設定すると、write 関数やwritelnが、書き込み時に値を引用符記号で囲むようになります。また、read 関数やreadln 関数が、読み込み時に引用符記号を解釈するようになります。引用符記号は、enclosure に指定します。引数一般によく用いられる引用符記号は、以下のようなものがあります。 "\"" (ダブルクォーテーション) : 「 " 」記号です。CSV/TSV形式ファイルでよく用いられます。 VCSSLでは、ダブルクォーテーションは特別な意味を持つため、 このように "\"" というようなリテラルで指定します。 , "'" (シングルクォーテーション) : 一部のファイルで使用されます。 , なお、値が必ず引用符記号で囲まれるべきか、必要な場合のみ囲まれるべきかは、引数のオプション enclosingOption で指定します。このオプションの指定値は以下の定数から選択します。 ENCLOSED_ALL : 値が必ず引用符で囲まれる形式です。 , ENCLOSED_IF_NECESSARY : 必要な場合のみ、値が引用符記号で囲まれる形式です。必要な場合とは、書き込み/読み込み内容が、 「 区切り文字(デリミタ)、引用符記号、コメント行頭記号、改行 」のいずれかを含む場合です。 , ENCLOSED_NONE : いかなる場合においても、値が引用符で囲まれない形式です。 , もしも、引用符記号で囲む値が、さらに引用符記号を含んでいる場合、それは別の記号でエスケープされる必要があります。これは引数 enclosureEscapeCharacter で指定します。一般的によく用いられるエスケープ記号は、以下のようなものがあります。 "\"" (ダブルクォーテーション) : 「 " 」記号です。CSV/TSV形式ファイルで、 引用符記号がダブルクォーテーションの場合、よく用いられます。 エスケープ結果は連続したダブルクォーテーションとなります。 VCSSLでは、ダブルクォーテーションは特別な意味を持つため、 このように "\"" というようなリテラルで指定します。 , "\\" (バックスラッシュ) : 「 \ 」記号です。プログラミング言語などでよく使用されます。 VCSSLでは、バックスラッシュは特別な意味を持つため、 このように "\\" というようなリテラルで指定します。 , なお、読み込みモードの場合、この関数をコールした時点で、どこまでファイルを読み込んだかの情報は初期化されます。
void write(TextFile &textFile, ... string value[ ])
テキストファイルに文字列を書き込みます。複数の内容を指定した場合、区切り文字(デリミタ)が設定されていれば、間に区切り文字を挟んで書き出します。また、必要に応じて値を引用符で囲んで書き出します。引用符でどのように囲むかの設定は、setEnclosure で行います。なお、最後の書き込み内容の末尾に、区切り文字は付加されません。従って、連続的に呼び出して書き込みを行う場合、必要に応じてdelimit 関数で区切り文字を挟む必要があります。
void writeln(TextFile &textFile, ... string value[ ])
テキストファイルに文字列を書き込み、改行します。複数の内容を指定した場合、区切り文字が設定されていれば、間に区切り文字を挟んで書き出します。また、必要に応じて値を引用符で囲んで書き出します。引用符でどのように囲むかの設定は、setEnclosure で行います。
void delimit(TextFile &textFile)
テキストファイルに区切り文字を書き込みます。
void commentln(TextFile &textFile, string comment)
テキストファイルにコメント行を書き込みます。この関数をコールするよりも前に、setCommentLineCode 関数で、コメント行の行頭文字列を設定する必要があります。
string[ ] readln(TextFile &textFile)
テキストファイルから、一行分の内容を読み込みます。区切り文字(デリミタ)が設定されている場合、内容を区切り文字で区切り、配列として返します。ただし引用符(エンクロージャ)が設定されている場合、引用符で囲まれた内部にある区切り文字や改行は、値に含まれると解釈されます(ENCLOSED_NONEオプション時は除く)。引用符をどのように解釈するかの設定は、setEnclosure で行います。
string[ ] read(TextFile &textFile)
テキストファイルから、全ての内容を読み込みます。区切り文字(デリミタ)が設定されている場合、内容を区切り文字または改行で区切り、配列として返します。ただし引用符(エンクロージャ)が設定されている場合、引用符で囲まれた内部にある区切り文字や改行は、値に含まれると解釈されます(ENCLOSED_NONEオプション時は除く)。引用符をどのように解釈するかの設定は、setEnclosure で行います。
string loadln(TextFile &textFile)
ファイルから一行を読み込み、そのまま返します。ただし、引用符記号が設定されていて、引用符記号で囲まれた内部に改行がある場合、それは行末とは見なされません。ファイル内に複数の改行コードが混在している場合は、getEndOfLineCode 関数が返すものと同じ改行コードに統一されます。また、コメント行の行頭文字が設定されている場合、コメント行は読み飛ばされます。
string load(TextFile &textFile)
ファイルから全行を読み込み、そのまま返します。ただし、コメント行の行頭文字が設定されている場合、コメント行は読み飛ばされます。なお、ファイル内に複数の改行コードが混在している場合は統一されます。ファイル内に複数の改行コードが混在している場合は、getEndOfLineCode 関数が返すものと同じ改行コードに統一されます。
int countln(TextFile &textFile)
テキストファイルの有効行数をカウントします。引用符記号が設定されていない場合、有効行数はファイルの行数に一致します。引用符記号が設定されている場合は、引用符記号で囲まれた内部にある改行はカウントされません。つまり、CSV/TSV形式ファイルにおいては、値に含まれる改行はカウントされません。readln関数でCSV/TSV形式ファイルを読み込む場合、まずこの関数で有効行数を取得して下さい。この関数が返す有効行数を超えてreadln関数をコールする事はできません。

open.gui.ButtonPanel ライブラリ

GUI部品として、ボタンが並ぶパネルを提供するライブラリです。

struct ButtonPanel
ボタンパネルの構造体です。
ButtonPanel newButtonPanel(int x, int y, int width, int height, string labelText[ ])
ボタンパネルを生成します。
void deleteComponent(ButtonPanel &panelInstance)
ボタンパネルを破棄します。
void paintComponent(ButtonPanel &panelInstance)
ボタンパネルを再描画します。
void mountComponent(ButtonPanel &panelInstance, int componentID)
ボタンパネルを、別のGUIコンポーネント上に配置します。
void demountComponent(ButtonPanel &panelInstance, int componentID)
ボタンパネルを、別のGUIコンポーネントから配置解除します。
int getPanel(ButtonPanel &panelInstance)
パネルのコンポーネントIDを返します。
int getButton(ButtonPanel &panelInstance, string labelText)
指定されたラベルに対応するボタンを取得します。
int getButton(ButtonPanel &panelInstance, int index)
指定されたインデックスのボタンを取得します。
int[ ] getComponentSize(ButtonPanel &panelInstance)
パネルのサイズを返します。
void setComponentSize(ButtonPanel &panelInstance, int width, int height)
パネルのサイズを設定します。
void setComponentSize(ButtonPanel &panelInstance)
パネルの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。パネルのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(ButtonPanel &panelInstance)
パネルの位置を返します。
void setComponentLocation(ButtonPanel &panelInstance, int x, int y)
パネルの位置を設定します。

open.gui.ButtonWindow ライブラリ

GUI部品として、ボタンが並ぶウィンドウを提供するライブラリです。

struct ButtonWindow
ボタンウィンドウの構造体です。
ButtonWindow newButtonWindow(int x, int y, int width, int height, string title, string labelText[ ])
ボタンウィンドウを生成します。
ButtonWindow newButtonWindow(string labelText[ ])
自動でウィンドウサイズを決定し、ボタンウィンドウを生成します。
void deleteComponent(ButtonWindow &windowInstance)
ボタンウィンドウを破棄します。
int getWindow(ButtonWindow &windowInstance)
ウィンドウのGUIコンポーネントIDを取得します。
int getButton(ButtonWindow &windowInstance, string labelText)
指定されたラベルに対応するボタンを取得します。
int getButton(ButtonWindow &windowInstance, int index)
指定されたインデックスのボタンを取得します。
void setComponentSize(ButtonWindow &windowInstance, int width, int height)
ウィンドウのサイズを設定します。
void setComponentSize(ButtonWindow &windowInstance)
ウィンドウの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。ウィンドウのサイズを外部から変更した際に使用します。
int[ ] getComponentSize(ButtonWindow &windowInstance)
ウィンドウのサイズを返します。
int[ ] getComponentLocation(ButtonWindow &windowInstance)
ウィンドウの位置を返します。
void setComponentLocation(ButtonWindow &windowInstance, int x, int y)
ウィンドウの位置を設定します。
void paintComponent(ButtonWindow &windowInstance)
ウィンドウを再描画します。
void hideComponent(ButtonWindow &windowInstance)
ウィンドウを不可視化します。
void showComponent(ButtonWindow &windowInstance)
ウィンドウを可視化します。

open.gui.CheckBoxPanel ライブラリ

GUI部品として、チェックボックスが並ぶパネルを提供するライブラリです。

struct CheckBoxPanel
チェックボックスパネルの構造体です。
CheckBoxPanel newCheckBoxPanel(int x, int y, int width, int height, string labelText[ ], bool defaultValue[ ])
チェックボックスパネルを生成します。
void deleteComponent(CheckBoxPanel &panelInstance)
チェックボックスパネルを破棄します。
void paintComponent(CheckBoxPanel &panelInstance)
チェックボックスパネルを再描画します。
void mountComponent(CheckBoxPanel &panelInstance, int componentID)
チェックボックスパネルを、別のGUIコンポーネント上に配置します。
void demountComponent(CheckBoxPanel &panelInstance, int componentID)
チェックボックスパネルを、別のGUIコンポーネントから配置解除します。
int getPanel(CheckBoxPanel &panelInstance)
パネルのコンポーネントIDを返します。
int getCheckBox(CheckBoxPanel &panelInstance, string labelText)
指定されたラベルに対応するチェックボックスを取得します。
int getCheckBox(CheckBoxPanel &panelInstance, int index)
指定されたインデックスのチェックボックスを取得します。
int[ ] getComponentSize(CheckBoxPanel &panelInstance)
パネルのサイズを返します。
void setComponentSize(CheckBoxPanel &panelInstance, int width, int height)
パネルのサイズを設定します。
void setComponentSize(CheckBoxPanel &panelInstance)
パネルの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。パネルのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(CheckBoxPanel &panelInstance)
パネルの位置を返します。
void setComponentLocation(CheckBoxPanel &panelInstance, int x, int y)
パネルの位置を設定します。

open.gui.CheckBoxWindow ライブラリ

GUI部品として、チェックボックスが並ぶウィンドウを提供するライブラリです。

struct CheckBoxWindow
チェックボックスウィンドウの構造体です。
CheckBoxWindow newCheckBoxWindow(int x, int y, int width, int height, string title, string labelText[ ], bool[ ] defaultValue)
チェックボックスウィンドウを生成します。
CheckBoxWindow newCheckBoxWindow(string labelText[ ], bool[ ] defaultValue)
自動でウィンドウサイズを決定し、チェックボックスウィンドウを生成します。
void deleteComponent(CheckBoxWindow &windowInstance)
チェックボックスウィンドウを破棄します。
void setButton(CheckBoxWindow &windowInstance, string label)
ウィンドウ下部に、決定ボタンを出現させます。
int getButton(CheckBoxWindow &windowInstance)
決定ボタンのコンポーネントIDを取得します。
int getWindow(CheckBoxWindow &windowInstance)
ウィンドウのGUIコンポーネントIDを取得します。
int getCheckBox(CheckBoxWindow &windowInstance, string labelText)
指定されたラベルに対応するチェックボックスを取得します。
int getCheckBox(CheckBoxWindow &windowInstance, int index)
指定されたインデックスのチェックボックスを取得します。
int[ ] getComponentSize(CheckBoxWindow &windowInstance)
ウィンドウのサイズを返します。
void setComponentSize(CheckBoxWindow &windowInstance, int width, int height)
ウィンドウのサイズを設定します。
void setComponentSize(CheckBoxWindow &windowInstance)
ウィンドウの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。ウィンドウのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(CheckBoxWindow &windowInstance)
ウィンドウの位置を返します。
void setComponentLocation(CheckBoxWindow &windowInstance, int x, int y)
ウィンドウの位置を設定します。
void paintComponent(CheckBoxWindow &windowInstance)
ウィンドウを再描画します。
void hideComponent(CheckBoxWindow &windowInstance)
ウィンドウを不可視化します。
void showComponent(CheckBoxWindow &windowInstance)
ウィンドウを可視化します。

open.gui.GraphicsLabelWindow ライブラリ

GUI部品として、描画ラベルを表示するウィンドウを提供するライブラリです。

struct GraphicsLabelWindow
グラフィックラベルウィンドウの構造体です。
GraphicsLabelWindow newGraphicsLabelWindow(int x, int y, int width, int height, string title, int graphics)
グラフィックスラベルウィンドウを生成します。
GraphicsLabelWindow newGraphicsLabelWindow(int graphics)
自動でウィンドウサイズを決定し、グラフィックスラベルウィンドウを生成します。
void deleteComponent(GraphicsLabelWindow &windowInstance)
グラフィックスラベルウィンドウを破棄します。
int getWindow(GraphicsLabelWindow &windowInstance)
ウィンドウのGUIコンポーネントIDを返します。
int getGraphicsLabel(GraphicsLabelWindow &windowInstance)
グラフィックスラベルのGUIコンポーネントIDを返します。
void setComponentSize(GraphicsLabelWindow &windowInstance, int width, int height)
ウィンドウサイズを設定します。
void setComponentSize(GraphicsLabelWindow &windowInstance)
ウィンドウの現在のサイズに合わせて、内部コンポーネントのレイアウトを自動設定します。ウインドウのサイズを外部から変更した際に使用します。
int[ ] getComponentSize(GraphicsLabelWindow &windowStruct)
ウィンドウのサイズを返します。
void fitComponentSize(GraphicsLabelWindow &windowInstance)
グラフィックスリソースにちょうど適切なウィンドウサイズを設定します。
void setComponentLocation(GraphicsLabelWindow &windowInstance, int x, int y)
ウィンドウの位置を設定します。
int[ ] getComponentLocation(GraphicsLabelWindow &windowStruct)
ウィンドウの位置を返します。
void paintComponent(GraphicsLabelWindow &windowStruct)
ウィンドウを再描画します。
void hideComponent(GraphicsLabelWindow &windowStruct)
ウィンドウを不可視化します。
void showComponent(GraphicsLabelWindow &windowStruct)
ウィンドウを可視化します。

open.gui.HorizontalSliderPanel ライブラリ

GUI部品として、水平スライダーが並ぶパネルを提供するライブラリです。

struct HorizontalSliderPanel
スライダーパネルの構造体です。
HorizontalSliderPanel newHorizontalSliderPanel(int x, int y, int width, int height, string labelText[ ], float defaultValue[ ], float minValue[ ], float maxValue[ ])
スライダーパネルを生成します。
HorizontalSliderPanel newHorizontalSliderPanel(int x, int y, int width, int height, string labelText[ ], int defaultValue[ ], int minValue[ ], int maxValue[ ])
スライダーパネルを生成します。
void deleteComponent(HorizontalSliderPanel &panelInstance)
スライダーパネルを破棄します。
void paintComponent(HorizontalSliderPanel &panelInstance)
スライダーパネルを再描画します。
void mountComponent(HorizontalSliderPanel &panelInstance, int componentID)
スライダーパネルを、別のGUIコンポーネント上に配置します。
void demountComponent(HorizontalSliderPanel &panelInstance, int componentID)
スライダーパネルを、別のGUIコンポーネントから配置解除します。
void setTextLabelWidth(HorizontalSliderPanel &panelInstance, int labelWidth)
ラベル部分の幅を設定します。
void setLabelWidth(HorizontalSliderPanel panelInstance, int labelWidth)
(この関数は互換目的でサポートされています。getTextLabelWidth を使用して下さい。)ラベル部分の幅を設定します。
int getPanel(HorizontalSliderPanel &panelInstance)
パネルのコンポーネントIDを返します。
int getHorizontalSlider(HorizontalSliderPanel &panelInstance, string labelText)
指定されたラベルに対応するスライダーを取得します。
int getHorizontalSlider(HorizontalSliderPanel &panelInstance, int index)
指定されたインデックスのスライダーを取得します。
int[ ] getComponentSize(HorizontalSliderPanel &panelInstance)
パネルのサイズを返します。
void setComponentSize(HorizontalSliderPanel &panelInstance, int width, int height)
パネルのサイズを設定します。
void setComponentSize(HorizontalSliderPanel &panelInstance)
パネルの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。パネルのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(HorizontalSliderPanel &panelInstance)
パネルの位置を返します。
void setComponentLocation(HorizontalSliderPanel &panelInstance, int x, int y)
パネルの位置を設定します。

open.gui.HorizontalSliderWindow ライブラリ

GUI部品として、水平スライダーが並ぶウィンドウを提供するライブラリです。

struct HorizontalSliderWindow
スライダーウィンドウの構造体です。
HorizontalSliderWindow newHorizontalSliderWindow(int x, int y, int width, int height, string title, string labelText[ ], float defaultValue[ ], float minValue[ ], float maxValue[ ])
スライダーウィンドウを生成します。
HorizontalSliderWindow newHorizontalSliderWindow(string labelText[ ], float defaultValue[ ], float minValue[ ], float maxValue[ ])
自動でウィンドウサイズを決定し、スライダーウィンドウを生成します。
HorizontalSliderWindow newHorizontalSliderWindow(int x, int y, int width, int height, string title, string labelText[ ], int defaultValue[ ], int minValue[ ], int maxValue[ ])
スライダーウィンドウを生成します。
HorizontalSliderWindow newHorizontalSliderWindow(string labelText[ ], int defaultValue[ ], int minValue[ ], int maxValue[ ])
自動でウィンドウサイズを決定し、スライダーウィンドウを生成します。
void deleteComponent(HorizontalSliderWindow &windowInstance)
スライダーウィンドウを破棄します。
void setTextLabelWidth(HorizontalSliderWindow &windowInstance, int labelWidth)
ラベル部分の幅を設定します。
void setButton(HorizontalSliderWindow &windowInstance, string label)
ウィンドウ下部に、決定ボタンを出現させます。
int getButton(HorizontalSliderWindow &windowInstance)
決定ボタンのGUIコンポーネントIDを取得します。
int getWindow(HorizontalSliderWindow &windowInstance)
ウィンドウのGUIコンポーネントIDを取得します。
int getHorizontalSlider(HorizontalSliderWindow &windowInstance, string labelText)
指定されたラベルに対応するスライダーを取得します。
int getHorizontalSlider(HorizontalSliderWindow &windowInstance, int index)
指定されたインデックスのスライダーを取得します。
int[ ] getComponentSize(HorizontalSliderWindow &windowInstance)
ウィンドウのサイズを返します。
void setComponentSize(HorizontalSliderWindow &windowInstance, int width, int height)
ウィンドウのサイズを設定します。
void setComponentSize(HorizontalSliderWindow &windowInstance)
ウィンドウの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。ウィンドウのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(HorizontalSliderWindow &windowInstance)
ウィンドウの位置を返します。
void setComponentLocation(HorizontalSliderWindow &windowInstance, int x, int y)
ウィンドウの位置を設定します。
void setComponentLocation(HorizontalSliderWindow &windowInstance, int x, int y)
ウィンドウの位置を設定します。
void paintComponent(HorizontalSliderWindow &windowInstance)
ウィンドウを再描画します。
void hideComponent(HorizontalSliderWindow &windowInstance)
ウィンドウを不可視化します。
void showComponent(HorizontalSliderWindow &windowInstance)
ウィンドウを可視化します。

open.gui.TextFieldPanel ライブラリ

GUI部品として、テキストフィールドが並ぶパネルを提供するライブラリです。

struct TextFieldPanel
テキストフィールドパネルの構造体です。
TextFieldPanel newTextFieldPanel(int x, int y, int width, int height, string labelText[ ], string defaultText[ ])
テキストフィールドパネルを生成します。
void deleteComponent(TextFieldPanel &panelInstance)
テキストフィールドパネルを破棄します。
void paintComponent(TextFieldPanel &panelInstance)
テキストフィールドパネルを再描画します。
void mountComponent(TextFieldPanel &panelInstance, int componentID)
テキストフィールドパネルを、別のGUIコンポーネント上に配置します。
void demountComponent(TextFieldPanel &panelInstance, int componentID)
テキストパネルを、別のGUIコンポーネントから配置解除します。
void setLabelWidth(TextFieldPanel &panelInstance, int labelWidth)
(この関数は互換目的でサポートされています。getTextLabelWidth を使用して下さい。)ラベル部分の幅を設定します。
void setTextLabelWidth(TextFieldPanel &panelInstance, int labelWidth)
ラベル部分の幅を設定します。
int getPanel(TextFieldPanel &panelInstance)
パネルのコンポーネントIDを返します。
int getTextField(TextFieldPanel &panelInstance, string labelText)
指定されたラベルに対応するテキストフィールドを取得します。
int getTextField(TextFieldPanel &panelInstance, int index)
指定されたインデックスのテキストフィールドを取得します。
int[ ] getComponentSize(TextFieldPanel &panelInstance)
パネルのサイズを返します。
void setComponentSize(TextFieldPanel &panelInstance, int width, int height)
パネルのサイズを設定します。
void setComponentSize(TextFieldPanel &panelInstance)
パネルの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。パネルのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(TextFieldPanel &panelInstance)
パネルの位置を返します。
void setComponentLocation(TextFieldPanel &panelInstance, int x, int y)
パネルの位置を設定します。

open.gui.TextFieldWindow ライブラリ

GUI部品として、テキストフィールドが並ぶウィンドウを提供するライブラリです。

struct TextFieldWindow
テキストフィールドウィンドウの構造体です。
TextFieldWindow newTextFieldWindow(int x, int y, int width, int height, string title, string labelText[ ], string defaultValue[ ])
自動でウィンドウサイズを決定し、テキストフィールドウィンドウを生成します。
TextFieldWindow newTextFieldWindow(string labelText[ ], string defaultValue[ ])
自動でウィンドウサイズを決定し、テキストフィールドウィンドウを生成します。
void deleteComponent(TextFieldWindow &windowInstance)
テキストフィールドウィンドウを破棄します。
void setTextLabelWidth(TextFieldWindow &windowInstance, int labelWidth)
ラベル部分の幅を設定します。
void setButton(TextFieldWindow &windowInstance, string label)
ウィンドウ下部に、決定ボタンを出現させます。
int getButton(TextFieldWindow &windowInstance)
決定ボタンのGUIコンポーネントIDを取得します。
int getWindow(TextFieldWindow &windowInstance)
ウィンドウのGUIコンポーネントIDを取得します。
int getTextField(TextFieldWindow &windowInstance, string labelText)
指定されたラベルに対応するチェックボックスを取得します。
int getTextField(TextFieldWindow &windowInstance, int index)
指定されたインデックスのチェックボックスを取得します。
int[ ] getComponentSize(TextFieldWindow &windowInstance)
ウィンドウのサイズを返します。
void setComponentSize(TextFieldWindow &windowInstance, int width, int height)
ウィンドウのサイズを設定します。
void setComponentSize(TextFieldWindow &windowInstance)
ウィンドウの現在のサイズに合わせて、内部コンポーネントのサイズを自動設定します。ウィンドウのサイズを外部から変更した際に使用します。
int[ ] getComponentLocation(TextFieldWindow &windowInstance)
ウィンドウの位置を返します。
int[ ] getComponentLocation(TextFieldWindow &windowInstance)
ウィンドウの位置を返します。
void setComponentLocation(TextFieldWindow &windowInstance, int x, int y)
ウィンドウの位置を設定します。
void paintComponent(TextFieldWindow &windowInstance)
ウィンドウを再描画します。
void hideComponent(TextFieldWindow &windowInstance)
ウィンドウを不可視化します。
void showComponent(TextFieldWindow &windowInstance)
ウィンドウを可視化します。

open.graphics2d.Graphics2DFramework ライブラリ

2DCG( 2次元グラフィックス )を手軽に扱うための軽量フレームワークです。

int getGraphics()
2DCGのグラフィックスIDを返します。
int getRenderer()
2DCGのレンダラーIDを返します。
int getGraphicsLabel()
描画ラベルのGUIコンポーネントIDです。
int getWindow()
ウィンドウのGUIコンポーネントIDを取得します。ウィンドウのGUIコンポーネントID
void setAnimationState(bool enable)
アニメーションモードの有効/無効を設定します。
bool getAnimationState()
アニメーションの有効/無効を取得します。
void setFrameRate(float rate)
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )を設定します。
float getFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の設定値を取得します。
float getCurrentFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
int getLastFrameTime()
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
void setPaintGraphics2DState(bool b)
画面描画時(paintコール前)に、自動でGraphics2D.paintGraphics2Dをコールするかどうかを設定します。trueを指定すると自動でコールされます。falseに設定すると自動でコールされないので、paintイベントハンドラなどで明示的にコールする必要があります。
bool getPaintGraphics2DState()
画面描画時(paintコール前)に、自動でGraphics2D.paintGraphics2Dをコールするかどうかを取得します。
void setBackgroundColor(int r, int g, int b, int a)
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で指定します。
void setBackgroundColor(int color[ ])
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列を指定します。
int[ ] getBackgroundColor()
背景色を取得します。戻り値には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列が返されます。
void setWindowTitle(string title)
ウィンドウタイトルを設定します。
string getWindowTitle()
ウィンドウタイトルを取得します。
void setWindowSize(int width, int height)
ウィンドウサイズを指定します。
void setWindowSize(int size[ ])
ウィンドウサイズを設定します。
int[ ] getWindowSize()
ウィンドウサイズを取得します。
void setMarginRight(int margin)
ウィンドウ右側の余白を設定します。
int getMarginRight()
ウィンドウ右側の余白を取得します。
void setMarginLeft(int margin)
ウィンドウ左側の余白を設定します。
int getMarginLeft()
ウィンドウ左側の余白を取得します。
void setMarginTop(int margin)
ウィンドウ上側の余白を設定します。
int getMarginTop()
ウィンドウ上側の余白を取得します。
void setMarginBottom(int margin)
ウィンドウ下側の余白を設定します。
int getMarginBottom()
ウィンドウ下側の余白を取得します。
void setAnimationWaitMin(int wait)
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
int getAnimationWaitMin()
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
void setAnimationWaitMax(int wait)
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
int getAnimationWaitMax()
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
void setMainLoopState(bool state)
メインループの継続状態を設定します。falseに設定するとアニメーションのメインループを脱出し、プログラムを終了します。
bool getMainLoopState()
メインループの継続状態を取得します。
string[ ] getMainArgument()
main関数の引数を取得します。
void export( string filePath, string format, float quality )
現在の描画ラベルの内容を、画像ファイルに出力します。ファイルの出力は、この関数をコールした瞬間に行われるわけでは無く、次回の画面更新タイミングに合わせて実行されます。
void main( string args[ ] )
main関数です。通常は自動で実行され、frameworkMain関数をコールします。ただし、メインプログラムでmain関数を定義する場合は、こちらは自動で実行されなくなるので、下記のframeworkMainを明示的に呼ぶ必要があります。
void frameworkMain( string args[ ] )
フレームワークのメイン処理です。通常はmain関数から自動で実行されます。ただし、メインプログラムでmain関数を定義する場合は、自動で実行されなくなるので、適当なタイミングで呼ぶ必要があります。
void onWindowResize( int id, int width, int height )
ウィンドウがリサイズされた際にコールされるイベントハンドラです。
void onWindowClose( int id )
ウィンドウが閉じられた際にコールされるイベントハンドラです。
void paintWindow()
ウィンドウの再描画を行います。アニメーションの画面更新タイミングで自動的にコールされますが、任意のタイミングで明示的に呼び出して再描画させる事も可能です。
void render()
paint関数などをコールし、画面表示内容を描画します。通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。
void onStart( int rendererID )
起動時に一度だけコールされます。スプライトの生成・配置などの初期化処理は、ここに記述します。
void onExit( int rendererID )
終了時に一度だけコールされます。終了時に行いたい処理があれば、ここに記述します。
void onPaint( int rendererID )
画面更新タイミング(毎秒数十回)で毎回コールされます。アニメーションの2DCG描き込み(直接描画)を行いたい場合などは、こに記述します。
void onUpdate( int rendererID )
画面更新タイミング(毎秒数十回)の間で毎回コールされます。スプライトの移動などを行いたい場合などは、ここに記述します。
void onResize( int rendererID )
ウィンドウサイズが変更された場合にコールされます。画面に配置したGUI部品のレイアウト調整などを行いたい場合は、ここに記述します。

open.graphics2d.Graphics3DFramework ライブラリ

3DCG( 3次元グラフィックス )を手軽に扱うための軽量フレームワークです。

int getGraphics()
3DCGのグラフィックスリソースIDを返します。
int getBackgroundGraphics()
背景2DCGのグラフィックスリソースIDを返します。
int getForegroundGraphics()
前景2DCGのグラフィックスリソースIDを返します。
int getRenderer()
3DCGのレンダラーIDを返します。
int getBackgroundRenderer()
背景2DCGのレンダラーIDを返します。
int getForegroundRenderer()
前景2DCGのレンダラーIDを返します。
void setBackgroundRendererState(bool state)
背景2DCGレンダラーの有効/無効を設定します。
void setForegroundRendererState(bool state)
前景2DCGレンダラーの有効/無効を設定します。
int getGraphicsLabel()
描画ラベルのGUIコンポーネントIDを返します。
int getWindow()
ウィンドウのGUIコンポーネントIDを取得します。
void setAnimationState(bool enable)
アニメーションモードの有効/無効を設定します。
bool getAnimationState()
アニメーションの有効/無効を取得します。
void setFrameRate(float rate)
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )を設定します。
float getFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の設定値を取得します。
float getCurrentFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
int getLastFrameTime()
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
float getCurrentFrameRate()
アニメーションの画面更新頻度( 1秒間あたりの描画回数 )の実測値を取得します。
int getLastFrameTime()
アニメーションの最終画面更新時刻を取得します。時刻は、プログラム開始時刻からの経過時間を、通常はミリ秒単位で表したものが返されます。ただし単位は処理系によって異なる可能性があります。処理系の依存性を完全に排除するためには、Time.millisecond関数を挟んで使用して下さい。
void setPaintGraphics2DState(bool state)
画面描画時(paintコール前)の背景・前景描画において、自動でGraphics3D.paintGraphics2Dをコールするかどうかを設定します。trueを指定すると自動でコールされます。falseに設定すると自動でコールされないので、paintイベントハンドラなどで明示的にコールする必要があります。
bool getPaintGraphics3DState()
画面描画時(paintコール前)に、自動でGraphics3D.paintGraphics3Dをコールするかどうかを取得します。
void setMagnification(float rate)
描画倍率を設定します。倍率は、視点から1.0の距離にある、半径1.0の円が、半径何ピクセルに描かれるかの比率に一致します。
float getMagnification()
描画倍率を取得します。倍率は、視点から1.0の距離にある、半径1.0の円が、半径何ピクセルに描かれるかの比率に一致します。
void setBackgroundColor(int r, int g, int b, int a)
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で指定します。
void setBackgroundColor(int color[ ])
背景色を設定します。引数には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列を指定します。
int[ ] getBackgroundColor()
背景色を取得します。戻り値には、背景色の 赤,緑,青,α成分 を、0〜255の範囲で格納した配列が返されます。
void setDirectionalLightVector(float x, float y, float z)
平行光源の方向ベクトルを指定します。ベクトルは、ライトの存在する方向のベクトルを指定します。
void setDirectionalLightVector(float v[ ])
平行光源の方向ベクトルを指定します。ベクトルは、ライトの存在する方向のベクトルを指定します。
float[ ] getDirectionalLightVector()
平行光源の方向ベクトルを取得します。ベクトルは、ライトの存在する方向のベクトルが返されます。
void setDirectionalLightBrightness(float power)
平行光源の輝度を指定します。
float getDirectionalLightBrightness()
平行光源の輝度を取得します。
void setAmbientLightBrightness(float power)
アンビエント光源の輝度を指定します。
float getAmbientLightBrightness()
アンビエント光源の輝度を取得します。
void setWindowTitle(string title)
ウィンドウタイトルを設定します。
string getWindowTitle()
ウィンドウタイトルを取得します。
void setWindowSize(int width, int height)
ウィンドウサイズを指定します。
void setWindowSize(int size[ ])
ウィンドウサイズを設定します。
int[ ] getWindowSize()
ウィンドウサイズを取得します。
void setMarginRight(int margin)
ウィンドウ右側の余白を設定します。
int getMarginRight()
ウィンドウ右側の余白を取得します。
void setMarginLeft(int margin)
ウィンドウ左側の余白を設定します。
int getMarginLeft()
ウィンドウ左側の余白を取得します。
void setMarginTop(int margin)
ウィンドウ上側の余白を設定します。
int getMarginTop()
ウィンドウ上側の余白を取得します。
void setMarginBottom(int margin)
ウィンドウ下側の余白を設定します。
int getMarginBottom()
ウィンドウ下側の余白を取得します。
void setAnimationWaitMin(int wait)
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
int getAnimationWaitMin()
アニメーションウェイト(メインループのウェイト)の下限値を設定します。
void setAnimationWaitMax(int wait)
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
int getAnimationWaitMax()
アニメーションウェイト(メインループのウェイト)の上限値を設定します。
void setMainLoopState(bool state)
メインループの継続状態を設定します。falseに設定するとアニメーションのメインループを脱出し、プログラムを終了します。
bool getMainLoopState()
メインループの継続状態を取得します。
string[ ] getMainArgument()
main関数の引数を取得します。
void export( string filePath, string format, float quality )
現在の描画ラベルの内容を、画像ファイルに出力します。ファイルの出力は、この関数をコールした瞬間に行われるわけでは無く、次回の画面更新タイミングに合わせて実行されます。
void main( string args[ ] )
main関数です。通常は自動で実行され、frameworkMain関数をコールします。ただし、メインプログラムでmain関数を定義する場合は、こちらは自動で実行されなくなるので、下記のframeworkMainを明示的に呼ぶ必要があります。
void frameworkMain( string args[ ] )
フレームワークのメイン処理です。通常はmain関数から自動で実行されます。ただし、メインプログラムでmain関数を定義する場合は、自動で実行されなくなるので、適当なタイミングで呼ぶ必要があります。
void onWindowClose( int id )
ウィンドウが閉じられた際にコールされるイベントハンドラです。
void onWindowResize( int id, int width, int height )
ウィンドウがリサイズされた際にコールされるイベントハンドラです。
void paintWindow()
ウィンドウの再描画を行います。通常は自動で実行されますが、通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。
void render()
paint関数などをコールし、画面表示内容を描画します。3DCGと、背景及び前景2DCGの合成も行います。通常は自動で実行されますが、アニメーションを無効にしている場合などは、画面更新時に明示的に呼び出す必要があります。
void onStart( int rendererID )
起動時に一度だけコールされます。3Dモデルの生成・配置などの初期化処理は、ここに記述します。
void onExit( int rendererID )
終了時に一度だけコールされます。終了時に行いたい処理があれば、ここに記述します。
void onPaint( int rendererID )
画面更新タイミング(毎秒数十回)で毎回コールされます。前景・背景2DCGの描画を行いたい場合などは、ここに記述します。
void onUpdate( int rendererID )
画面更新タイミング(毎秒数十回)の間で毎回コールされます。3Dモデルの移動などを行いたい場合などは、ここに記述します。
void onResize( int rendererID )
ウィンドウサイズが変更された場合にコールされます。画面に配置したGUI部品のレイアウト調整などを行いたい場合は、ここに記述します。