1#ifndef TATOOINE_FLOWEXPLORER_NODES_LIC_H
2#define TATOOINE_FLOWEXPLORER_NODES_LIC_H
6#include <tatooine/gpu/lic.h>
7#include <tatooine/gpu/texture_shader.h>
11#include <tatooine/gl/indexdata.h>
100 auto update(std::chrono::duration<double>
const& ) ->
void override;
106 if (ImGui::Button(
"write png")) {
119 TATOOINE_REFLECTION_INSERT_METHOD(resolution, lic_res()),
120 TATOOINE_REFLECTION_INSERT_GETTER(num_samples),
121 TATOOINE_REFLECTION_INSERT_GETTER(stepsize),
122 TATOOINE_REFLECTION_INSERT_GETTER(alpha),
123 TATOOINE_REFLECTION_INSERT_GETTER(seed))
Definition: indexeddata.h:13
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))
Definition: axis_aligned_bounding_box.h:15
auto lic_res() const -> auto const &
Definition: lic.h:86
auto lic_res() -> auto &
Definition: lic.h:85
auto stepsize() const
Definition: lic.h:92
auto is_transparent() const -> bool override
int m_num_samples
Definition: lic.h:45
std::mutex m_mutex
Definition: lic.h:40
std::unique_ptr< gl::tex2rgba< float > > m_lic_tex
Definition: lic.h:38
auto seed() -> auto &
Definition: lic.h:97
auto stepsize() -> auto &
Definition: lic.h:91
float m_alpha
Definition: lic.h:47
std::string m_seed_str
Definition: lic.h:48
vectorfield_t * m_v
Definition: lic.h:30
double m_stepsize
Definition: lic.h:46
void on_pin_connected(ui::input_pin &this_pin, ui::output_pin &other_pin) override
auto alpha() const
Definition: lic.h:95
auto draw_properties() -> bool override
Definition: lic.h:102
std::unique_ptr< gpu::texture_shader > m_shader
Definition: lic.h:37
lic(flowexplorer::scene &s)
bool m_calculating
Definition: lic.h:35
auto update(std::chrono::duration< double > const &) -> void override
gl::indexeddata< vec< float, 2 >, vec< float, 2 >, float > m_quad
Definition: lic.h:39
auto update_shader(mat4f const &projection_matrix, mat4f const &view_matrix) -> void
auto calculate_lic() -> void
auto render(mat4f const &projection_matrix, mat4f const &view_matrix) -> void override
auto num_samples() -> auto &
Definition: lic.h:88
auto on_property_changed() -> void override
auto seed() const -> auto const &
Definition: lic.h:98
auto setup_quad() -> void
auto num_samples() const
Definition: lic.h:89
auto setup_pins() -> void
auto alpha() -> auto &
Definition: lic.h:94
void on_pin_disconnected(ui::input_pin &this_pin) override
vec< int, 2 > m_lic_res
Definition: lic.h:44
bool m_needs_another_update
Definition: lic.h:36
bb_t * m_bb
Definition: lic.h:31
Definition: vectorfield_to_gpu.h:11
Definition: renderable.h:42
auto draw_properties() -> bool override
Definition: renderable.h:55