Rikkymodule/関数一覧/getinfo

このページでは、Rikkymoduleで追加される関数を解説する。

この関数はaviutlやexeditやオブジェクトの情報を取得できます

`getinfo(string [, number])`のように使います
stringは取得したいものを指定してください
戻り値は指定したものによって、数、種類が変わってきます
stringの種類

```
 string = rikky\_module.getinfo("version" [, number])

```

numberの種類

* 指定なし : aviutl.exe本体のバージョンの文字列を返します、最新は1.10
* 1 : 拡張編集exedit.aufのバージョンの文字列を返します、最新は0.93rc1
* 2 : rikky\_module.aufのバージョンの文字列を返します、最新は0.1.gamma
* 3 : rikky\_module.aufのバージョンの通し番号の数値を返します、最新は3
* 4 : aviutl.exeのバージョンの通し番号の数値を返します、最新は56
* 5 : 拡張編集exedit.aufのバージョンの通し番号の数値を返します、最新は53

```
 number, number = rikky\_module.getinfo("frame")

```

現在のフレーム数と全体のフレーム数の2つの数値を返します

```
 string = rikky\_module.getinfo("aup" [, number])

```

numberの種類

* 指定なし : フルパスの文字列を返します
* 1 : ファイル名だけの文字列を返します

```
 string = rikky\_module.getinfo("output" [, number])

```

numberの種類

* 指定なし : フルパスの文字列を返します
* 1 : ファイル名だけの文字列を返します

```
 string = rikky\_module.getinfo("state")

```

編集中は"editing"、書き出し中は"saving"、再生中は"playing"のいずれかの文字列を返します

```
 string = rikky\_module.getinfo("path" [, number])

```

numberの種類

* 指定なし : aviutl.exeがあるフォルダの文字列を返します、文字列の最後は\\
* 1 : 拡張編集exedit.aufがあるフォルダの文字列を返します、文字列の最後は\\
* 2 : デスクトップの文字列を返します、文字列の最後は\\

```
 boolean = rikky\_module.getinfo("focus")

```

numberの指定はなく、編集ウインドウが出ている場合はtrue、出ていない場合はfalseのブーリアンを返します

```
 number or string = rikky\_module.getinfo("blend" [, number])

```

numberの種類

* 指定なし : obj.setoption("blend")で設定した合成モードの数値を返します
* 1 : 編集ウインドウのオブジェクト自体の合成モードの数値を返します
* 2 : obj.setoption("blend")で設定した合成モードの数値か文字列を返します

戻り値の数値の種類は

* 通常は0、加算は1、減算2
* 乗算3、スクリーン4、オーバーレイ5
* 比較(明)6、比較(暗)7、輝度8
* 色差9、陰影10、明暗11、差分12
* また"alpha\_add"は20、"alpha\_max"は21、"alpha\_sub"は22、"alpha\_add2"は25
* optionが2ならばそのまま"alpha\_add"や"alpha\_sub"が返ってきます

```
 table, boolean = rikky\_module.getinfo("group")

```

グループ制御の情報が入ったテーブルとグループ制御下にあるかのブーリアンの2つが返ってきます。グループ制御の情報が入ったテーブルのキーは以下のものです

キーの種類

```
zoom	: 呼び出したオブジェクトに影響するグループ制御の拡大率の数値
x	: 呼び出したオブジェクトに影響するグループ制御のX座標の数値
y	: 呼び出したオブジェクトに影響するグループ制御のY座標の数値
z	: 呼び出したオブジェクトに影響するグループ制御のZ座標の数値
Xx	: 呼び出したオブジェクトに影響するグループ制御のX軸のベクトルXのx成分の数値
Xy	: 呼び出したオブジェクトに影響するグループ制御のX軸のベクトルXのy成分の数値
Xz	: 呼び出したオブジェクトに影響するグループ制御のX軸のベクトルXのz成分の数値
Yx	: 呼び出したオブジェクトに影響するグループ制御のY軸のベクトルYのx成分の数値
Yy	: 呼び出したオブジェクトに影響するグループ制御のY軸のベクトルYのy成分の数値
Yz	: 呼び出したオブジェクトに影響するグループ制御のY軸のベクトルYのz成分の数値
Zx	: 呼び出したオブジェクトに影響するグループ制御のZ軸のベクトルZのx成分の数値
Zy	: 呼び出したオブジェクトに影響するグループ制御のZ軸のベクトルZのy成分の数値
Zz	: 呼び出したオブジェクトに影響するグループ制御のZ軸のベクトルZのz成分の数値

```

* グループ制御下に入っている場合はtrue、入っていなければfalseになります
* ただし、描画先が仮想バッファになっている場合は常にfalseになります

例として描画したい位置がX、Y、Zだった場合は

```
x = (group.Xx \* X + group.Yx \* Y + group.Zx \* Z) \* group.zoom + group.x
y = (group.Xy \* X + group.Yy \* Y + group.Zy \* Z) \* group.zoom + group.y
z = (group.Xz \* X + group.Yz \* Y + group.Zz \* Z) \* group.zoom + group.z

```

