00001
00002
00004
00005
00006
00007
00009
00010
00012
00013 #ifndef glm_gtx_vector_query
00014 #define glm_gtx_vector_query
00015
00016
00017 #include "../glm.hpp"
00018 #include <cfloat>
00019 #include <limits>
00020
00021 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00022 # pragma message("GLM: GLM_GTX_vector_query extension included")
00023 #endif
00024
00025 namespace glm{
00026 namespace gtx{
00027 namespace vector_query
00028 {
00031
00034 template <typename genType>
00035 bool areCollinear(
00036 genType const & v0,
00037 genType const & v1,
00038 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00039
00042 template <typename genType>
00043 bool areOpposite(
00044 genType const & v0,
00045 genType const & v1,
00046 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00047
00050 template <typename genType>
00051 bool areOrthogonal(
00052 genType const & v0,
00053 genType const & v1,
00054 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00055
00058 template <typename genType>
00059 bool isNormalized(
00060 genType const & v,
00061 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00062
00065 template <typename genType>
00066 bool isNull(
00067 genType const & v,
00068 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00069
00072 template <typename genType>
00073 bool areOrthonormal(
00074 genType const & v0,
00075 genType const & v1,
00076 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00077
00080 template <typename genType>
00081 bool areSimilar(
00082 genType const & v0,
00083 genType const & v1,
00084 typename genType::value_type const & epsilon = std::numeric_limits<typename genType::value_type>::epsilon());
00085
00087 }
00088 }
00089 }
00090
00091 #include "vector_query.inl"
00092
00093 namespace glm{using namespace gtx::vector_query;}
00094
00095 #endif//glm_gtx_vector_query