Files
rez_demo/GL_STUFF/HEADERS/CURVES/Bezier.hpp

24 lines
624 B
C++
Executable File

#pragma once
#include "./Curve.hpp"
class Bezier : public Curve {
private:
unsigned int order;
protected:
float evaluateBasisFunction(float at, int number, int order, float intervalLeft, float intervalRight);
public:
Bezier(unsigned int order, vector<glm::vec3> *points, vector<float> *intervals);
glm::vec3 evaluate(float at);
glm::vec3 derivate(float at);
};
class Bezier3Segments : public Bezier {
public:
Bezier3Segments( vector<glm::vec3>* points, vector<float>* intervals);
glm::vec3 evaluate(float at);
glm::vec3 derivate(float at);
float getLeftBound();
float getRightBound();
};