グループ制御の影響を受けたx、y、zを出すことができます

```
 number = rikky\_module.getinfo("root")

```

ルートやシーンの数値を返します

* ルートは0です

```
 string = rikky\_module.getinfo("text" [, number])

```

numberの種類

* 指定なし : 直前のテキストオブジェクトやobj.load("text")で呼び出した文字列を返します
* 1 ～ 100 : 同じフレームの指定したレイヤにあるテキストオブジェクトの文字列を返します

```
 string = rikky\_module.getinfo("buffer")

```

描画先が仮想バッファかならば"tmp"、フレームバッファならば"frm"の文字列を返します

```
 boolean = rikky\_module.getinfo("dialog")

```

ウインドウが表示されているときはtrue、されていないときはfalseのブーリアンを返します

```
 string or number, table = rikky\_module.getinfo("object" [, number])

```

オブジェクトの名称の文字列とそのオブジェクトの色情報などが入ったテーブルの2つを返します
オブジェクトの名称は以下のとおりです

```
"動画ファイル"、"画像ファイル"、"テキスト"
"図形"、"フレームバッファ"、"音声波形"
"シーン"、"直前オブジェクト"、"フィルタオブジェクト"
"カスタムオブジェクト"、"グループ制御"

```

ただし、その他不明や未対応のオブジェクトならば、"不明"の文字列を返します

numberの種類

* 指定なし : 上記で説明したオブジェクトの名称の文字列を返します
* 1 : オブジェクトの種類に対応した数値を返します(対応した数値は下記の各オブジェクトに記載しています)

情報のテーブルはオブジェクトの種類によってキーが変わります

"動画ファイル" (対応数値 0)

```
file		: 参照している動画のパスの文字列
loop		: ループ再生が有効なら1、無効なら0の数値
alphachannel	: アルファチャンネルが有効なら1、無効なら0の数値

```

"画像ファイル" (対応数値 1)

```
file		: 参照している動画のパスの文字列

```

"テキスト" (対応数値 3)

```
color		: テキストの色の数値、0xRRGGBBの形式
color2		: テキストの縁取りまたは影の色の数値、0xRRGGBBの形式
type		: 文字装飾(0が装飾なし、1が影、2が薄い影、3が縁取り、4が薄い縁取り)の数値
autoadjust	: 長さを自動調節が有効なら1、無効なら0の数値
soft		: 滑らかにするかが有効なら1、無効なら0の数値
monospace	: 等間隔モードが有効なら1、無効なら0の数値
align		: 文字寄せ(0が横書左上、1が横書中上、2が横書右上、3が横書左中、4が横書中中、5が横書右中、6が横書左下、7が横書中下、8が横書右下、9が縦書右上、10が縦書右中、11が縦書右下、12が縦書中上、13が縦書中中、14が縦書中下、15が縦書左上、16が縦書左中、17が縦書左下)の数値
spacing_x	: 字間(-100から100まで)の数値
spacing_y	: 行間(-100から100まで)の数値
presision	: 高精度が有効なら1、無効なら0の数値
font		: フォントの文字列
individual	: 文字毎に個別オブジェクトが有効なら1、無効なら0の数値
display		: 移動座標上に表示するが有効なら1、無効なら0の数値
autoscroll	: 自動スクロールが有効なら1、無効なら0の数値
bold		: 太字が有効なら1、無効なら0の数値
italic		: 斜字有効なら1、無効なら0の数値

```

"図形" (対応数値 4)

```
color		: 図形の色の数値、0xRRGGBBの形式
figure		: 背景や円といった形の文字列、ファイルを参照している場合はそのファイルのフルパス

```

"フレームバッファ" (対応数値 5)

```
bufferclear	: フレームバッファをクリアするが有効なら1、無効なら0の数値

```

"音声波形" (対応数値 6)

```
color		: 波形の色の数値、0xRRGGBBの形式
projectsound	: 編集全体の音声を基にするが有効なら1、無効なら0の数値
file		: 参照ファイルのフルパスの文字列
type		: 波形の形(0がType1、1がType2、2がType3、3がType4、4がType5)の数値
mode		: 波形タイプの数値
res_w		: 横解像度の数値
res_h		: 縦解像度の数値
pad_w		: 横スペース(%)の数値
pad_h		: 縦スペース(%)の数値
mirror		: ミラーの数値

```

"シーン" (対応数値 7)

```
loop		: ループ再生が有効なら1、無効なら0の数値
scnenenumber	: 呼び出しているシーン番号の数値

```

"カメラ制御" (対応数値 95)

```
zbuffer		: Zバッファ/シャドウマップを有効にするが有効なら1、無効なら0の数値

```

それ以外は空のテーブルです

### "start\_end"

オブジェクトの始まりと終わりのフレーム数を取得できます

```
 number, number = rikky\_module.getinfo("start\_end")

```

呼び出したオブジェクトの始まりと終わりの全体のフレーム数2つの数値を返します

