GetKeyInfo

カテゴリ

アニメーション

詳細

ファンクション カーブ キーの情報を取得します。

注: このコマンドは、出力引数を使用します。 C# および一部のスクリプト言語(JScript、PerlScript、Python など)は、リファレンスによって渡される引数をサポートしていません。このため、状況に応じた適切な回避策を実行する必要があります。

スクリプト言語の場合、このコマンドは出力引数を取得するために使用できる ISIVTCollection を戻します。

C# の場合は、XSIApplication.ExecuteCommand メソッドを使用してこのコマンドを呼び出すことができます。 ExecuteCommand は、出力引数を C# の System.Object (出力引数の配列を含む)にパック化します(詳細については、「C# からのコマンドの呼び出し」を参照)。

スクリプト構文

GetKeyInfo( InputObj, Index, [Parameter], [LeftValue], [RightValue], [LeftTanParam], [LeftTanValue], [RightTanParam], [RightTanValue], [RightSegKind], [Constraints] );

パラメータ

パラメータ タイプ 詳細
InputObj 文字列 ファンクション カーブが接続されているコンポーネント
Index Integer キーのインデックス。 キーは、0 から(nbKeys - 1)までインデックス付けされています。

デフォルト値: 0

パラメータ ダブル パラメータの値を戻します。
LeftValue ダブル キーの左の値を戻します。
RightValue ダブル キーの右の値を戻します。
LeftTanParam ダブル キーのタンジェント パラメータの左の値を戻します。
LeftTanValue ダブル キーのタンジェントの左の値を戻します。
RightTanParam ダブル キーのタンジェント パラメータの右の値を戻します。
RightTanValue ダブル キーのタンジェントの右の値を戻します。
RightSegKind Integer キーの右側のセグメント タイプを戻します。

指定可能な値:

説明:

0 デフォルト
1 コンスタント
2 リニア
3 キュービック
Constraints Integer キーのコンストレイント。 この値はビットフィールドです。

指定可能な値:

説明:

0 コンストレイントなし。
1 パラメータは固定
2 左右の値は固定
4 ファンクションカーブは、このキーで継続的にG1
8 左右のタンジェントの方向は固定
16 左右のタンジェントの長さは固定
32 パラメータ、値、およびタンジェントは固定
64 タンジェントは水平とみなされる
128 キーがローカルな極値の場合、タンジェントは水平とみなされる
256 近接するキーが作成または移動された場合、タンジェントは自動的に調整される

VBScript の例

' create a null to hold animation
GetPrim "Null"
' Save some keys on the X position of the Null object
SaveKey "Null.kine.local.posx", 1, -5.0
SaveKey "Null.kine.local.posx", 25, 7.0
SaveKey "Null.kine.local.posx", 50, 2.0
' Get the animation source of type FCurve
set collection = GetSource( "Null.kine.local.posx",siFCurveSource  )
for each fcurve in collection
        ' get fcurve info
                GetFCurveInfo fcurve, crvtype, nokeyval, nbKeys, extrap, segtype, lowclamp, highclamp
        LogMessage "FCurve: " & vbCR & vbLF & _
                "Type : " & crvtype & vbCR & vbLF & _
                "No Key Value : " & nokeyval& vbCR & vbLF & _
                "Num Keys : " & nbKeys& vbCR & vbLF & _
                "Extrapolation : " & extrap & vbCR & vbLF & _
                "Default Segment Type : " & segtype& vbCR & vbLF & _
                "Low Clamp : " & seglowclamp & vbCR & vbLF & _
                "High Clamp : " & highclamp & vbCR & vbLF
        for i = 0 to nbkeys - 1
                ' get fcurvekey info
                GetKeyInfo fcurve, i, parameter, leftval, rightval, lefttanparam, lefttanval, righttanparam, righttanval, rightsegkind, constraints
                LogMessage "Key: " & i & vbCR & vbLF & _
                        "KeyParam : " & parameter & vbCR & vbLF & _
                        "LeftValue: " & leftval & vbCR & vbLF & _
                        "RightValue: " & rightval & vbCR & vbLF & _
                        "LeftTanParam: " & lefttanparam & vbCR & vbLF & _
                        "LeftTanValue: " & lefttanval & vbCR & vbLF & _
                        "RightTanParam: " & righttanparam & vbCR & vbLF & _
                        "RightTanValue: " & righttanval & vbCR & vbLF & _
                        "RightSegKind: " & rightsegkind & vbCR & vbLF & _
                        "Constraints: " & constraints & vbCR & vbLF
        next
next 
'INFO : "FCurve: 
'Type : 20
'No Key Value : -5
'Num Keys : 3
'Extrapolation : 1
'Default Segment Type : 3
'Low Clamp : 
'High Clamp : 1.79769313486232E+308
'"
'INFO : "Key: 0
'KeyParam : 3.33666666666667E-02
'LeftValue: -5
'RightValue: -5
'LeftTanParam: 0
'LeftTanValue: 0
'RightTanParam: 0.266933333333333
'RightTanValue: 0
'RightSegKind: 3
'Constraints: 260
'"
'INFO : "Key: 1
'KeyParam : 0.834166666666667
'LeftValue: 7
'RightValue: 7
'LeftTanParam: -0.266933333333333
'LeftTanValue: -1.14285714285714
'RightTanParam: 0.278055555555556
'RightTanValue: 1.19047619047619
'RightSegKind: 3
'Constraints: 260
'"
'INFO : "Key: 2
'KeyParam : 1.66833333333333
'LeftValue: 2
'RightValue: 2
'LeftTanParam: -0.278055555555556
'LeftTanValue: 0
'RightTanParam: 0
'RightTanValue: 0
'RightSegKind: 3
'Constraints: 260
'"

関連項目

FCurveKey GetFCurveInfo GetSource