diff options
author | Damien Picard <dam.pic@free.fr> | 2022-01-17 01:00:11 +0300 |
---|---|---|
committer | Damien Picard <dam.pic@free.fr> | 2022-01-17 01:09:02 +0300 |
commit | d4fcda5935c5c561e77aadd32a32500cf280dcaa (patch) | |
tree | ad1c20ebe9d5d5e0eecf955c8c8ea72e3a710756 | |
parent | 3012911034aa279bafe10f3a547896bbf2777aca (diff) |
Fix T94846: AnimAll does not keyframe bezier curve handle type
Add option to export Bezier curves' left and right handle types
-rw-r--r-- | animation_animall.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/animation_animall.py b/animation_animall.py index 141c032a..811cb2c9 100644 --- a/animation_animall.py +++ b/animation_animall.py @@ -93,6 +93,11 @@ class AnimallProperties(bpy.types.PropertyGroup): description="Insert keyframes on point locations", default=False ) + key_handle_type: BoolProperty( + name="Handle Types", + description="Insert keyframes on Bezier point types", + default=False + ) key_radius: BoolProperty( name="Radius", description="Insert keyframes on point radius (Shrink/Fatten)", @@ -181,6 +186,8 @@ class VIEW3D_PT_animall(Panel): row = col.row() row.prop(animall_properties, "key_radius") row.prop(animall_properties, "key_tilt") + row = col.row() + row.prop(animall_properties, "key_handle_type") elif obj.type == 'SURFACE': row.prop(animall_properties, "key_points") @@ -271,6 +278,10 @@ class ANIM_OT_insert_keyframe_animall(Operator): if animall_properties.key_radius: insert_key(CV, 'radius', group="Spline %s CV %s" % (s_i, v_i)) + if animall_properties.key_handle_type: + insert_key(CV, 'handle_left_type', group="spline %s CV %s" % (s_i, v_i)) + insert_key(CV, 'handle_right_type', group="spline %s CV %s" % (s_i, v_i)) + if animall_properties.key_tilt: insert_key(CV, 'tilt', group="Spline %s CV %s" % (s_i, v_i)) @@ -468,6 +479,9 @@ class ANIM_OT_delete_keyframe_animall(Operator): delete_key(CV, 'co') delete_key(CV, 'handle_left') delete_key(CV, 'handle_right') + if animall_properties.key_handle_type: + delete_key(CV, 'handle_left_type') + delete_key(CV, 'handle_right_type') if animall_properties.key_radius: delete_key(CV, 'radius') if animall_properties.key_tilt: |