00001
00002
00004
00005
00006
00007
00009
00010
00011
00013
00014 #ifndef glm_gtx_transform
00015 #define glm_gtx_transform
00016
00017
00018 #include "../glm.hpp"
00019 #include "../gtc/matrix_transform.hpp"
00020
00021 namespace glm
00022 {
00023 namespace test{
00024 void main_gtx_transform();
00025 }
00026
00027 namespace gtx{
00029 namespace transform
00030 {
00031 using namespace gtc::matrix_transform;
00032
00035 template <typename T>
00036 detail::tmat4x4<T> translate(
00037 T x, T y, T z);
00038
00041 template <typename T>
00042 detail::tmat4x4<T> translate(
00043 detail::tmat4x4<T> const & m,
00044 T x, T y, T z);
00045
00048 template <typename T>
00049 detail::tmat4x4<T> translate(
00050 detail::tvec3<T> const & v);
00051
00054 template <typename T>
00055 detail::tmat4x4<T> rotate(
00056 T angle,
00057 T x, T y, T z);
00058
00061 template <typename T>
00062 detail::tmat4x4<T> rotate(
00063 T angle,
00064 detail::tvec3<T> const & v);
00065
00068 template <typename T>
00069 detail::tmat4x4<T> rotate(
00070 detail::tmat4x4<T> const & m,
00071 T angle,
00072 T x, T y, T z);
00073
00076 template <typename T>
00077 detail::tmat4x4<T> scale(
00078 T x, T y, T z);
00079
00082 template <typename T>
00083 detail::tmat4x4<T> scale(
00084 detail::tmat4x4<T> const & m,
00085 T x, T y, T z);
00086
00089 template <typename T>
00090 detail::tmat4x4<T> scale(
00091 detail::tvec3<T> const & v);
00092
00093 }
00094 }
00095 }
00096
00097 #define GLM_GTX_transform namespace gtx::transform
00098 #ifndef GLM_GTX_GLOBAL
00099 namespace glm {using GLM_GTX_transform;}
00100 #endif//GLM_GTX_GLOBAL
00101
00102 #include "transform.inl"
00103
00104 #endif//glm_gtx_transform