interpolation.h File Reference

#include <cml/mathlib/matrix_rotation.h>

Include dependency graph for interpolation.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  cml::detail::nlerp_f< MatT_1, MatT_2, 2 >
struct  cml::detail::nlerp_f< MatT_1, MatT_2, 3 >
struct  cml::detail::slerp_f< MatT_1, MatT_2, 2 >
struct  cml::detail::slerp_f< MatT_1, MatT_2, 3 >
struct  cml::detail::TypePromote3< T1, T2, T3, et::matrix_result_tag >
struct  cml::detail::TypePromote3< T1, T2, T3, et::quaternion_result_tag >
struct  cml::detail::TypePromote4< T1, T2, T3, T4, et::matrix_result_tag >
struct  cml::detail::TypePromote4< T1, T2, T3, T4, et::quaternion_result_tag >
struct  cml::detail::TypePromote< T, T, et::scalar_result_tag >
struct  cml::detail::TypePromote< T1, T2, et::matrix_result_tag >
struct  cml::detail::TypePromote< T1, T2, et::quaternion_result_tag >
struct  cml::detail::TypePromote< T1, T2, et::scalar_result_tag >
struct  cml::detail::TypePromote< T1, T2, et::vector_result_tag >

Namespaces

namespace  cml
namespace  cml::detail

Functions

template<class T1 , class T2 , class T3 , class T4 , typename Scalar >
detail::TypePromote< typename
detail::TypePromote< T1, T2,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type,
typename detail::TypePromote
< T3, T4, typename
et::ExprTraits< T3 >
::result_tag >::temporary_type,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type 
cml::bilerp (const T1 &val00, const T2 &val10, const T3 &val01, const T4 &val11, Scalar u, Scalar v)
template<typename E , class A , class B , class L , class MatT >
void cml::detail::InterpResize (matrix< E, A, B, L > &m, const MatT &target, dynamic_size_tag)
template<typename E , class A , class VecT >
void cml::detail::InterpResize (vector< E, A > &v, const VecT &target, dynamic_size_tag)
template<class T1 , class T2 , class SizeTag >
void cml::detail::InterpResize (T1 &t1, const T2 &t2, SizeTag)
template<class T1 , class T2 , typename Scalar >
detail::TypePromote< T1, T2,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type 
cml::lerp (const T1 &val0, const T2 &val1, Scalar u)
 Linear interpolation of 2 values.
template<class T1 , class T2 , typename Real >
detail::TypePromote< T1, T2,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type 
cml::nlerp (const T1 &t1, const T2 &t2, Real t)
template<class MatT_1 , class MatT_2 , typename Real >
detail::TypePromote< MatT_1,
MatT_2, typename
et::ExprTraits< MatT_1 >
::result_tag >::temporary_type 
cml::detail::nlerp (const MatT_1 &m1, const MatT_2 &m2, Real t, et::matrix_result_tag, dynamic_size_tag)
template<class MatT_1 , class MatT_2 , typename Real >
detail::TypePromote< MatT_1,
MatT_2, typename
et::ExprTraits< MatT_1 >
::result_tag >::temporary_type 
cml::detail::nlerp (const MatT_1 &m1, const MatT_2 &m2, Real t, et::matrix_result_tag, fixed_size_tag)
template<class QuatT_1 , class QuatT_2 , typename Real , class SizeT >
detail::TypePromote< QuatT_1,
QuatT_2, typename
et::ExprTraits< QuatT_1 >
::result_tag >::temporary_type 
cml::detail::nlerp (const QuatT_1 &q1, const QuatT_2 &q2, Real t, et::quaternion_result_tag, SizeT)
template<class VecT_1 , class VecT_2 , typename Real , class SizeT >
detail::TypePromote< VecT_1,
VecT_2, typename
et::ExprTraits< VecT_1 >
::result_tag >::temporary_type 
cml::detail::nlerp (const VecT_1 &v1, const VecT_2 &v2, Real t, et::vector_result_tag, SizeT)
template<class T1 , class T2 , typename Real >
detail::TypePromote< T1, T2,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type 
cml::slerp (const T1 &t1, const T2 &t2, Real t, Real tolerance=epsilon< Real >::placeholder())
 NOTE: Computation of intermediate rotation matrices for matrix 'squad' doesn't seem to be working correctly.
template<class MatT_1 , class MatT_2 , typename Real >
detail::TypePromote< MatT_1,
MatT_2, typename
et::ExprTraits< MatT_1 >
::result_tag >::temporary_type 
cml::detail::slerp (const MatT_1 &m1, const MatT_2 &m2, Real t, Real tolerance, et::matrix_result_tag, dynamic_size_tag)
template<class MatT_1 , class MatT_2 , typename Real >
detail::TypePromote< MatT_1,
MatT_2, typename
et::ExprTraits< MatT_1 >
::result_tag >::temporary_type 
cml::detail::slerp (const MatT_1 &m1, const MatT_2 &m2, Real t, Real tolerance, et::matrix_result_tag, fixed_size_tag)
template<class QuatT_1 , class QuatT_2 , typename Real , class SizeT >
detail::TypePromote< QuatT_1,
QuatT_2, typename
et::ExprTraits< QuatT_1 >
::result_tag >::temporary_type 
cml::detail::slerp (const QuatT_1 &q1, const QuatT_2 &q2, Real t, Real tolerance, et::quaternion_result_tag, SizeT)
template<class VecT_1 , class VecT_2 , typename Real , class SizeT >
detail::TypePromote< VecT_1,
VecT_2, typename
et::ExprTraits< VecT_1 >
::result_tag >::temporary_type 
cml::detail::slerp (const VecT_1 &v1, const VecT_2 &v2, Real t, Real tolerance, et::vector_result_tag, SizeT)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , typename Scalar >
detail::TypePromote< typename
detail::TypePromote< typename
detail::TypePromote< T1, T2,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type,
typename detail::TypePromote
< T3, T4, typename
et::ExprTraits< T3 >
::result_tag >::temporary_type,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type,
typename detail::TypePromote
< typename detail::TypePromote
< T5, T6, typename
et::ExprTraits< T5 >
::result_tag >::temporary_type,
typename detail::TypePromote
< T7, T8, typename
et::ExprTraits< T7 >
::result_tag >::temporary_type,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type,
typename et::ExprTraits< T1 >
::result_tag >::temporary_type 
cml::trilerp (const T1 &val000, const T2 &val100, const T3 &val010, const T4 &val110, const T5 &val001, const T6 &val101, const T7 &val011, const T8 &val111, Scalar u, Scalar v, Scalar w)
 Trilinear interpolation of 8 values.


Detailed Description

Definition in file interpolation.h.


Generated on Sat Jul 18 19:35:36 2009 for CML 1.0 by  doxygen 1.5.9