For Bezier controller keys, the following properties are accessible:
Time value or number (interpreted as frames)
Specifies whether the key is selected
Class determined by its containing controller
<key>.inTangent varies-- float or point3 (see below) <key>.outTangent varies-- float or point3 (see below) <key>.inTangentType Name-- see list of permitted names below <key>.outTangentType Name-- see list of permitted names below <key>.inTangentLength Float <key>.outTangentLength Float <key>.freeHandle Boolean <key>.x_locked Boolean default: true <key>.y_locked Boolean default: true <key>.z_locked Boolean default: true <key>.constantVelocity Boolean default: false
The . inTangent and . outTangent values are Floats in keys of float controllers and Point3s for the other appropriate controllers. Default value is 0 for float controllers, [0,0,0] otherwise.
The . inTangentType and . outTangentType properties have symbolic name values representing the possible tangent types available in the drop-down menu in the Bezier key property dialog:
.inTangentLength and . outTangentLength , (typically a fraction from 0 to 1) represent how long the handle is towards the adjacent key. For example, a value of 0.5 means the handle reaches halfway from the current key to the adjacent key, and a value of 1 reaches all the way. If the handle reaches beyond the adjacent key, it will be greater than one. If there is no previous key, the value of .inTangentLength will be -1.
There is a check box to the key property/Master Point control dialog found in the Motion Panel. It is called Free Handle. When Free Handle is checked, the user can move the horizontal handle. Otherwise, the user is constrained to prevent discontinuities.
Correspondingly, there is a bezier key property called .freeHandle that implements the functionality described above.