KudanAR - iOS  1.6.0
GLM_GTX_compatibility

Provide functions to increase the compatibility with Cg and HLSL languages. More...

Typedefs

typedef bool glm::bool1
 boolean type with 1 component. (From GLM_GTX_compatibility extension)
 
typedef tvec2< bool, highp > glm::bool2
 boolean type with 2 components. (From GLM_GTX_compatibility extension)
 
typedef tvec3< bool, highp > glm::bool3
 boolean type with 3 components. (From GLM_GTX_compatibility extension)
 
typedef tvec4< bool, highp > glm::bool4
 boolean type with 4 components. (From GLM_GTX_compatibility extension)
 
typedef bool glm::bool1x1
 boolean matrix with 1 x 1 component. (From GLM_GTX_compatibility extension)
 
typedef tmat2x2< bool, highp > glm::bool2x2
 boolean matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x3< bool, highp > glm::bool2x3
 boolean matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x4< bool, highp > glm::bool2x4
 boolean matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x2< bool, highp > glm::bool3x2
 boolean matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x3< bool, highp > glm::bool3x3
 boolean matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x4< bool, highp > glm::bool3x4
 boolean matrix with 3 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x2< bool, highp > glm::bool4x2
 boolean matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x3< bool, highp > glm::bool4x3
 boolean matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x4< bool, highp > glm::bool4x4
 boolean 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 tvec2< int, highp > glm::int2
 integer vector with 2 components. (From GLM_GTX_compatibility extension)
 
typedef tvec3< int, highp > glm::int3
 integer vector with 3 components. (From GLM_GTX_compatibility extension)
 
typedef tvec4< int, highp > glm::int4
 integer vector with 4 components. (From GLM_GTX_compatibility extension)
 
typedef int glm::int1x1
 integer matrix with 1 component. (From GLM_GTX_compatibility extension)
 
typedef tmat2x2< int, highp > glm::int2x2
 integer matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x3< int, highp > glm::int2x3
 integer matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x4< int, highp > glm::int2x4
 integer matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x2< int, highp > glm::int3x2
 integer matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x3< int, highp > glm::int3x3
 integer matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x4< int, highp > glm::int3x4
 integer matrix with 3 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x2< int, highp > glm::int4x2
 integer matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x3< int, highp > glm::int4x3
 integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x4< int, highp > glm::int4x4
 integer 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 tvec2< float, highp > glm::float2
 single-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
 
typedef tvec3< float, highp > glm::float3
 single-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension)
 
typedef tvec4< float, highp > glm::float4
 single-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension)
 
typedef float glm::float1x1
 single-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension)
 
typedef tmat2x2< float, highp > glm::float2x2
 single-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x3< float, highp > glm::float2x3
 single-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x4< float, highp > glm::float2x4
 single-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x2< float, highp > glm::float3x2
 single-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x3< float, highp > glm::float3x3
 single-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x4< float, highp > glm::float3x4
 single-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x2< float, highp > glm::float4x2
 single-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x3< float, highp > glm::float4x3
 single-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x4< float, highp > glm::float4x4
 single-precision floating-point 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 tvec2< double, highp > glm::double2
 double-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
 
typedef tvec3< double, highp > glm::double3
 double-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension)
 
typedef tvec4< double, highp > glm::double4
 double-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension)
 
typedef double glm::double1x1
 double-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension)
 
typedef tmat2x2< double, highp > glm::double2x2
 double-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x3< double, highp > glm::double2x3
 double-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat2x4< double, highp > glm::double2x4
 double-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x2< double, highp > glm::double3x2
 double-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x3< double, highp > glm::double3x3
 double-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat3x4< double, highp > glm::double3x4
 double-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x2< double, highp > glm::double4x2
 double-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x3< double, highp > glm::double4x3
 double-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
 
typedef tmat4x4< double, highp > glm::double4x4
 double-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension)
 

Functions

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 tvec2< T, P > glm::lerp (const tvec2< T, P > &x, const 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 tvec3< T, P > glm::lerp (const tvec3< T, P > &x, const 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 tvec4< T, P > glm::lerp (const tvec4< T, P > &x, const 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 tvec2< T, P > glm::lerp (const tvec2< T, P > &x, const tvec2< T, P > &y, const 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 tvec3< T, P > glm::lerp (const tvec3< T, P > &x, const tvec3< T, P > &y, const 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 tvec4< T, P > glm::lerp (const tvec4< T, P > &x, const tvec4< T, P > &y, const 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 tvec2< T, P > glm::saturate (const 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 tvec3< T, P > glm::saturate (const 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 tvec4< T, P > glm::saturate (const 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_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 tvec2< T, P > glm::atan2 (const tvec2< T, P > &x, const 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 tvec3< T, P > glm::atan2 (const tvec3< T, P > &x, const 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 tvec4< T, P > glm::atan2 (const tvec4< T, P > &x, const 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 tvec2< bool, P > glm::isfinite (const 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 tvec3< bool, P > glm::isfinite (const 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 tvec4< bool, P > glm::isfinite (const tvec4< T, P > &x)
 Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility)
 

Detailed Description

Provide functions to increase the compatibility with Cg and HLSL languages.

<glm/gtx/compatibility.hpp> need to be included to use these functionalities.