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 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00022 # pragma message("GLM: GLM_GTX_transform extension included")
00023 #endif
00024
00025 namespace glm
00026 {
00027 namespace test{
00028 void main_gtx_transform();
00029 }
00030
00031 namespace gtx{
00033 namespace transform
00034 {
00035 using namespace gtc::matrix_transform;
00036
00039
00042 template <typename T>
00043 detail::tmat4x4<T> translate(
00044 T x, T y, T z);
00045
00048 template <typename T>
00049 detail::tmat4x4<T> translate(
00050 detail::tmat4x4<T> const & m,
00051 T x, T y, T z);
00052
00055 template <typename T>
00056 detail::tmat4x4<T> translate(
00057 detail::tvec3<T> const & v);
00058
00061 template <typename T>
00062 detail::tmat4x4<T> rotate(
00063 T angle,
00064 T x, T y, T z);
00065
00068 template <typename T>
00069 detail::tmat4x4<T> rotate(
00070 T angle,
00071 detail::tvec3<T> const & v);
00072
00075 template <typename T>
00076 detail::tmat4x4<T> rotate(
00077 detail::tmat4x4<T> const & m,
00078 T angle,
00079 T x, T y, T z);
00080
00083 template <typename T>
00084 detail::tmat4x4<T> scale(
00085 T x, T y, T z);
00086
00089 template <typename T>
00090 detail::tmat4x4<T> scale(
00091 detail::tmat4x4<T> const & m,
00092 T x, T y, T z);
00093
00096 template <typename T>
00097 detail::tmat4x4<T> scale(
00098 detail::tvec3<T> const & v);
00099
00101
00102 }
00103 }
00104 }
00105
00106 #include "transform.inl"
00107
00108 namespace glm{using namespace gtx::transform;}
00109
00110 #endif//glm_gtx_transform