mat.cpp 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. ///////////////////////////////////////////////////////////////////////////////////////////////////
  2. // OpenGL Mathematics Copyright (c) 2005 - 2010 G-Truc Creation (www.g-truc.net)
  3. ///////////////////////////////////////////////////////////////////////////////////////////////////
  4. // Created : 2008-03-14
  5. // Updated : 2008-03-14
  6. // Licence : This source is under MIT License
  7. // File : test/core/ctor/mat.cpp
  8. ///////////////////////////////////////////////////////////////////////////////////////////////////
  9. #include "../../precompiled.hpp"
  10. #include <glm/glm.hpp>
  11. using namespace glm;
  12. bool test_core_cast_mat()
  13. {
  14. {
  15. mat2x3 m01(1.0f);
  16. mat2x4 m02(1.0f);
  17. mat3x2 m03(1.0f);
  18. mat3x4 m04(1.0f);
  19. mat4x2 m05(1.0f);
  20. mat4x3 m06(1.0f);
  21. }
  22. {
  23. mat2x3 m01(mat2(1.0f));
  24. mat2x3 m02(mat3(1.0f));
  25. mat2x3 m03(mat4(1.0f));
  26. mat2x3 m04(mat2x3(1.0f));
  27. mat2x3 m05(mat2x4(1.0f));
  28. mat2x3 m06(mat3x2(1.0f));
  29. mat2x3 m07(mat3x4(1.0f));
  30. mat2x3 m08(mat4x2(1.0f));
  31. mat2x3 m09(mat4x3(1.0f));
  32. }
  33. {
  34. mat2x4 m01(mat2(1.0f));
  35. mat2x4 m02(mat3(1.0f));
  36. mat2x4 m03(mat4(1.0f));
  37. mat2x4 m04(mat2x3(1.0f));
  38. mat2x4 m05(mat2x4(1.0f));
  39. mat2x4 m06(mat3x2(1.0f));
  40. mat2x4 m07(mat3x4(1.0f));
  41. mat2x4 m08(mat4x2(1.0f));
  42. mat2x4 m09(mat4x3(1.0f));
  43. }
  44. {
  45. mat3x2 m01(mat2(1.0f));
  46. mat3x2 m02(mat3(1.0f));
  47. mat3x2 m03(mat4(1.0f));
  48. mat3x2 m04(mat2x3(1.0f));
  49. mat3x2 m05(mat2x4(1.0f));
  50. mat3x2 m06(mat3x2(1.0f));
  51. mat3x2 m07(mat3x4(1.0f));
  52. mat3x2 m08(mat4x2(1.0f));
  53. mat3x2 m09(mat4x3(1.0f));
  54. }
  55. {
  56. mat3x4 m01(mat2(1.0f));
  57. mat3x4 m02(mat3(1.0f));
  58. mat3x4 m03(mat4(1.0f));
  59. mat3x4 m04(mat2x3(1.0f));
  60. mat3x4 m05(mat2x4(1.0f));
  61. mat3x4 m06(mat3x2(1.0f));
  62. mat3x4 m07(mat3x4(1.0f));
  63. mat3x4 m08(mat4x2(1.0f));
  64. mat3x4 m09(mat4x3(1.0f));
  65. }
  66. {
  67. mat4x2 m01(mat2(1.0f));
  68. mat4x2 m02(mat3(1.0f));
  69. mat4x2 m03(mat4(1.0f));
  70. mat4x2 m04(mat2x3(1.0f));
  71. mat4x2 m05(mat2x4(1.0f));
  72. mat4x2 m06(mat3x2(1.0f));
  73. mat4x2 m07(mat3x4(1.0f));
  74. mat4x2 m08(mat4x2(1.0f));
  75. mat4x2 m09(mat4x3(1.0f));
  76. }
  77. {
  78. mat4x3 m01(mat2(1.0f));
  79. mat4x3 m02(mat3(1.0f));
  80. mat4x3 m03(mat4(1.0f));
  81. mat4x3 m04(mat2x3(1.0f));
  82. mat4x3 m05(mat2x4(1.0f));
  83. mat4x3 m06(mat3x2(1.0f));
  84. mat4x3 m07(mat3x4(1.0f));
  85. mat4x3 m08(mat4x2(1.0f));
  86. mat4x3 m09(mat4x3(1.0f));
  87. }
  88. {
  89. mat2 m01(mat2x3(1.0f));
  90. mat2 m02(mat2x4(1.0f));
  91. mat2 m03(mat3x2(1.0f));
  92. mat2 m04(mat3x4(1.0f));
  93. mat2 m05(mat4x2(1.0f));
  94. mat2 m06(mat4x3(1.0f));
  95. mat2 m07(mat4(1.0f));
  96. mat2 m08(mat3(1.0f));
  97. }
  98. {
  99. mat3 m01(mat2x3(1.0f));
  100. mat3 m02(mat2x4(1.0f));
  101. mat3 m03(mat3x2(1.0f));
  102. mat3 m04(mat3x4(1.0f));
  103. mat3 m05(mat4x2(1.0f));
  104. mat3 m06(mat4x3(1.0f));
  105. mat3 m07(mat4(1.0f));
  106. mat3 m08(mat2(1.0f));
  107. }
  108. {
  109. mat4 m01(mat2x3(1.0f));
  110. mat4 m02(mat2x4(1.0f));
  111. mat4 m03(mat3x2(1.0f));
  112. mat4 m04(mat3x4(1.0f));
  113. mat4 m05(mat4x2(1.0f));
  114. mat4 m06(mat4x3(1.0f));
  115. mat4 m07(mat2(1.0f));
  116. mat4 m08(mat3(1.0f));
  117. }
  118. return true;
  119. }