gtx_log_base.cpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #include <glm/gtx/log_base.hpp>
  2. #include <glm/gtc/vec1.hpp>
  3. #include <glm/gtc/epsilon.hpp>
  4. #include <glm/exponential.hpp>
  5. namespace test_log
  6. {
  7. int run()
  8. {
  9. int Error = 0;
  10. {
  11. float A = glm::log(10.f, 2.0f);
  12. float B = glm::log2(10.f);
  13. Error += glm::epsilonEqual(A, B, 0.00001f) ? 0 : 1;
  14. }
  15. {
  16. glm::vec1 A = glm::log(glm::vec1(10.f), glm::vec1(2.0f));
  17. glm::vec1 B = glm::log2(glm::vec1(10.f));
  18. Error += glm::all(glm::epsilonEqual(A, B, glm::vec1(0.00001f))) ? 0 : 1;
  19. }
  20. {
  21. glm::vec2 A = glm::log(glm::vec2(10.f), glm::vec2(2.0f));
  22. glm::vec2 B = glm::log2(glm::vec2(10.f));
  23. Error += glm::all(glm::epsilonEqual(A, B, glm::vec2(0.00001f))) ? 0 : 1;
  24. }
  25. {
  26. glm::vec3 A = glm::log(glm::vec3(10.f), glm::vec3(2.0f));
  27. glm::vec3 B = glm::log2(glm::vec3(10.f));
  28. Error += glm::all(glm::epsilonEqual(A, B, glm::vec3(0.00001f))) ? 0 : 1;
  29. }
  30. {
  31. glm::vec4 A = glm::log(glm::vec4(10.f), glm::vec4(2.0f));
  32. glm::vec4 B = glm::log2(glm::vec4(10.f));
  33. Error += glm::all(glm::epsilonEqual(A, B, glm::vec4(0.00001f))) ? 0 : 1;
  34. }
  35. return Error;
  36. }
  37. }//namespace test_log
  38. int main()
  39. {
  40. int Error(0);
  41. Error += test_log::run();
  42. return Error;
  43. }