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:
parent
214590742d
commit
0afd09dc75
7 changed files with 210 additions and 33 deletions
|
@ -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;
|
||||
};
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue