## SetKeyableAttributes

### Introduced

v5.0

### Description

Sets or clears the keyable attributes on the list of parameters created by using the marking parameter string on the input list of objects.

### Scripting Syntax

    SetKeyableAttributes( [InputObjs], [Params], [Attribute] );

### Parameters

Parameter | Type | Description
--- | --- | ---
InputObjs | String | List of objects. Default Value: Currently selected objects
Params | String | Parameter list, for example: kine.local.posx,kine.local.posy,kine.local.posz Default Value: ""
Attribute | siKeyableAttributeType | What action to peform? Default Value: siKeyableAttributeKeyable

### Examples

#### 1. VBScript Example

    ' Create a primitive cone and add custom parameter on it, then make that custom parameter keyable

    NewScene , False

    CreatePrim "Cone", "MeshSurface"

    SIAddCustomParameter "cone", "MyFloat", siDouble, 0, 0, 1, , 5, 0, 1

    SetKeyableAttributes "cone", "CustomPSet.MyFloat", siKeyableAttributeKeyable

#### 2. JScript Example

    // Create two Null objects and make their kine.local.active parameter keyable

    NewScene(null, false);

    GetPrim("Null", null, null, null);

    GetPrim("Null", null, null, null);

    SetKeyableAttributes("null,null1", "kine.local.active", siKeyableAttributeKeyable);

#### 3. VBScript Example

    ' Change the scaling and rotation parameters on all the selected objects (the two nulls) from their default keyable to non-keyable visible

    NewScene , False

    GetPrim "Null"

    GetPrim "Null"

    SelectObj "Null,Null1"

    SetKeyableAttributes , "kine.local.scl,kine.local.ori.euler", siKeyableAttributeNonKeyableVisible

#### 4. JScript Example

    // Clear the keyable attribute on the scaling parameters of the Null and Null1 objects

    NewScene( null, false );

    GetPrim( "Null" );

    GetPrim( "Null" );

    SetKeyableAttributes( "null,null1", "kine.local.scl.sclx,kine.local.scl.scly,kine.local.scl.sclz", siKeyableAttributeClear );

#### 5. Python Example

    # Clear the keyable attributes on the rotation parameters of all the selected objects (the two nulls)

    from win32com.client import constants as c

    Application.NewScene( "", 0 )

    Application.GetPrim( "Null" )

    Application.GetPrim( "Null" )

    Application.SelectObj( "Null,Null1" )

    Application.SetKeyableAttributes( "", "kine.local.ori.euler", c.siKeyableAttributeClear )

### See Also

SaveKeyOnKeyable SaveKeyOnMarkedKeyable