diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-11-25 08:20:30 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-11-25 08:39:34 +0300 |
commit | e1e49fd1a8a5bca7f95ba230a7daf12fb059779b (patch) | |
tree | 9913ba1244a0904189361058713489666d64d2dc /source/blender/modifiers/intern/MOD_screw.c | |
parent | d30a0239a2fb1bf28befc547d9c4986b6be4d662 (diff) |
Math Lib: rotate matrix cleanup
- Remove 'rotate_m2', unlike 'rotate_m4' it created a new matrix
duplicating 'angle_to_mat2' - now used instead.
(better avoid matching functions having different behavior).
- Add 'axis_angle_to_mat4_single',
convenience wrapper for 'axis_angle_to_mat3_single'.
- Replace 'unit_m4(), rotate_m4()' with a single call to 'axis_angle_to_mat4_single'.
Diffstat (limited to 'source/blender/modifiers/intern/MOD_screw.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_screw.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_screw.c b/source/blender/modifiers/intern/MOD_screw.c index df94975e274..290e19736bb 100644 --- a/source/blender/modifiers/intern/MOD_screw.c +++ b/source/blender/modifiers/intern/MOD_screw.c @@ -798,13 +798,11 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob, if (ltmd->ob_axis) { axis_angle_normalized_to_mat3(mat3, axis_vec, step_angle); - copy_m4_m3(mat, mat3); } else { - unit_m4(mat); - rotate_m4(mat, axis_char, step_angle); - copy_m3_m4(mat3, mat); + axis_angle_to_mat3_single(mat3, axis_char, step_angle); } + copy_m4_m3(mat, mat3); if (screw_ofs) madd_v3_v3fl(mat[3], axis_vec, screw_ofs * ((float)step / (float)(step_tot - 1))); |