Tatooine
Public Types | Public Member Functions | Public Attributes | List of all members
tatooine::flowexplorer::nodes::random_pathlines< N > Struct Template Reference

#include <random_pathlines.h>

Inheritance diagram for tatooine::flowexplorer::nodes::random_pathlines< N >:
[legend]
Collaboration diagram for tatooine::flowexplorer::nodes::random_pathlines< N >:
[legend]

Public Types

using vectorfield_t = polymorphic::vectorfield< double, N >
 
using integrator_t = ode::boost::rungekuttafehlberg78< double, N >
 
- Public Types inherited from tatooine::flowexplorer::renderable< random_pathlines< N > >
using serializer_t = ui::node_serializer< random_pathlines< N > >
 

Public Member Functions

 random_pathlines (flowexplorer::scene &s)
 
void render (mat< float, 4, 4 > const &projection_matrix, mat< float, 4, 4 > const &view_matrix) override
 
void update (std::chrono::duration< double > const &dt) override
 
auto draw_properties () -> bool override
 
void update_shader (mat4f const &projection_matrix, mat4f const &view_matrix)
 
void integrate_lines ()
 
void on_pin_connected (ui::input_pin &, ui::output_pin &other_pin) override
 
void on_pin_disconnected (ui::input_pin &) override
 
bool is_transparent () const override
 
- Public Member Functions inherited from tatooine::flowexplorer::renderable< random_pathlines< N > >
auto serialize () const -> toml::table override
 
auto deserialize (toml::table const &serialization) -> void override
 
auto draw_properties () -> bool override
 
auto type_name () const -> std::string_view override
 
- Public Member Functions inherited from tatooine::flowexplorer::base::renderable
 renderable (std::string const &title, flowexplorer::scene &s)
 
template<typename T >
 renderable (std::string const &title, flowexplorer::scene &s, T &ref)
 
 renderable (renderable const &w)=delete
 
 renderable (renderable &&w) noexcept=delete
 
auto operator= (renderable const &w) -> renderable &=delete
 
auto operator= (renderable &&w) noexcept -> renderable &=delete
 
virtual ~renderable ()=default
 
virtual auto render (mat4f const &projection_matrix, mat4f const &view_matrix) -> void=0
 
virtual auto is_transparent () const -> bool
 
virtual auto on_mouse_drag (int, int) -> bool
 
auto on_mouse_clicked () -> void
 
auto on_mouse_released () -> void
 
auto is_picked () -> bool
 
virtual auto check_intersection (ray< float, 3 > const &) const -> std::optional< intersection< double, 3 > >
 
- Public Member Functions inherited from tatooine::flowexplorer::ui::base::node
 node (flowexplorer::scene &s)
 
 node (std::string const &title, flowexplorer::scene &s)
 
template<typename T >
 node (flowexplorer::scene &s, T &ref)
 
template<typename T >
 node (std::string const &title, flowexplorer::scene &s, T &ref)
 
virtual ~node ()=default
 
template<typename... Ts>
auto insert_input_pin (std::string const &title, icon_type const t=icon_type::flow) -> auto &
 
template<typename Prop >
auto insert_input_pin_property_link (input_pin &pin, Prop &prop) -> auto &
 
template<typename T >
auto insert_output_pin (std::string const &title, T &ref, icon_type const t=icon_type::flow) -> auto &
 
auto title () const -> auto const &
 
auto title () -> auto &
 
auto scene () const -> auto const &
 
auto scene () -> auto &
 
auto set_title (std::string const &title)
 
auto has_self_pin () const -> bool
 
auto self_pin () const -> auto const &
 
auto self_pin () -> auto &
 
auto input_pins () const -> auto const &
 
auto input_pins () -> auto &
 
auto output_pins () const -> auto const &
 
auto output_pins () -> auto &
 
auto draw_node () -> void
 
auto node_position () const -> ImVec2
 
auto notify_property_changed (bool const notify_self=true) -> void
 
auto update_property_links () -> void
 
virtual auto draw_properties () -> bool=0
 
virtual auto on_property_changed () -> void
 
virtual auto on_title_changed (std::string const &) -> void
 
virtual auto on_pin_connected (input_pin &, output_pin &) -> void
 
virtual auto on_pin_connected (output_pin &, input_pin &) -> void
 
virtual auto on_pin_disconnected (input_pin &) -> void
 
virtual auto on_pin_disconnected (output_pin &) -> void
 
virtual auto type_name () const -> std::string_view=0
 
virtual auto update (std::chrono::duration< double > const &) -> void
 
virtual auto on_path_selected (std::string const &) -> void
 
- Public Member Functions inherited from tatooine::flowexplorer::uuid_holder< ax::NodeEditor::NodeId >
 uuid_holder (size_t const id)
 
 uuid_holder (ax::NodeEditor::NodeId const &id)
 
 uuid_holder ()
 
auto get_id () const -> const auto &
 
auto get_id () -> auto &
 
auto get_id_number () const
 
auto set_id (size_t const new_id)
 
constexpr auto operator== (uuid_holder< ax::NodeEditor::NodeId > const &other) const -> bool
 
constexpr auto operator== (ax::NodeEditor::NodeId const &id) const -> bool
 
constexpr auto operator== (size_t const id) const -> bool
 
constexpr auto equals ()
 
virtual auto serialize () const -> toml::table=0
 
virtual void deserialize (toml::table const &)=0
 
- Public Member Functions inherited from tatooine::flowexplorer::toggleable
constexpr toggleable (bool active=true)
 
constexpr toggleable (toggleable const &)=default
 
constexpr toggleable (toggleable &&)=default
 
constexpr auto operator= (toggleable const &) -> toggleable &=default
 
constexpr auto operator= (toggleable &&) -> toggleable &=default
 
 ~toggleable ()=default
 
