cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=c82015d0625448160b4e0320babdacdbbd80765d

commit c82015d0625448160b4e0320babdacdbbd80765d
Author: Cedric BAIL <ced...@osg.samsung.com>
Date:   Wed Jun 24 15:31:32 2015 +0200

    eina: our 3x3 matrix are 2D matrix, not 3D rotation matrix.
---
 src/lib/eina/eina_matrix.c        | 30 +++++++++++++++---------------
 src/tests/eina/eina_test_matrix.c | 19 +++++++++----------
 2 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/src/lib/eina/eina_matrix.c b/src/lib/eina/eina_matrix.c
index 8e2d0be..6c96893 100644
--- a/src/lib/eina/eina_matrix.c
+++ b/src/lib/eina/eina_matrix.c
@@ -664,13 +664,13 @@ eina_matrix4_matrix3_to(Eina_Matrix3 *m3, const 
Eina_Matrix4 *m4)
 {
    MATRIX_XX(m3) = MATRIX_XX(m4);
    MATRIX_XY(m3) = MATRIX_XY(m4);
-   MATRIX_XZ(m3) = MATRIX_XZ(m4);
+   MATRIX_XZ(m3) = MATRIX_XW(m4);
    MATRIX_YX(m3) = MATRIX_YX(m4);
    MATRIX_YY(m3) = MATRIX_YY(m4);
-   MATRIX_YZ(m3) = MATRIX_YZ(m4);
-   MATRIX_ZX(m3) = MATRIX_ZX(m4);
-   MATRIX_ZY(m3) = MATRIX_ZY(m4);
-   MATRIX_ZZ(m3) = MATRIX_ZZ(m4);
+   MATRIX_YZ(m3) = MATRIX_YW(m4);
+   MATRIX_ZX(m3) = MATRIX_WX(m4);
+   MATRIX_ZY(m3) = MATRIX_WY(m4);
+   MATRIX_ZZ(m3) = MATRIX_WW(m4);
 }
 
 EAPI void
@@ -678,18 +678,18 @@ eina_matrix3_matrix4_to(Eina_Matrix4 *m4, const 
Eina_Matrix3 *m3)
 {
    MATRIX_XX(m4) = MATRIX_XX(m3);
    MATRIX_XY(m4) = MATRIX_XY(m3);
-   MATRIX_XZ(m4) = MATRIX_XZ(m3);
-   MATRIX_XW(m4) = 0;
+   MATRIX_XZ(m4) = 0;
+   MATRIX_XW(m4) = MATRIX_XZ(m3);
    MATRIX_YX(m4) = MATRIX_YX(m3);
    MATRIX_YY(m4) = MATRIX_YY(m3);
-   MATRIX_YZ(m4) = MATRIX_YZ(m3);
-   MATRIX_YW(m4) = 0;
-   MATRIX_ZX(m4) = MATRIX_ZX(m3);
-   MATRIX_ZY(m4) = MATRIX_ZY(m3);
-   MATRIX_ZZ(m4) = MATRIX_ZZ(m3);
+   MATRIX_YZ(m4) = 0;
+   MATRIX_YW(m4) = MATRIX_YZ(m3);
+   MATRIX_ZX(m4) = 0;
+   MATRIX_ZY(m4) = 0;
+   MATRIX_ZZ(m4) = 1;
    MATRIX_ZW(m4) = 0;
-   MATRIX_WX(m4) = 0;
-   MATRIX_WY(m4) = 0;
+   MATRIX_WX(m4) = MATRIX_ZX(m3);
+   MATRIX_WY(m4) = MATRIX_ZY(m3);
    MATRIX_WZ(m4) = 0;
-   MATRIX_WW(m4) = 1;
+   MATRIX_WW(m4) = MATRIX_ZZ(m3);
 }
diff --git a/src/tests/eina/eina_test_matrix.c 
b/src/tests/eina/eina_test_matrix.c
index af1e005..51cf9d8 100644
--- a/src/tests/eina/eina_test_matrix.c
+++ b/src/tests/eina/eina_test_matrix.c
@@ -72,21 +72,20 @@ END_TEST
 
 START_TEST(eina_matrix4_2_3)
 {
-   Eina_Matrix4 m4, m4b;
-   Eina_Matrix3 m3;
+   Eina_Matrix4 m4;
+   Eina_Matrix3 m3, m3b;
 
    eina_init();
 
-   eina_matrix4_values_set(&m4,
-                           1, 3, 2, 0,
-                           3, 1, 4, 0,
-                           2, 4, 1, 0,
-                           0, 0, 0, 1);
+   eina_matrix3_values_set(&m3,
+                           1, 3, 2,
+                           3, 1, 4,
+                           2, 4, 1);
 
-   eina_matrix4_matrix3_to(&m3, &m4);
-   eina_matrix3_matrix4_to(&m4b, &m3);
+   eina_matrix3_matrix4_to(&m4, &m3);
+   eina_matrix4_matrix3_to(&m3b, &m4);
 
-   fail_if(memcmp(&m4, &m4b, sizeof (Eina_Matrix4)) != 0);
+   fail_if(memcmp(&m3, &m3b, sizeof (Eina_Matrix3)) != 0);
 
    eina_shutdown();
 }

-- 


Reply via email to