From 464ff7420c84c236fe8c0073ccaaf6847f2e3957 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Wed, 11 May 2011 11:16:02 +0100 Subject: [PATCH 1/5] Clean up test files --- test/CMakeLists.txt | 2 +- test/test.cpp | 0 test/test.hpp | 38 -------------------------------------- 3 files changed, 1 insertion(+), 39 deletions(-) delete mode 100644 test/test.cpp delete mode 100644 test/test.hpp diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index e2625f82..0d4acb92 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,6 +1,6 @@ function(glmCreateTestGTC NAME) set(SAMPLE_NAME test-${NAME}) - add_executable(${SAMPLE_NAME} ${NAME}.cpp ../test.hpp ../test.cpp) + add_executable(${SAMPLE_NAME} ${NAME}.cpp) add_test( NAME ${SAMPLE_NAME} diff --git a/test/test.cpp b/test/test.cpp deleted file mode 100644 index e69de29b..00000000 diff --git a/test/test.hpp b/test/test.hpp deleted file mode 100644 index 815bba7e..00000000 --- a/test/test.hpp +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef glm_test_included -#define glm_test_included - -#include - -namespace glm{ -namespace test -{ - class test - { - enum result - { - PASSED, - FAILED, - ASSERT, - STATIC, - MAX - }; - - public: - test(std::string const & Name, std::size_t const & Count); - result & operator[](std::size_t const & Index); - result const & operator[](std::size_t const & Index) const; - - static int get(result const Result) const; - static void log(test const & Test); - - protected: - std::string Name; - std::vertor Tests; - - static test Result[MAX]; - }; - -}//namespace test -}//namespace glm - -#endif//glm_test_included From 7432afca27e1a5d6a9c64e6ab40b33e37918cdb6 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Sun, 15 May 2011 21:32:19 +0100 Subject: [PATCH 2/5] Added test file for vector_angle --- test/gtx/CMakeLists.txt | 2 ++ test/gtx/gtx-vector-angle.cpp | 0 2 files changed, 2 insertions(+) create mode 100644 test/gtx/gtx-vector-angle.cpp diff --git a/test/gtx/CMakeLists.txt b/test/gtx/CMakeLists.txt index 8479f0e6..b443c23e 100644 --- a/test/gtx/CMakeLists.txt +++ b/test/gtx/CMakeLists.txt @@ -3,3 +3,5 @@ glmCreateTestGTC(gtx-noise) glmCreateTestGTC(gtx-simd-vec4) glmCreateTestGTC(gtx-simd-mat4) glmCreateTestGTC(gtx-ulp) +glmCreateTestGTC(gtx-vector-angle) + diff --git a/test/gtx/gtx-vector-angle.cpp b/test/gtx/gtx-vector-angle.cpp new file mode 100644 index 00000000..e69de29b From 867d59ca6ee2d03b99a93a209e5de2d99252cee8 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Sun, 15 May 2011 21:43:41 +0100 Subject: [PATCH 3/5] Fixed GTX test names --- test/gtx/CMakeLists.txt | 12 ++++++------ test/gtx/{gtx-bit.cpp => gtx_bit.cpp} | 0 test/gtx/{gtx-noise.cpp => gtx_noise.cpp} | 0 test/gtx/{gtx-simd-mat4.cpp => gtx_simd_mat4.cpp} | 0 test/gtx/{gtx-simd-vec4.cpp => gtx_simd_vec4.cpp} | 0 test/gtx/{gtx-ulp.cpp => gtx_ulp.cpp} | 0 .../{gtx-vector-angle.cpp => gtx_vector_angle.cpp} | 0 7 files changed, 6 insertions(+), 6 deletions(-) rename test/gtx/{gtx-bit.cpp => gtx_bit.cpp} (100%) rename test/gtx/{gtx-noise.cpp => gtx_noise.cpp} (100%) rename test/gtx/{gtx-simd-mat4.cpp => gtx_simd_mat4.cpp} (100%) rename test/gtx/{gtx-simd-vec4.cpp => gtx_simd_vec4.cpp} (100%) rename test/gtx/{gtx-ulp.cpp => gtx_ulp.cpp} (100%) rename test/gtx/{gtx-vector-angle.cpp => gtx_vector_angle.cpp} (100%) diff --git a/test/gtx/CMakeLists.txt b/test/gtx/CMakeLists.txt index b443c23e..941cfadc 100644 --- a/test/gtx/CMakeLists.txt +++ b/test/gtx/CMakeLists.txt @@ -1,7 +1,7 @@ -glmCreateTestGTC(gtx-bit) -glmCreateTestGTC(gtx-noise) -glmCreateTestGTC(gtx-simd-vec4) -glmCreateTestGTC(gtx-simd-mat4) -glmCreateTestGTC(gtx-ulp) -glmCreateTestGTC(gtx-vector-angle) +glmCreateTestGTC(gtx_bit) +glmCreateTestGTC(gtx_noise) +glmCreateTestGTC(gtx_simd_vec4) +glmCreateTestGTC(gtx_simd_mat4) +glmCreateTestGTC(gtx_ulp) +glmCreateTestGTC(gtx_vector_angle) diff --git a/test/gtx/gtx-bit.cpp b/test/gtx/gtx_bit.cpp similarity index 100% rename from test/gtx/gtx-bit.cpp rename to test/gtx/gtx_bit.cpp diff --git a/test/gtx/gtx-noise.cpp b/test/gtx/gtx_noise.cpp similarity index 100% rename from test/gtx/gtx-noise.cpp rename to test/gtx/gtx_noise.cpp diff --git a/test/gtx/gtx-simd-mat4.cpp b/test/gtx/gtx_simd_mat4.cpp similarity index 100% rename from test/gtx/gtx-simd-mat4.cpp rename to test/gtx/gtx_simd_mat4.cpp diff --git a/test/gtx/gtx-simd-vec4.cpp b/test/gtx/gtx_simd_vec4.cpp similarity index 100% rename from test/gtx/gtx-simd-vec4.cpp rename to test/gtx/gtx_simd_vec4.cpp diff --git a/test/gtx/gtx-ulp.cpp b/test/gtx/gtx_ulp.cpp similarity index 100% rename from test/gtx/gtx-ulp.cpp rename to test/gtx/gtx_ulp.cpp diff --git a/test/gtx/gtx-vector-angle.cpp b/test/gtx/gtx_vector_angle.cpp similarity index 100% rename from test/gtx/gtx-vector-angle.cpp rename to test/gtx/gtx_vector_angle.cpp From eb850c0fef2e5db62afc324fec8a7ef8461926af Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Sun, 15 May 2011 23:58:00 +0100 Subject: [PATCH 4/5] Fixed vector angle build #90 --- glm/gtx/vector_angle.hpp | 13 +++++++------ test/gtx/gtx_vector_angle.cpp | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 6 deletions(-) diff --git a/glm/gtx/vector_angle.hpp b/glm/gtx/vector_angle.hpp index 2dacbe81..3975ea7e 100644 --- a/glm/gtx/vector_angle.hpp +++ b/glm/gtx/vector_angle.hpp @@ -17,8 +17,9 @@ // Dependency: #include "../glm.hpp" -#include "../gtx/quaternion.hpp" #include "../gtx/epsilon.hpp" +#include "../gtx/quaternion.hpp" +#include "../gtx/rotate_vector.hpp" #if(defined(GLM_MESSAGES) && !defined(glm_ext)) # pragma message("GLM: GLM_GTX_vector_angle extension included") @@ -59,11 +60,11 @@ namespace glm //! Returns the orientation of a two vector base from a normal. //! Parameters need to be normalized. //! From GLM_GTX_vector_angle extension. - template - typename vecType::value_type orientedAngleFromRef( - vecType const & x, - vecType const & y, - detail::tvec3 const & ref); + template class vecType, typename T> + typename vecType orientedAngleFromRef( + vecType const & x, + vecType const & y, + detail::tvec3 const & ref); ///@} }//namespace vector_angle diff --git a/test/gtx/gtx_vector_angle.cpp b/test/gtx/gtx_vector_angle.cpp index e69de29b..77cbfb6f 100644 --- a/test/gtx/gtx_vector_angle.cpp +++ b/test/gtx/gtx_vector_angle.cpp @@ -0,0 +1,35 @@ +/////////////////////////////////////////////////////////////////////////////////////////////////// +// OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net) +/////////////////////////////////////////////////////////////////////////////////////////////////// +// Created : 2011-05-15 +// Updated : 2011-05-15 +// Licence : This source is under MIT licence +// File : test/gtx/vector_angle.cpp +/////////////////////////////////////////////////////////////////////////////////////////////////// + +#include +#include +#include +#include + +int test_vector_angle_calls() +{ + int Error = 0; + + float AngleA = glm::angle(glm::vec3(1, 0, 0), glm::vec3(0, 1, 0)); + float AngleB = glm::orientedAngle(glm::vec2(1, 0), glm::normalize(glm::vec2(1, 1))); + float AngleC = glm::orientedAngle(glm::vec2(0, 1), glm::normalize(glm::vec2(1, 1))); + float AngleD = glm::orientedAngleFromRef(glm::vec3(1, 0, 0), glm::vec3(0, 1, 0), glm::vec3(0, 0, 1)); + + return Error; +} + +int main() +{ + int Error = 0; + Error += test_vector_angle_calls(); + + return Error; +} + + From bcd060c94050c40b83d797bb55950d30dfeaca21 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Mon, 16 May 2011 00:20:59 +0100 Subject: [PATCH 5/5] Improved vector angle tests --- test/gtx/gtx_vector_angle.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/test/gtx/gtx_vector_angle.cpp b/test/gtx/gtx_vector_angle.cpp index 77cbfb6f..0b63af81 100644 --- a/test/gtx/gtx_vector_angle.cpp +++ b/test/gtx/gtx_vector_angle.cpp @@ -24,9 +24,32 @@ int test_vector_angle_calls() return Error; } +int test_vector_angle_orientedAngle() +{ + int Error = 0; + + float AngleA = glm::orientedAngle(glm::vec2(1, 0), glm::normalize(glm::vec2(1, 1))); + Error += AngleA == 45.f ? 0 : 1; + float AngleB = glm::orientedAngle(glm::vec2(0, 1), glm::normalize(glm::vec2(1, 1))); + Error += AngleB == -45.f ? 0 : 1; + + float AngleC = glm::orientedAngle(glm::vec3(1, 0, 0), glm::normalize(glm::vec3(1, 1, 0))); + Error += AngleC == 45.f ? 0 : 1; + float AngleD = glm::orientedAngle(glm::vec3(0, 1, 0), glm::normalize(glm::vec3(1, 1, 0))); + Error += AngleD == -45.f ? 0 : 1; + + float AngleE = glm::orientedAngle(glm::vec4(1, 0, 0, 0), glm::normalize(glm::vec4(1, 1, 0, 0))); + Error += AngleE == 45.f ? 0 : 1; + float AngleF = glm::orientedAngle(glm::vec4(0, 1, 0, 0), glm::normalize(glm::vec4(1, 1, 0, 0))); + Error += AngleF == -45.f ? 0 : 1; + + return Error; +} + int main() { int Error = 0; + Error += test_vector_angle_orientedAngle(); Error += test_vector_angle_calls(); return Error;