00001
00002
00004
00005
00006
00007
00009
00010
00012
00013 #ifndef glm_gtx_spline
00014 #define glm_gtx_spline
00015
00016
00017 #include "../glm.hpp"
00018 #include "../gtx/optimum_pow.hpp"
00019
00020 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00021 # pragma message("GLM: GLM_GTX_spline extension included")
00022 #endif
00023
00024 namespace glm
00025 {
00026 namespace gtx{
00028 namespace spline
00029 {
00030 using namespace gtx::optimum_pow;
00031
00034
00037 template <typename genType>
00038 genType catmullRom(
00039 genType const & v1,
00040 genType const & v2,
00041 genType const & v3,
00042 genType const & v4,
00043 typename genType::value_type const & s);
00044
00047 template <typename genType>
00048 genType hermite(
00049 genType const & v1,
00050 genType const & t1,
00051 genType const & v2,
00052 genType const & t2,
00053 typename genType::value_type const & s);
00054
00057 template <typename genType>
00058 genType cubic(
00059 genType const & v1,
00060 genType const & v2,
00061 genType const & v3,
00062 genType const & v4,
00063 typename genType::value_type const & s);
00064
00066
00067 }
00068 }
00069 }
00070
00071 #include "spline.inl"
00072
00073 namespace glm{using namespace gtx::spline;}
00074
00075 #endif//glm_gtx_spline
00076