skein/src/orbitvisualizer.hpp

30 lines
685 B
C++

#pragma once
#include <GL/glew.h>
#include <vector>
#include <skein/particlemap.h>
class OrbitVisualizer
{
public:
OrbitVisualizer(const ParticleMap& map, const std::string& particleId, const GLuint shaderProgram, float scale);
~OrbitVisualizer();
void render(const float time);
private:
const float _pi = 3.14159265359;
const int _vertexCount = 100;
const GLuint _shaderProgram;
const ParticleMap& _map;
const std::string _particleId;
const float _scale;
GLuint _vbo;
GLuint _vao;
std::vector<float> _vertices;
void regenerateVertices(const glm::vec3& basePos);
};