ScaleAndOffset

詳細

指定されたピボット ポイントを使用して開始フレームと終了フレームの間の 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 カーブのリップル エフェクト

指定可能な値:

説明:

0 False
1 True
Mode siSequenceMode SequenceAll のみの対象となる項目

デフォルト値: siFCurvesAnimationSources

Discrete Time Boolean すべてのキーがフレーム上に位置することを確認します。

指定可能な値:

説明:

0 False
1 True
SelectedKeysOnly Boolean 時間範囲内(StartFrame から EndFrame)で選択されているキーのみをスケールおよびオフセットする場合は、True。 キーの選択範囲を作成または修正するには、SelectKeysInTimespan コマンドを使用します。

デフォルト(false)では、このコマンドは時間範囲内のすべてのキーで動作します。

デフォルト値: False

指定可能な値:

説明:

0 False
1 True
Layer Integer スケールおよびオフセットするアニメーション レイヤ

デフォルト値:すべてのレイヤ(-1)

VBScript の例

'

' 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

関連項目

FCurve Sequence ActivateFCurve SelectKeysInTimespan