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 #ifndef glm_core_func_geometric
00030 #define glm_core_func_geometric
00031
00032 namespace glm
00033 {
00036
00041 template <typename genType>
00042 typename genType::value_type length(
00043 genType const & x);
00044
00049 template <typename genType>
00050 typename genType::value_type distance(
00051 genType const & p0,
00052 genType const & p1);
00053
00058 template <typename genType>
00059 typename genType::value_type dot(
00060 genType const & x,
00061 genType const & y);
00062
00067 template <typename T>
00068 detail::tvec3<T> cross(
00069 detail::tvec3<T> const & x,
00070 detail::tvec3<T> const & y);
00071
00076 template <typename genType>
00077 genType normalize(
00078 genType const & x);
00079
00084 template <typename genType>
00085 genType faceforward(
00086 genType const & N,
00087 genType const & I,
00088 genType const & Nref);
00089
00095 template <typename genType>
00096 genType reflect(
00097 genType const & I,
00098 genType const & N);
00099
00106 template <typename genType>
00107 genType refract(
00108 genType const & I,
00109 genType const & N,
00110 typename genType::value_type const & eta);
00111
00113 }
00114
00115 #include "func_geometric.inl"
00116
00117 #endif//glm_core_func_geometric