10 #ifndef SLCURVEBEZIER_H
11 #define SLCURVEBEZIER_H
Extension class with functions for quick line & point drawing.
vector< SLVec3f > SLVVec3f
vector< SLVec4f > SLVVec4f
The SLCurveBezier class implements a Bezier curve interpolation.
void subdivideRender(SLVVec3f &points, const SLMat4f &wm, SLfloat epsilon, const SLVec3f &P0, const SLVec3f &P1, const SLVec3f &P2, const SLVec3f &P3)
SLVVec3f _controls
Control points of Bezier curve.
void init(const SLVVec4f &points, const SLVVec3f &controlPoints)
SLVec3f velocity(SLfloat t)
SLVec3f acceleration(SLfloat t)
SLGLVertexArrayExt _vao
Vertex array object for rendering.
SLfloat arcLength(SLfloat t1, SLfloat t2)
SLCurveBezier(const SLVVec4f &points)
SLVec3f evaluate(const SLfloat t)
SLfloat segmentArcLength(SLuint i, SLfloat u1, SLfloat u2)
void draw(const SLMat4f &wm)
void dispose()
Deletes all curve arrays.
SLfloat subdivideLength(const SLVec3f &P0, const SLVec3f &P1, const SLVec3f &P2, const SLVec3f &P3)
SLfloat findParamByDist(SLfloat t1, SLfloat s)
Base class for curves defined by multiple 3D points.
SLVVec4f _points
Sample points (x,y,z) and time (w) of curve.
SLGLVertexArray adds Helper Functions for quick Line & Point Drawing.
The SLScene class represents the top level instance holding the scene structure.