GLM Version 0.9.0
|
00001 00002 // OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net) 00004 // Created : 2006-11-02 00005 // Updated : 2009-02-19 00006 // Licence : This source is under MIT License 00007 // File : glm/gtx/rotate_vector.hpp 00009 // Dependency: 00010 // - GLM core 00012 00013 #ifndef glm_gtx_rotate_vector 00014 #define glm_gtx_rotate_vector 00015 00016 // Dependency: 00017 #include "../glm.hpp" 00018 #include "../gtx/transform.hpp" 00019 00020 namespace glm 00021 { 00022 namespace gtx{ 00024 namespace rotate_vector 00025 { 00026 using namespace transform; 00027 00030 template <typename T> 00031 detail::tvec2<T> rotate( 00032 const detail::tvec2<T>& v, 00033 T angle); 00034 00037 template <typename T> 00038 detail::tvec3<T> rotate( 00039 const detail::tvec3<T>& v, 00040 T angle, 00041 const detail::tvec3<T>& normal); 00042 00045 template <typename T> 00046 detail::tvec4<T> rotate( 00047 const detail::tvec4<T>& v, T angle, 00048 const detail::tvec3<T>& normal); 00049 00052 template <typename T> 00053 detail::tvec3<T> rotateX( 00054 const detail::tvec3<T>& v, 00055 T angle); 00056 00059 template <typename T> 00060 detail::tvec3<T> rotateY( 00061 const detail::tvec3<T>& v, 00062 T angle); 00063 00066 template <typename T> 00067 detail::tvec3<T> rotateZ( 00068 const detail::tvec3<T>& v, 00069 T angle); 00070 00073 template <typename T> 00074 detail::tvec4<T> rotateX( 00075 const detail::tvec4<T>& v, 00076 T angle); 00077 00080 template <typename T> 00081 detail::tvec4<T> rotateY( 00082 const detail::tvec4<T>& v, 00083 T angle); 00084 00087 template <typename T> 00088 detail::tvec4<T> rotateZ( 00089 const detail::tvec4<T>& v, 00090 T angle); 00091 00094 template <typename T> 00095 detail::tmat4x4<T> orientation( 00096 const detail::tvec3<T>& Normal, 00097 const detail::tvec3<T>& Up); 00098 00099 }//namespace rotate_vector 00100 }//namespace gtx 00101 }//namespace glm 00102 00103 #include "rotate_vector.inl" 00104 00105 namespace glm{using namespace gtx::rotate_vector;} 00106 00107 #endif//glm_gtx_rotate_vector