virtual constexpr auto set_active (bool active=true) -> void
 
constexpr auto activate () -> void
 
constexpr auto deactivate () -> void
 
constexpr auto toggle () -> void
 
constexpr auto is_active () const -> bool const &
 
constexpr auto is_active () -> bool &
 
- Public Member Functions inherited from tatooine::flowexplorer::ui::node_serializer< T >
auto serialize (T const &t) const -> toml::table
 
auto deserialize (T &t, toml::table const &serialized_node) -> void
 
auto draw_properties (T &t) -> bool
 
constexpr auto type_name () const -> std::string_view
 

Public Attributes

vectorfield_t const * m_v = nullptr
 
axis_aligned_bounding_box< N > * m_boundingbox = nullptr
 
integrator_t m_integrator
 
std::unique_ptr< gpu::line_shader > m_shader
 
gl::indexeddata< vec< float, 3 >, vec< float, 3 >, float > m_gpu_data
 
double m_btau
 
double m_ftau
 
int m_num_pathlines
 
float m_line_color [3]
 
float m_contour_color [3]
 
float m_line_width
 
float m_contour_width
 
float m_ambient_factor
 
float m_diffuse_factor
 
float m_specular_factor
 
float m_shininess
 
bool m_animate
 
bool m_play
 
float m_fade_length
 
float m_general_alpha
 
float m_animation_min_alpha
 
float m_time
 
float m_speed
 
bool m_integration_going_on = false
 
- Public Attributes inherited from tatooine::flowexplorer::base::renderable
bool m_picked = false
 

Member Typedef Documentation

◆ integrator_t

◆ vectorfield_t

template<size_t N>
using tatooine::flowexplorer::nodes::random_pathlines< N >::vectorfield_t = polymorphic::vectorfield<double, N>

Constructor & Destructor Documentation

◆ random_pathlines()

template<size_t N>
tatooine::flowexplorer::nodes::random_pathlines< N >::random_pathlines ( flowexplorer::scene s)
inline

Member Function Documentation

◆ draw_properties()

template<size_t N>
auto tatooine::flowexplorer::nodes::random_pathlines< N >::draw_properties ( ) -> bool
inlineoverridevirtual

◆ integrate_lines()

template<size_t N>
void tatooine::flowexplorer::nodes::random_pathlines< N >::integrate_lines ( )
inline

◆ is_transparent()

template<size_t N>
bool tatooine::flowexplorer::nodes::random_pathlines< N >::is_transparent ( ) const
inlineoverridevirtual

◆ on_pin_connected()

template<size_t N>
void tatooine::flowexplorer::nodes::random_pathlines< N >::on_pin_connected ( ui::input_pin ,
ui::output_pin other_pin 
)
inlineoverridevirtual

◆ on_pin_disconnected()

template<size_t N>
void tatooine::flowexplorer::nodes::random_pathlines< N >::on_pin_disconnected ( ui::input_pin )
inlineoverridevirtual

◆ render()

template<size_t N>
void tatooine::flowexplorer::nodes::random_pathlines< N >::render ( mat< float, 4, 4 > const &  projection_matrix,
mat< float, 4, 4 > const &  view_matrix 
)
inlineoverride

◆ update()

template<size_t N>
void tatooine::flowexplorer::nodes::random_pathlines< N >::update ( std::chrono::duration< double > const &  dt)
inlineoverridevirtual

◆ update_shader()

template<size_t N>
void tatooine::flowexplorer::nodes::random_pathlines< N >::update_shader ( mat4f const &  projection_matrix,
mat4f const &  view_matrix 
)
inline

Member Data Documentation

◆ m_ambient_factor

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_ambient_factor

◆ m_animate

template<size_t N>
bool tatooine::flowexplorer::nodes::random_pathlines< N >::m_animate

◆ m_animation_min_alpha

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_animation_min_alpha

◆ m_boundingbox

template<size_t N>
axis_aligned_bounding_box<N>* tatooine::flowexplorer::nodes::random_pathlines< N >::m_boundingbox = nullptr

◆ m_btau

◆ m_contour_color

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_contour_color[3]

◆ m_contour_width

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_contour_width

◆ m_diffuse_factor

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_diffuse_factor

◆ m_fade_length

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_fade_length

◆ m_ftau

◆ m_general_alpha

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_general_alpha

◆ m_gpu_data

template<size_t N>
gl::indexeddata<vec<float, 3>, vec<float, 3>, float> tatooine::flowexplorer::nodes::random_pathlines< N >::m_gpu_data

◆ m_integration_going_on

template<size_t N>
bool tatooine::flowexplorer::nodes::random_pathlines< N >::m_integration_going_on = false

◆ m_integrator

template<size_t N>
integrator_t tatooine::flowexplorer::nodes::random_pathlines< N >::m_integrator

◆ m_line_color

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_line_color[3]

◆ m_line_width

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_line_width

◆ m_num_pathlines

template<size_t N>
int tatooine::flowexplorer::nodes::random_pathlines< N >::m_num_pathlines

◆ m_play

template<size_t N>
bool tatooine::flowexplorer::nodes::random_pathlines< N >::m_play

◆ m_shader

template<size_t N>
std::unique_ptr<gpu::line_shader> tatooine::flowexplorer::nodes::random_pathlines< N >::m_shader

◆ m_shininess

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_shininess

◆ m_specular_factor

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_specular_factor

◆ m_speed

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_speed

◆ m_time

template<size_t N>
float tatooine::flowexplorer::nodes::random_pathlines< N >::m_time

◆ m_v

template<size_t N>
vectorfield_t const* tatooine::flowexplorer::nodes::random_pathlines< N >::m_v = nullptr

The documentation for this struct was generated from the following file: