|
JK2eA
|
00001 #pragma once 00002 00003 #include "CurvePath.h" 00004 #include "NumIntegration.h" 00005 00009 class CCurvePathCatmullRom : public CCurvePath { 00010 private: 00014 class CurveFNC : public IntegrationFNC { 00015 private: 00016 CCurvePathCatmullRom* m_my_curve; 00017 size_t m_start_id; 00018 public: 00019 CurveFNC(CCurvePathCatmullRom* curve, size_t start_id); 00020 00021 virtual float operator()(float t); 00022 00023 }; 00024 00025 virtual float GetLengthBetweenNodes(const unsigned int uiStart,const unsigned int uiEnd); 00026 public: 00030 CCurvePathCatmullRom(); 00034 virtual ~CCurvePathCatmullRom(); 00035 00039 virtual vec GetValue(const float s, bool& end); 00043 virtual vec GetDir(const float s, bool& end); 00044 00045 virtual void DebugDraw(); 00046 }; 00047
1.8.0