## FCurve.GetKeyFrame

### Introduced

v3.0

### Description

Returns the key time in frames of the key at the specified index.
Note: If the index is out of range then the method raises an 'Invalid argument' (E_INVALIDARG) error.

### C# Syntax

    Double FCurve.GetKeyFrame( Int32 in_Index );

### Scripting Syntax

    oDouble = FCurve.GetKeyFrame( Index );

### Return Value

Double

### Parameters

Parameter | Type | Description
--- | --- | ---
Index | Long | Index of the key. Must be a value between 0 and (number of keys - 1).

### Examples

#### JScript Example

    /*

    	This JScript example illustrates how to use the GetKeyFrame() method

    	to quickly look up an key's frame value.

    */

    // Create a null

    Application.NewScene( null, false );

    var nullobj = ActiveSceneRoot.AddNull();

    // Create an fcurve on the posx parameter from the null

    var fc = nullobj.posx.AddFCurve()

    // Use the Resample method to add keys to the fcurve on every second frame

    var empty;

    fc.NoKeyValue = Math.random() * 100;

    fc.Resample( empty, empty, 2 );

    var index, frame, value;

    // Print out all key frame/value pairs

    for ( index=0; index<fc.GetNumKeys(); index++ )

    {

    	frame = Math.round( fc.GetKeyFrame( index ) );

    	value = fc.GetKeyValue( index );

    	LogMessage( "key" + index + " frame = " + frame + " value = " + value );

    }

    // Outputs:

    //INFO : key0 frame = 1 value = 66.7755833336558

    //INFO : key1 frame = 3 value = 66.7755833336558

    //INFO : key2 frame = 5 value = 66.7755833336558

    //	...etc.

    //INFO : key48 frame = 97 value = 66.7755833336558

    //INFO : key49 frame = 99 value = 66.7755833336558

    //INFO : key50 frame = 100 value = 66.7755833336558

### See Also

FCurveKey.Time FCurve.KeyExists FCurve.GetKeyValue FCurve.GetKeyIndex