指定されたピボット ポイントを使用して開始フレームと終了フレームの間の F カーブ部分をオフセット(延長)またはスケーリング(短縮)し、指定されたオブジェクトのアニメーションをオフセットまたはスケーリングします。その後、結果としてスケーリングされた F カーブ部分を移動します。 このコマンドを使用すると、シーン内のすべてのアニメーションのタイミングを一度に変更できます。
デフォルトで、リプル エフェクトはアクティブです。つまり、その領域がタイムラインに沿ってかなり遠く(右)にある他のキーをオフセットしています。 残りの F カーブは挿入された領域の右に移動し、これによりリプル エフェクトが発生します。 Ripple 引数を False に設定することによって、この機能をオフにすることができます。
ScaleAndOffset は、ドープシート内のキーフレーム領域を移動またはスケーリングする操作に相当するコマンドです。ドープシートと同様の動作をエミュレートする際に使用してください。 Sequenceコマンドも効果は似ていますが、これは[Animation]>[シーケンスアニメーション]を実行する操作に相当します。 [Animation]>[シーケンスアニメーション]と同様の操作を行う場合に、Sequenceを使用してください。
ScaleAndOffset( [InputObjs], [Type], [Offset], [Scale], [StartFrame], [EndFrame], [Pivot], [Ripple], Mode, [Discrete Time], [SelectedKeysOnly], [Layer] ); |
パラメータ | タイプ | 説明 | ||||||
---|---|---|---|---|---|---|---|---|
InputObjs | 文字列 |
アニメート可能なパラメータのリスト (例: cone*/kine.local.pos)。このパラメータは、Type パラメータを使用して、使用するパラメータを以下の方法で決定します。 - Type == siInputParameters の場合、InputObjs は入力そのものとして使用されます(指定されたリストまたは選択したオブジェクトのアニメート可能なパラメータから)。 - Type == siAnimatedParameters の場合、InputObjs は、アニメート可能なパラメータそれぞれが影響を受けるオブジェクトのリストであると予測されます。 - Type == siAllAnimatedParameters の場合、InputObjs の値は無視され、代わりにコマンドがシーン全体のすべてのオブジェクトにあるすべてのアニメートされたパラメータを使用します。 デフォルト値: このパラメータの値を指定しない場合、オブジェクト リストは Type 引数によって示されるスコープに対して選択されたオブジェクトまたはパラメータを使用します。 |
||||||
Type | siParameterScope |
操作のパラメータ範囲 デフォルト値: siAnimatedParameters |
||||||
Offset | Double |
F カーブに適用するオフセットの値 値の範囲は -Inf から +Inf |
||||||
Scale | Double |
F カーブに適用するスケーリング倍率の値 値の範囲は 0 から +Inf |
||||||
StartFrame | Double |
操作する fcurve の領域の開始フレーム。 値の範囲は -Inf から +Inf |
||||||
EndFrame | Double |
操作する fcurve の領域の終了フレーム。 値の範囲は -Inf から +Inf |
||||||
Pivot | Double |
ピボット フレームとは、スケールするフレーム w.r.t のことです。 値の範囲は 0 から +Inf |
||||||
Ripple(リプル) | Boolean |
結果として得られる F カーブのリップル エフェクト
|
||||||
Mode | siSequenceMode |
SequenceAll のみの対象となる項目 デフォルト値: siFCurvesAnimationSources |
||||||
Discrete Time | Boolean |
すべてのキーがフレーム上に位置することを確認します。
|
||||||
SelectedKeysOnly | Boolean |
時間範囲内(StartFrame から EndFrame)で選択されているキーのみをスケールおよびオフセットする場合は、True。 キーの選択範囲を作成または修正するには、SelectKeysInTimespan コマンドを使用します。 デフォルト(false)では、このコマンドは時間範囲内のすべてのキーで動作します。 デフォルト値: False
|
||||||
Layer | Integer |
スケールおよびオフセットするアニメーション レイヤ デフォルト値:すべてのレイヤ(-1) |
' ' Create a cube and a null with identical animation, ' then scale the cube's animation by half and offset it 50 frames. ' dim oNull,oCube set oCube = CreatePrim("Cube", "MeshSurface") oCube.length = 1 set oNull = GetPrim("Null") AddToMarking "kine.local.pos.posx,kine.local.pos.posz" Translate oNull, -3, 0, 3, siAbsolute, siView, siObj, siXYZ SaveKey ,1 Translate oNull, 0, 0, -3, siAbsolute, siView, siObj, siXYZ SaveKey , 50 Translate oNull, 3, 0, 3, siAbsolute, siView, siObj, siXYZ SaveKey , 100 'copy null's animation over to the cube CopyAllAnimation2 oNull, siAnySource, siAllParam, False PasteAllAnimation oCube ' ' Now Scale and offset the cube animation ' The begining of the animation is offset to frame 50 ' and the entire sequence is scaled by 0.5 ' ScaleAndOffset oCube, siAnimParams, 50, 0.5, 1, 100, 1, True, , False ' ' The cube will stay at its initial position till ' frame 50, then catch up to the null ' PlayForwardsFromStart |