GetKeyInfo

詳細

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

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

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

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

スクリプト構文

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

パラメータ

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

デフォルト値: 0

Parameter Double パラメータの値を戻します。
LeftValue Double キーの左の値を戻します。
RightValue Double キーの右の値を戻します。
LeftTanParam Double キーのタンジェント パラメータの左の値を戻します。
LeftTanValue Double キーのタンジェントの左の値を戻します。
RightTanParam Double キーのタンジェント パラメータの右の値を戻します。
RightTanValue Double キーのタンジェントの右の値を戻します。
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