diff options
Diffstat (limited to 'release')
-rw-r--r-- | release/scripts/startup/bl_operators/object_randomize_transform.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/release/scripts/startup/bl_operators/object_randomize_transform.py b/release/scripts/startup/bl_operators/object_randomize_transform.py index ed881fab5fd..319fd1526fb 100644 --- a/release/scripts/startup/bl_operators/object_randomize_transform.py +++ b/release/scripts/startup/bl_operators/object_randomize_transform.py @@ -42,8 +42,13 @@ def randomize_selected(seed, delta, loc, rot, scale, scale_even, scale_min): else: # otherwise the values change under us uniform(0.0, 0.0), uniform(0.0, 0.0), uniform(0.0, 0.0) - if rot: # TODO, non euler's + if rot: vec = rand_vec(rot) + + rotation_mode = obj.rotation_mode + if rotation_mode in ('QUATERNION', 'AXIS_ANGLE'): + obj.rotation_mode = 'XYZ' + if delta: obj.delta_rotation_euler[0] += vec[0] obj.delta_rotation_euler[1] += vec[1] @@ -52,6 +57,7 @@ def randomize_selected(seed, delta, loc, rot, scale, scale_even, scale_min): obj.rotation_euler[0] += vec[0] obj.rotation_euler[1] += vec[1] obj.rotation_euler[2] += vec[2] + obj.rotation_mode = rotation_mode else: uniform(0.0, 0.0), uniform(0.0, 0.0), uniform(0.0, 0.0) |