19#ifndef _RAY_BEAM_ELEMENT_H
20#define _RAY_BEAM_ELEMENT_H
23#include <RayTracingEngine.h>
32 virtual void id2color(uint32_t, GLfloat *rgba)
const;
33 virtual void id2color(uint32_t, GLfloat alpha, GLfloat *rgba)
const;
42 std::map<uint32_t, CrappyCplusplusColorWrapper> m_colors;
43 GLfloat m_defaultColor[3] = {1., 1., 0};
46 virtual void id2color(uint32_t, GLfloat *rgb)
const override;
48 void setColor(uint32_t
id, Real r, Real g, Real b);
49 void setDefaultColor(Real r, Real g, Real b);
53 std::vector<GLfloat> vertices;
54 std::vector<GLfloat> colors;
55 GLfloat lineWidth = .25;
56 GLushort stipple = 0xffff;
64 const GLfloat *color2 =
nullptr);
71 unsigned int m_maxRays = 5000;
72 uint64_t m_strayRays = 0;
74 pthread_mutex_t m_rayMutex = PTHREAD_MUTEX_INITIALIZER;
75 std::list<Ray> m_rays;
78 bool m_dynamicAlpha =
false;
79 void raysToVertices();
96 void setList(std::list<Ray>
const &);
99 void setRayWidth(Real width);
100 void setDynamicAlpha(
bool);
102 virtual void renderOpenGL()
override;
Definition: Element.h:393
Definition: Element.h:173
Definition: RayBeamElement.h:41
Definition: RayBeamElement.h:67
Definition: RayBeamElement.h:30
Definition: ReferenceFrame.h:59
Definition: RayBeamElement.h:37
Definition: RayBeamElement.h:52