1
0
Fork 0
mirror of https://github.com/AquariaOSE/Aquaria.git synced 2025-08-08 15:19:50 +00:00

bspline wip more

This commit is contained in:
fgenesis 2022-09-05 17:19:34 +02:00
parent 214590742d
commit 0afd09dc75
7 changed files with 210 additions and 33 deletions

View file

@ -6,6 +6,12 @@
#include "glm/glm.hpp"
#include "Quad.h"
enum SplineType
{
SPLINE_BSPLINE,
SPLINE_COSINE,
};
class SplineGridCtrlPoint : public Quad
{
public:
@ -27,6 +33,7 @@ public:
// # of control points on each axis
void resize(size_t w, size_t h, size_t xres, size_t yres);
void recalc();
void resetControlPoints();
virtual void onRender(const RenderState& rs) const OVERRIDE;
@ -34,6 +41,9 @@ public:
private:
void recalcBSpline();
void recalcCosine();
SplineGridCtrlPoint *createControlPoint(size_t x, size_t y);
unsigned degreeX, degreeY;
@ -46,6 +56,7 @@ private:
size_t _yres;
std::vector<SplineGridCtrlPoint*> ctrlp;
SplineType splinetype;
};