#pragma once #define STUFF_SPLINE_HPP #if !defined(STUFF_STUFF_HPP) #include #endif #if !defined(STUFF_AFFINEMATRIX_HPP) #include #endif namespace Stuff { class CubicCurve { public: CubicCurve( // Hermite form const Point3D& p1, const Vector3D& r1, const Point3D& p4, const Vector3D& r4 ); CubicCurve( // Bezier form const Point3D& p1, const Point3D& p2, const Point3D& p3, const Point3D& p4 ); void Evaluate( Scalar t, Point3D *p, Vector3D *v ); void TestInstance() const {} protected: AffineMatrix4D basisMatrix; }; }