From 34f34c212da4ba62c7212b862f7a22f9c0a57615 Mon Sep 17 00:00:00 2001 From: Wolfgang Draxinger Date: Sun, 20 Oct 2013 01:48:20 +0200 Subject: fixed some embarrassing syntax and semantic mistakes --- linmath.h | 51 ++++++++++++++++++++------------------------------- 1 file changed, 20 insertions(+), 31 deletions(-) diff --git a/linmath.h b/linmath.h index 384395c..f54e75b 100644 --- a/linmath.h +++ b/linmath.h @@ -112,16 +112,28 @@ static inline void mat4x4_dup(mat4x4 M, mat4x4 N) } } } -static inline void mat4x4_col(vec4 c, mat4x4 M, int i) +static inline void mat4x4_row(vec4 r, mat4x4 M, int i) { - memcpy(c, M[i], sizeof(c)); + int k; + for(k=0; k<4; ++k) + r[k] = M[k][i]; } -static inline void mat4x4_row(vec4 r, mat4x4 M, int i) +static inline void mat4x4_col(vec4 r, mat4x4 M, int i) +{ + int k; + for(k=0; k<4; ++k) + r[k] = M[i][k]; +} +static inline void mat4x4_transpose(mat4x4 M, mat4x4 N) { - r[0] = M[0][i]; - r[1] = M[1][i]; - r[2] = M[2][i]; - r[3] = M[3][i]; + int i, j; + mat4x4 R; + for(j=0; j<4; ++j) { + for(i=0; i<4; ++i) { + R[i][j] = N[j][i]; + } + } + memcpy(M, R, sizeof(R)); } static inline void mat4x4_add(mat4x4 M, mat4x4 a, mat4x4 b) { @@ -180,7 +192,7 @@ static inline void mat4x4_translate(mat4x4 T, float x, float y, float z) } static inline void mat4x4_translate_in_place(mat4x4 M, float x, float y, float z) { - vec4 const t = {x, y, z, 1} + vec4 t = {x, y, z, 1}; vec4 r; int i; for (i = 0; i < 4; ++i) { @@ -263,29 +275,6 @@ static inline void mat4x4_rotate_Z(mat4x4 Q, mat4x4 M, float angle) }; mat4x4_mul(Q, M, R); } -static inline void mat4x4_row(vec4 r, mat4x4 M, int i) -{ - int k; - for(k=0; k<4; ++k) - r[k] = M[k][i]; -} -static inline void mat4x4_col(vec4 r, mat4x4 M, int i) -{ - int k; - for(k=0; k<4; ++k) - r[k] = M[i][k]; -} -static inline void mat4x4_transpose(mat4x4 M, mat4x4 N) -{ - int i, j; - mat4x4 R; - for(j=0; j<4; ++j) { - for(i=0; i<4; ++i) { - R[i][j] = N[j][i]; - } - } - memcpy(M, R, sizeof(R)); -} static inline void mat4x4_invert(mat4x4 T, mat4x4 M) { mat4x4 R; -- cgit v1.2.3-54-g00ecf