Skip to content

APIリファレンス (Luaスクリプト)

mimaraka edited this page Feb 12, 2025 · 1 revision

モジュールの読み込み

まず、require()関数を使用して、Curve Editor の関数テーブルを取得します。

local ce = require"curve_editor"

Note

従来のv1.xでの方法でも同様に関数テーブルを取得することができます。

関数一覧

getcurve()

カーブの値を取得します。

ce.getcurve(mode, param, prog, st, ed)
ce.getcurve({mode=mode, param=param}, prog, st, ed)

引数

  • mode

    編集モードを表す数値または文字列を指定します。 数値・文字列と各編集モードとの対応は以下の通りです:

    数値 文字列 モード
    0 "bezier" ベジェ
    1 "normal" 標準
    2 "value" 値指定
    3 "elastic" 振動
    4 "bounce" バウンス
    5 "script" スクリプト
  • param

    ベジェ・振動・バウンスモードではカーブのコードを指定します。
    標準・値指定・スクリプトでは ID の値をそのまま指定します(トラックバーのパラメータに指定する値とは異なります)。

  • prog

    0.0(開始)から 1.0(終了)までの進捗を小数値で指定します。

  • st

    イージングの開始値を指定します。

  • ed

    イージングの終了値を指定します。

戻り値

関数の呼び出しに成功すると、指定したカーブによって補間された数値が返されます。
引数が無効な場合や、関数の呼び出しに失敗した場合はnilが返されます。


putselectbutton()

アニメーション効果のパラメータ設定ダイアログで、指定したインデックス(1~16)の設定項目にカーブを選択するボタンを追加します。
アニメーション効果のスクリプト(.anm)でのみ使用可能です。

ce.putselectbutton(index)

引数

  • index

    選択ボタンを設置したい設定項目のインデックス (1~16)

戻り値

なし


選択ボタンをクリックすると、カーブを選択するためのダイアログが表示されます。

カーブを選択し、ダイアログ内の "OK" ボタンをクリックしてすると、設定項目に関連付けられた変数に{mode=(モード文字列), param=(パラメータ値)}のテーブルが代入されます。

getcurve()関数の第一引数にこのテーブルを代入して、カーブを取得することができます。
また、curve.modecurve.paramのように、モード値やパラメータ値を取り出すこともできます。

--dialog:カーブ,local curve={mode="bezier", param=340340016};

...

ce.putselectbutton(1)

...

ce.getcurve(curve, prog, st, ed)

Important

ボタンを設置する設定項目の初期値には、テーブル({})を指定してください。(文字列("")などが指定されていると、テーブルとして代入されません。)

Note

カーブ選択ボタンは、該当のスクリプトが読み込まれている時にのみ表示されます。
つまり、アニメーション効果が有効でない(チェックが外れている)場合や、シークバーが該当のオブジェクト上に存在しない場合はボタンが表示されません。


getversionstr()

Curve Editor のバージョンを文字列で取得します。

local versionstr = ce.getversionstr() -- e.g.) => "v2.0.1"