Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039 #ifndef GLM_GTX_rotate_vector
00040 #define GLM_GTX_rotate_vector GLM_VERSION
00041
00042
00043 #include "../glm.hpp"
00044 #include "../gtx/transform.hpp"
00045
00046 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00047 # pragma message("GLM: GLM_GTX_rotate_vector extension included")
00048 #endif
00049
00050 namespace glm
00051 {
00054
00057 template <typename T>
00058 detail::tvec2<T> rotate(
00059 detail::tvec2<T> const & v,
00060 T const & angle);
00061
00064 template <typename T>
00065 detail::tvec3<T> rotate(
00066 detail::tvec3<T> const & v,
00067 T const & angle,
00068 detail::tvec3<T> const & normal);
00069
00072 template <typename T>
00073 detail::tvec4<T> rotate(
00074 detail::tvec4<T> const & v,
00075 T const & angle,
00076 detail::tvec3<T> const & normal);
00077
00080 template <typename T>
00081 detail::tvec3<T> rotateX(
00082 detail::tvec3<T> const & v,
00083 T const & angle);
00084
00087 template <typename T>
00088 detail::tvec3<T> rotateY(
00089 detail::tvec3<T> const & v,
00090 T const & angle);
00091
00094 template <typename T>
00095 detail::tvec3<T> rotateZ(
00096 detail::tvec3<T> const & v,
00097 T const & angle);
00098
00101 template <typename T>
00102 detail::tvec4<T> rotateX(
00103 detail::tvec4<T> const & v,
00104 T const & angle);
00105
00108 template <typename T>
00109 detail::tvec4<T> rotateY(
00110 detail::tvec4<T> const & v,
00111 T const & angle);
00112
00115 template <typename T>
00116 detail::tvec4<T> rotateZ(
00117 detail::tvec4<T> const & v,
00118 T const & angle);
00119
00122 template <typename T>
00123 detail::tmat4x4<T> orientation(
00124 detail::tvec3<T> const & Normal,
00125 detail::tvec3<T> const & Up);
00126
00128 }
00129
00130 #include "rotate_vector.inl"
00131
00132 #endif//GLM_GTX_rotate_vector