#ifndef LINE_H #define LINE_H #include "vector.h" #include "mesh.h" #include namespace vb01{ class Shader; class LineRenderer{ public: struct Line{int id; Vector3 start; Vector3 end; Vector3 color;}; enum VectorFieldType{START, END, COLOR}; static LineRenderer* getSingleton(); void drawLines(); void addLine(Vector3 start, Vector3 end, Vector3 color); void changeLineField(int, Vector3, VectorFieldType); void removeLine(int); Line& getLine(int); private: LineRenderer(); int nextId = 0; Shader *shader = nullptr; std::vector lines; }; } #endif