Automation

Automation

NoteGroup 内の特定のパラメータタイプ(ピッチベンドなど)を制御する点の集合。

「オートメーション」という名前は DAW ソフトウェアから来ています。DAW ソフトウェアにおいて各トラックには通常、ドラッグ可能な制御点によって定義されたエンベロープがあります。より高度なケースでは、エンベロープでプラグインのプロパティ(フィルタカットオフ、リバーブの長さなど)をコントロールすることもできます。Synthesizer V Studio では、Track ではなく NoteGroup ごとに Automation が定義されていることが大きな違いです。

継承

メソッド

add(b, v) → {boolean}

位置 b(ブリック)とパラメータ値 v の制御点を追加します。b 上にすでに制御点がある場合、パラメータ値を v に更新します。

新しく制御点が作成された場合は真を返します。

パラメータ:
名前 細細
b number
v number
戻り値:
boolean

clone() → {Automation}

現在のオブジェクトの深いコピー。

戻り値:
Automation

get(b) → {number}

位置 b(ブリック)での補間されたパラメータ値を取得します。もちろん b に制御点が存在する場合、補間方法にかかわらず、その点のパラメータ値を返します。

パラメータ:
名前 細細
b number
戻り値:
number

getAllPoints() → {array}

Automation#getPoints の範囲無制限バージョン。

戻り値:

an array of array of number

array

getDefinition() → {object}

以下のプロパティを持つオブジェクトを取得します。

  • displayName: string
  • typeName: string
  • range: 長さ 2 の要素が numberarray
  • defaultValue: number
displayName typeName range 単位 / パラメータ値の意味 defaultValue
"Pitch Deviation" "pitchDelta" -1200, 1200 cents 0
"Vibrato Envelope" "vibratoEnv" 0, 2 x 1
"Loudness" "loudness" -48, 12 dB 0
"Tension" "tension" -1.0, 1.0 張り詰める <-> ゆったり 0
"Breathiness" "breathiness" -1.0, 1.0 ささやき <-> ハキハキ 0
"Voicing" "voicing" 0.0, 1.0 有声音 <-> 無声音 1
"Gender" "gender" -1.0, 1.0 男声 <-> 女声 0
戻り値:
object

getIndexInParent() → {number}

継承元:

現在のオブジェクトの、親の中での添え字を取得します。Lua では、添え字は 1 から始まります。JavaScript では、添え字は 0 から始まります。

戻り値:
number

getInterpolationMethod() → {string}

制御点間の値の補間方法を返します。

  • "Linear" - 線形補間
  • "Cosine" - コサイン補間
  • "Cubic" - 修正 Catmull-Rom スプライン曲線補間
戻り値:
string

getLinear(b) → {number}

Automation#get の線形補間を使用したバージョン(たとえ Automation#getInterpolationMethod が "Linear" でない場合でも)。

パラメータ:
名前 細細
b number
戻り値:
number

getParent() → {NestedObject|undefined}

継承元:

NestedObject を取得します。現在のオブジェクトが親に付いていない場合、undefined を返します。

戻り値:
NestedObject | undefined

getPoints(begin, end) → {array}

位置が beginend (ブリック)の間にある制御点の配列を取得します。配列の各要素は、2つの要素、

  • 位置(ブリック):number
  • パラメータ値:number からなる配列です。例:[[0, 0.1], [5000, 0], [10000, -0.1]]
パラメータ:
名前 細細
begin number
end number
戻り値:

an array of array of number

array

getType() → {string}

この Automation のパラメータ型を取得します。Automation#getDefinition のテーブルの typeName 列を参照してください。

戻り値:
string

isMemoryManaged() → {boolean}

継承元:

現在のオブジェクトがメモリ管理されているかどうか(スクリプト環境によってガベージコレクションされるか)を確認します。

戻り値:
boolean

remove(b) → {boolean}

位置 b(ブリック)に制御点がある場合、その制御点を削除します。

削除された制御点があれば真を返します。

パラメータ:
名前 細細
b number
戻り値:
boolean

remove(begin, end) → {boolean}

位置 begin(ブリック)と end(ブリック)の間のすべての制御点を削除します。

削除された制御点があれば真を返します。指定した範囲内に制御点がない場合は偽を返します。

パラメータ:
名前 細細
begin number
end number
戻り値:
boolean

removeAll()

Automation の制御点をすべて削除します。

simplify(begin, end, threshold) → {boolean}

位置 begin(ブリック)から位置 end(ブリック)までのパラメータ曲線を、曲線の形状に大きく寄与しない制御点を削除することで簡素化します。threshold が指定されない場合は 0.002 が使われます。threshold の値を高くすると、より簡素化されます。

削除された制御点があれば真を返します。

パラメータ:
名前 細細
begin number
end number
threshold number

(optional)

戻り値:
boolean