Go to the source code of this file.
Namespaces | |
namespace | glm |
Typedefs | |
typedef bool | glm::bool1 |
boolean type with 1 component. (From GLM_GTX_compatibility extension) | |
typedef bool | glm::bool1x1 |
boolean matrix with 1 x 1 component. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec2< bool, highp > | glm::bool2 |
boolean type with 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x2< bool, highp > | glm::bool2x2 |
boolean matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x3< bool, highp > | glm::bool2x3 |
boolean matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x4< bool, highp > | glm::bool2x4 |
boolean matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec3< bool, highp > | glm::bool3 |
boolean type with 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x2< bool, highp > | glm::bool3x2 |
boolean matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x3< bool, highp > | glm::bool3x3 |
boolean matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x4< bool, highp > | glm::bool3x4 |
boolean matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec4< bool, highp > | glm::bool4 |
boolean type with 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x2< bool, highp > | glm::bool4x2 |
boolean matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x3< bool, highp > | glm::bool4x3 |
boolean matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x4< bool, highp > | glm::bool4x4 |
boolean matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef double | glm::double1 |
double-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension) | |
typedef double | glm::double1x1 |
double-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec2< double, highp > | glm::double2 |
double-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x2 < double, highp > | glm::double2x2 |
double-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x3 < double, highp > | glm::double2x3 |
double-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x4 < double, highp > | glm::double2x4 |
double-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec3< double, highp > | glm::double3 |
double-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x2 < double, highp > | glm::double3x2 |
double-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x3 < double, highp > | glm::double3x3 |
double-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x4 < double, highp > | glm::double3x4 |
double-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec4< double, highp > | glm::double4 |
double-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x2 < double, highp > | glm::double4x2 |
double-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x3 < double, highp > | glm::double4x3 |
double-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x4 < double, highp > | glm::double4x4 |
double-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef float | glm::float1 |
single-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension) | |
typedef float | glm::float1x1 |
single-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec2< float, highp > | glm::float2 |
single-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x2< float, highp > | glm::float2x2 |
single-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x3< float, highp > | glm::float2x3 |
single-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x4< float, highp > | glm::float2x4 |
single-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec3< float, highp > | glm::float3 |
single-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x2< float, highp > | glm::float3x2 |
single-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x3< float, highp > | glm::float3x3 |
single-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x4< float, highp > | glm::float3x4 |
single-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec4< float, highp > | glm::float4 |
single-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x2< float, highp > | glm::float4x2 |
single-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x3< float, highp > | glm::float4x3 |
single-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x4< float, highp > | glm::float4x4 |
single-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef int | glm::int1 |
integer vector with 1 component. (From GLM_GTX_compatibility extension) | |
typedef int | glm::int1x1 |
integer matrix with 1 component. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec2< int, highp > | glm::int2 |
integer vector with 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x2< int, highp > | glm::int2x2 |
integer matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x3< int, highp > | glm::int2x3 |
integer matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat2x4< int, highp > | glm::int2x4 |
integer matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec3< int, highp > | glm::int3 |
integer vector with 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x2< int, highp > | glm::int3x2 |
integer matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x3< int, highp > | glm::int3x3 |
integer matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat3x4< int, highp > | glm::int3x4 |
integer matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tvec4< int, highp > | glm::int4 |
integer vector with 4 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x2< int, highp > | glm::int4x2 |
integer matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x3< int, highp > | glm::int4x3 |
integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) | |
typedef detail::tmat4x4< int, highp > | glm::int4x4 |
integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) | |
Functions | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER T | glm::atan2 (T x, T y) |
Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec2< T, P > | glm::atan2 (const detail::tvec2< T, P > &x, const detail::tvec2< T, P > &y) |
Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec3< T, P > | glm::atan2 (const detail::tvec3< T, P > &x, const detail::tvec3< T, P > &y) |
Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec4< T, P > | glm::atan2 (const detail::tvec4< T, P > &x, const detail::tvec4< T, P > &y) |
Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) | |
template<typename genType > | |
GLM_FUNC_DECL bool | glm::isfinite (genType const &x) |
Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_DECL detail::tvec2 < bool, P > | glm::isfinite (const detail::tvec2< T, P > &x) |
Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_DECL detail::tvec3 < bool, P > | glm::isfinite (const detail::tvec3< T, P > &x) |
Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_DECL detail::tvec4 < bool, P > | glm::isfinite (const detail::tvec4< T, P > &x) |
Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) | |
template<typename T > | |
GLM_FUNC_QUALIFIER T | glm::lerp (T x, T y, T a) |
Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec2< T, P > | glm::lerp (const detail::tvec2< T, P > &x, const detail::tvec2< T, P > &y, T a) |
Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec3< T, P > | glm::lerp (const detail::tvec3< T, P > &x, const detail::tvec3< T, P > &y, T a) |
Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec4< T, P > | glm::lerp (const detail::tvec4< T, P > &x, const detail::tvec4< T, P > &y, T a) |
Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec2< T, P > | glm::lerp (const detail::tvec2< T, P > &x, const detail::tvec2< T, P > &y, const detail::tvec2< T, P > &a) |
Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using vector a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec3< T, P > | glm::lerp (const detail::tvec3< T, P > &x, const detail::tvec3< T, P > &y, const detail::tvec3< T, P > &a) |
Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using vector a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec4< T, P > | glm::lerp (const detail::tvec4< T, P > &x, const detail::tvec4< T, P > &y, const detail::tvec4< T, P > &a) |
Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using vector a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER T | glm::saturate (T x) |
Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec2< T, P > | glm::saturate (const detail::tvec2< T, P > &x) |
Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec3< T, P > | glm::saturate (const detail::tvec3< T, P > &x) |
Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_QUALIFIER detail::tvec4< T, P > | glm::saturate (const detail::tvec4< T, P > &x) |
Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) | |
template<typename T , precision P> | |
GLM_FUNC_DECL detail::tquat< T, P > | glm::slerp (detail::tquat< T, P > const &x, detail::tquat< T, P > const &y, T const &a) |
Returns the slurp interpolation between two quaternions. |
OpenGL Mathematics (glm.g-truc.net)
Copyright (c) 2005 - 2014 G-Truc Creation (www.g-truc.net) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Definition in file compatibility.hpp.