20#ifndef LIBREPCB_EDITOR_OPENGLTRIANGLEOBJECT_H
21#define LIBREPCB_EDITOR_OPENGLTRIANGLEOBJECT_H
28#include <optional/tl/optional.hpp>
54 void setData(const QColor& color, const QVector<QVector3D>& data) noexcept;
55 virtual
void draw(QOpenGLFunctions& gl,
56 QOpenGLShaderProgram& program) noexcept override;
Represents one 3D object in an OpenGL 3D model.
Definition: openglobject.h:43
Asynchronously generates a 3D board scene for OpenGL rendering.
Definition: opengltriangleobject.h:46
QMutex mMutex
Definition: opengltriangleobject.h:65
QOpenGLBuffer mBuffer
Definition: opengltriangleobject.h:62
void setData(const QColor &color, const QVector< QVector3D > &data) noexcept
Definition: opengltriangleobject.cpp:54
OpenGlTriangleObject(const OpenGlTriangleObject &other)=delete
OpenGlTriangleObject() noexcept
Definition: opengltriangleobject.cpp:38
QColor mColor
Definition: opengltriangleobject.h:66
virtual ~OpenGlTriangleObject() noexcept
Definition: opengltriangleobject.cpp:46
tl::optional< QVector< QVector3D > > mNewTriangles
Definition: opengltriangleobject.h:67
virtual void draw(QOpenGLFunctions &gl, QOpenGLShaderProgram &program) noexcept override
Definition: opengltriangleobject.cpp:61
int mCount
Definition: opengltriangleobject.h:63
Definition: occmodel.cpp:77