1#ifndef TATOOINE_FLOWEXPLORER_NODES_AXIS_ALIGNED_BOUNDING_BOX_H
2#define TATOOINE_FLOWEXPLORER_NODES_AXIS_ALIGNED_BOUNDING_BOX_H
5#include <tatooine/flowexplorer/line_shader.h>
45 auto& shader = line_shader::get();
49 shader.set_projection_matrix(P);
50 shader.set_modelview_matrix(V);
57 if constexpr (N == 3) {
66 }
else if constexpr (N == 2) {
82 m_gpu_data.indexbuffer() = {0, 1, 0, 2, 1, 3, 2, 3, 4, 5, 4, 6,
83 5, 7, 6, 7, 0, 4, 1, 5, 2, 6, 3, 7};
102 TATOOINE_REFLECTION_INSERT_GETTER(min),
103 TATOOINE_REFLECTION_INSERT_GETTER(max),
104 TATOOINE_REFLECTION_INSERT_GETTER(line_width),
105 TATOOINE_REFLECTION_INSERT_GETTER(line_color));
108 TATOOINE_REFLECTION_INSERT_GETTER(min),
109 TATOOINE_REFLECTION_INSERT_GETTER(max),
110 TATOOINE_REFLECTION_INSERT_GETTER(line_width),
111 TATOOINE_REFLECTION_INSERT_GETTER(line_color));
Definition: indexeddata.h:13
Definition: vertexbuffer.h:22
TATOOINE_FLOWEXPLORER_REGISTER_RENDERABLE(tatooine::flowexplorer::nodes::aabb2d, TATOOINE_REFLECTION_INSERT_GETTER(min), TATOOINE_REFLECTION_INSERT_GETTER(max), TATOOINE_REFLECTION_INSERT_GETTER(line_width), TATOOINE_REFLECTION_INSERT_GETTER(line_color))
DLL_API auto line_width(GLfloat width) -> void
Definition: algorithm.h:6
Definition: axis_aligned_bounding_box.h:103
auto constexpr max() const -> auto const &
Definition: axis_aligned_bounding_box.h:156
auto constexpr min() const -> auto const &
Definition: axis_aligned_bounding_box.h:151
Definition: axis_aligned_bounding_box.h:15
auto line_width() const
Definition: axis_aligned_bounding_box.h:89
auto set_vbo_data() -> void
Definition: axis_aligned_bounding_box.h:55
auto is_transparent() const -> bool override
Definition: axis_aligned_bounding_box.h:86
axis_aligned_bounding_box(const axis_aligned_bounding_box &)=default
axis_aligned_bounding_box(flowexplorer::scene &s)
Definition: axis_aligned_bounding_box.h:27
axis_aligned_bounding_box(axis_aligned_bounding_box &&) noexcept=default
std::array< GLfloat, 4 > m_line_color
Definition: axis_aligned_bounding_box.h:25
int m_line_width
Definition: axis_aligned_bounding_box.h:24
auto line_color() const -> auto const &
Definition: axis_aligned_bounding_box.h:92
gl::indexeddata< vec< float, N > > m_gpu_data
Definition: axis_aligned_bounding_box.h:23
auto line_color() -> auto &
Definition: axis_aligned_bounding_box.h:91
auto create_indexed_data() -> void
Definition: axis_aligned_bounding_box.h:78
auto line_width() -> auto &
Definition: axis_aligned_bounding_box.h:88
auto render(mat4f const &P, mat4f const &V) -> void override
Definition: axis_aligned_bounding_box.h:43
Definition: renderable.h:42