## FCurveKeyCollection

Related C++ Class: CFCurveKeyRefArray

### Introduced

v1.5

### Description

A collection of FCurveKey objects that represent the keys in the FCurve. The FCurveKeyCollection object is accessed through the FCurve.Keys property. This collection is 0-based.
Keys in an FCurveKeyCollection are maintained in ascending order by parameter and duplicate key entries are disallowed. Also, an FCurveKeyCollection can only hold keys from the same fcurve so any attempt to add keys from another FCurve to an existing collection will fail.

### Methods

Add | AddItems | Filter | GetAsText
GetMaxKeyFrame | GetMaxKeyValue | GetMidKeyFrame | GetMidKeyValue
GetMinKeyFrame | GetMinKeyValue | Remove | RemoveAt

### Properties

Count | Item |  |

### Examples

#### VBScript Example

    set oCube = Application.ActiveProject.ActiveScene.Root.AddGeometry("Cube","MeshSurface")
    dim aValues
    aValues = Array(0.00, 5.00, 1.00, 6.00, 2.00, 7.00, 3.00, 8.00, 4.00, 9.00, 5.00, 10.00)
    set oFCurve = oCube.PosX.AddFCurve2( aValues)
    ' Write the fcurve keys
    for each k in oFCurve.Keys
            LogMessage k.Name &" Value: " & k.Value
            LogMessage k.Name &" Locked: " & k.Locked
            LogMessage k.Name &" Left: " & k.Left
            LogMessage k.Name &" Right: " & k.Right
            LogMessage k.Name &" LeftTanX: " & k.LeftTanX
            LogMessage k.Name &" LeftTanY: " & k.LeftTanY
            LogMessage k.Name &" RightTanX: " & k.RightTanX
            LogMessage k.Name &" RightTanY: " & k.RightTanY
            LogMessage k.Name &" Interpolation: " & k.Interpolation
            LogMessage k.Name &" Flags: " & k.Flags
    next

### See Also

FCurve.Keys FCurve.GetKeysBetween FCurveEditor.SelectedKeys XSIFactory.CreateFCurveKeyCollection