diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-10-22 07:56:50 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-10-22 07:56:50 +0400 |
commit | 2fe940f8df9c4513ad1ad0674f49818417450984 (patch) | |
tree | 973e55b1f0ea46b3018c0993efeaa3b22f1173dc /source/blender/blenlib/BLI_math_matrix.h | |
parent | bcac1def4c1b459e116ae1957e8ac4e20a7d9192 (diff) |
Fix for snapping pose bones with axis-angle rotation.
- armature_mat_pose_to_bone() was missing axis-angle check.
- added loc_axisangle_size_to_mat4() for completeness.
- use 'const' prefix where possible in math rotation functions.
Diffstat (limited to 'source/blender/blenlib/BLI_math_matrix.h')
-rw-r--r-- | source/blender/blenlib/BLI_math_matrix.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/source/blender/blenlib/BLI_math_matrix.h b/source/blender/blenlib/BLI_math_matrix.h index 6b3d8bf9d0b..e4f477238f5 100644 --- a/source/blender/blenlib/BLI_math_matrix.h +++ b/source/blender/blenlib/BLI_math_matrix.h @@ -135,8 +135,8 @@ void scale_m4_fl(float R[4][4], float scale); float mat3_to_scale(float M[3][3]); float mat4_to_scale(float M[4][4]); -void size_to_mat3(float R[3][3], float size[3]); -void size_to_mat4(float R[4][4], float size[3]); +void size_to_mat3(float R[3][3], const float size[3]); +void size_to_mat4(float R[4][4], const float size[3]); void mat3_to_size(float r[3], float M[3][3]); void mat4_to_size(float r[3], float M[4][4]); @@ -145,11 +145,13 @@ void translate_m4(float mat[4][4], float tx, float ty, float tz); void rotate_m4(float mat[4][4], char axis, float angle); void loc_eul_size_to_mat4(float R[4][4], - float loc[3], float eul[3], float size[3]); + const float loc[3], const float eul[3], const float size[3]); void loc_eulO_size_to_mat4(float R[4][4], - float loc[3], float eul[3], float size[3], short order); + const float loc[3], const float eul[3], const float size[3], const short order); void loc_quat_size_to_mat4(float R[4][4], - float loc[3], float quat[4], float size[3]); + const float loc[3], const float quat[4], const float size[3]); +void loc_axisangle_size_to_mat4(float R[4][4], + const float loc[3], const float axis[4], const float angle, const float size[3]); void blend_m3_m3m3(float R[3][3], float A[3][3], float B[3][3], float t); void blend_m4_m4m4(float R[4][4], float A[4][4], float B[4][4], float t); |