### "filter"

オブジェクトにつけているフィルタ効果を取得できます

```
 table, number, number = rikky\_module.getinfo("filter" [, option])

```

フィルタ効果やアニメーション効果の名前の文字列が入ったテーブルと、現在の位置の数値と、ついているフィルタの総数の数値の3つを返します

numberの種類

* 指定なし : 各フィルタ効果が無効有効にかかわらずすべてをtableに収めます
* 1 : 無効のフィルタ効果を外すようにします

### "shadow"

カメラ制御オプションのシャドー対象の有無を取得できます

```
 number = rikky\_module.getinfo("shadow")

```

シャドー対象が有効ならば1、無効ならば0の数値を返します、1がシャドー対象有効

* フィルタのカメラ制御オプション以外にもobj.setoption("shadow")で設定した場合の数値も取得できます

### "antialias"

アンチエイリアスの有無を取得できます

```
 number = rikky\_module.getinfo("antialias")

```

アンチエイリアスが有効ならば1、無効ならば0の数値を返します

### "culling"

裏面を非表示するかの有無を取得できます

```
 number = rikky\_module.getinfo("culling")

```

裏面を描画する場合は0、非描画の場合は1の数値を返します

* ただし、オブジェクト側の裏面非表示にチェックを入れている場合は、obj.setoption("culling")で設定していても1を返します

### "billboard"

カメラ制御オプションのカメラの方向を向くの有無を取得できます

```
 number = rikky\_module.getinfo("billboard")

```

オブジェクトが向く方向(0がカメラの方向を見るのオプションはなし、1のときは横方向だけ見るを有効、2のときは横と縦の方向だけを見るを有効、3は横と縦の方向と回転を有効)の数値を返します

* フィルタのカメラ制御オプション以外にもobj.setoption("billboard")で設定した場合の数値も取得できます

### "force"

合成モードの強制の有無を取得できます

```
 number = rikky\_module.getinfo("force")

```

強制が有効の場合1、無効の場合0の数値を返します

### "input"

現在AviUtlが読み込むことができる拡張子を取得できます

```
 table, number = rikky\_module.getinfo("input")

```

ピリオドを含めた拡張子が収められたテーブルとその要素数の数値を返します

### "hwnd"

AviUtlの各ウィンドウのハンドルを返します

```
 number or table, string or table [, number] = rikky\_module.getinfo("hwnd" [,option])

```

* オプションの数値なし、または指定以外の場合はメインウィンドウのハンドルの数値とウインドウの名前の文字列が返ります
* オプションの数値が1の場合は、オブジェクトの操作ウィンドウのハンドルと名前が返ります(ディスプレイ上になくとも、ハンドルは存在しています)
* オプションの数値が2の場合は、再生ウィンドウのハンドルと名前が返ります(ディスプレイ上になくとも、ハンドルは存在しています)
* オプションの数値が3の場合は、現在表示されているウィンドウのハンドルと名前が入ったテーブル2つと、テーブルの要素数が返ります
* オプションの数値が4の場合は、すべてのウィンドウのハンドルと名前が入ったテーブル2つと、テーブルの要素数が返ります

### "count"

AviUtlの処理実行の総数を返します

```
 number = rikky\_module.getinfo("count")

```

新しいプロジェクトを開始すると0からになります

### "cache"

obj.copybufferのcacheに保存されている名称を返します

```
 table, number = rikky\_module.getinfo("cache")

```

tableにはstringが収められていて、stringはキャッシュ名cache:○○の○○部分です

numberはテーブルの要素の数です
### "groups"

グループ化したオブジェクトの順番と総数を返します

```
 number, number, number = rikky\_module.getinfo("groups")

```

* 第1戻り値はグループ化した同じグループ内での順番で、obj.indexのようなものです
* 第2戻り値はグループ化した同じグループ内の総数で、obj.numのようなものです
* 第3戻り値はグループ化のidのようなもので、0以上の数です
* グループ化していないとidは0です

### "font"

obj.setfontで設定されている設定を返します

```
 table = rikky\_module.getinfo("font")

```

tableには複数のキーが設定されています

```
"name"		: フォントの名前で、縦書の場合は先頭に半角の@がつきます
"size"		: フォントのサイズです
"bold"		: 太字になっているかで、なっているときはtrue、違う場合はfalseのboolean型です
"italic"	: 斜字になっているかで、なっているときはtrue、違う場合はfalseのboolean型です
"color"		: フォントの色です
"color2"	: フォントの装飾に使われる色です
"type"		: フォントの装飾のタイプで、0だとなし、1だと影、2だと薄影、3だと縁取り、4だと細縁取りです

```

color、color2、typeはスクリプトごとに初期状態(0xffffff、0x0、0)に戻るので、テキストオブジェクトの色を取得したい場合はgetinfo("object")を使用してください

### "draw\_state"

描画済みかを取得できます

```
 boolean = rikky\_module.getinfo("draw\_state")

```

描画済みの場合はtrue、未描画の場合はfalseです