ported the University CGI demo from WINDOWS + GLUT + GLEW + GLU + OpenGL 4 to LINUX WAYLAND + EGL + GLES 2 with minimal cuts

This commit is contained in:
beno
2025-07-03 01:26:25 +02:00
commit 6c125fb35e
85 changed files with 91688 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
#pragma once
#include "./Curve.hpp"
enum class CurveIterationMode
{
BASIC,
LENGTH
};
class CurveIterator {
private:
Curve *curve;
unsigned int steps;
CurveIterationMode iterationMode;
float estimatedLength;
int basicStepCounter;
float lengthStepCounter;
float leftBound;
float rightBound;
float lastIncrement;
void resetIterator();
void computeLength();
public:
CurveIterator(Curve *curve, unsigned int steps, CurveIterationMode basicOrLength);
void nextStep();
float getStep();
void setProgress(float at);
glm::vec3 evaluation();
glm::vec3 derivation();
Curve* getCurve();
};