gtsam_points
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
guik::LightViewerContext Class Reference

#include <light_viewer_context.hpp>

Inheritance diagram for guik::LightViewerContext:
Inheritance graph
[legend]
Collaboration diagram for guik::LightViewerContext:
Collaboration graph
[legend]

Public Member Functions

 LightViewerContext (const std::string &context_name)
 
virtual ~LightViewerContext ()
 
void draw_ui ()
 
void draw_gl ()
 
bool init_canvas (const Eigen::Vector2i &size)
 
void set_size (const Eigen::Vector2i &size)
 
void set_clear_color (const Eigen::Vector4f &color)
 
void set_pos (const Eigen::Vector2i &pos, ImGuiCond cond=ImGuiCond_FirstUseEver, ImGuiWindowFlags=0)
 
void show ()
 
void hide ()
 
virtual void clear ()
 
virtual void clear_text ()
 
virtual void append_text (const std::string &text)
 
virtual void register_ui_callback (const std::string &name, const std::function< void()> &callback=0)
 
void remove_ui_callback (const std::string &name)
 
guik::ShaderSettingshader_setting ()
 
const guik::ShaderSettingshader_setting () const
 
void disable_xy_grid ()
 
void enable_xy_grid ()
 
void set_draw_xy_grid (bool draw_xy_grid)
 
void set_colormap (glk::COLORMAP colormap)
 
void set_screen_effect (const std::shared_ptr< glk::ScreenEffect > &effect)
 
const std::shared_ptr< glk::ScreenEffect > & get_screen_effect () const
 
void set_bg_texture (const std::shared_ptr< glk::Texture > &bg_texture)
 
void set_rainbow_range (const Eigen::Vector2f &minmax_z)
 
void set_rainbow_axis (const Eigen::Vector3f &axis)
 
void set_point_shape (float point_size=1.0f, bool metric=true, bool circle=true)
 
void enable_decimal_rendering ()
 
void enable_normal_buffer ()
 
void enable_info_buffer ()
 
void enable_partial_rendering (double clear_thresh=1e-6)
 
void disable_partial_rendering ()
 
bool normal_buffer_enabled () const
 
bool info_buffer_enabled () const
 
bool partial_rendering_enabled () const
 
const glk::Texturecolor_buffer () const
 
const glk::Texturedepth_buffer () const
 
const glk::Texturenormal_buffer () const
 
const glk::Textureinfo_buffer () const
 
const glk::Texturedynamic_flag_buffer () const
 
void clear_drawables ()
 
void clear_drawables (const std::function< bool(const std::string &)> &fn)
 
std::unordered_map< std::string, std::pair< ShaderSetting::Ptr, glk::Drawable::ConstPtr > > & get_drawables ()
 
std::pair< ShaderSetting::Ptr, glk::Drawable::ConstPtrfind_drawable (const std::string &name)
 
void remove_drawable (const std::string &name)
 
void remove_drawable (const std::regex &regex)
 
void update_drawable (const std::string &name, const glk::Drawable::ConstPtr &drawable, const ShaderSetting &shader_setting=ShaderSetting())
 
void clear_drawable_filters ()
 
void register_drawable_filter (const std::string &filter_name, const std::function< bool(const std::string &)> &filter=0)
 
void remove_drawable_filter (const std::string &filter_name)
 
void clear_partial_rendering ()
 
const std::shared_ptr< CameraControl > & get_camera_control () const
 
const std::shared_ptr< ProjectionControl > & get_projection_control () const
 
void set_camera_control (const std::shared_ptr< CameraControl > &camera_control)
 
void set_projection_control (const std::shared_ptr< ProjectionControl > &projection_control)
 
bool save_camera_settings (const std::string &path) const
 
bool load_camera_settings (const std::string &path)
 
void reset_center ()
 
void lookat (const Eigen::Vector3f &pt)
 
template<typename Vector >
void lookat (const Vector &pt)
 
std::shared_ptr< OrbitCameraControlXYuse_orbit_camera_control (double distance=80.0, double theta=0.0, double phi=-60.0f *M_PI/180.0f)
 
std::shared_ptr< OrbitCameraControlXZuse_orbit_camera_control_xz (double distance=80.0, double theta=0.0, double phi=0.0)
 
std::shared_ptr< TopDownCameraControluse_topdown_camera_control (double distance=80.0, double theta=0.0)
 
std::shared_ptr< ArcBallCameraControluse_arcball_camera_control (double distance=80.0, double theta=0.0, double phi=-60.0f *M_PI/180.0f)
 
std::shared_ptr< FPSCameraControluse_fps_camera_control (double fovy_deg=60.0)
 
guik::GLCanvasget_canvas ()
 
Eigen::Vector2i canvas_tl () const
 
Eigen::Vector2i canvas_br () const
 
Eigen::Vector2i canvas_size () const
 
Eigen::Matrix4f view_matrix () const
 
Eigen::Matrix4f projection_matrix () const
 
Eigen::Vector4i pick_info (const Eigen::Vector2i &p, int window=2) const
 
float pick_depth (const Eigen::Vector2i &p, int window=2) const
 
Eigen::Vector3f unproject (const Eigen::Vector2i &p, float depth) const
 
std::optional< Eigen::Vector3f > pick_point (int button=0, int window=2, Eigen::Vector4i *info=nullptr) const
 
std::vector< unsigned char > read_color_buffer () const
 
std::vector< float > read_depth_buffer (bool real_scale=true)
 
bool save_color_buffer (const std::string &filename)
 
bool save_depth_buffer (const std::string &filename, bool real_scale=true)
 
AsyncLightViewerContext async ()
 
std::shared_ptr< glk::PointCloudBufferupdate_points (const std::string &name, const float *data, int stride, int num_points, const ShaderSetting &shader_setting)
 
template<typename Scalar , int Dim>
std::shared_ptr< glk::PointCloudBufferupdate_points (const std::string &name, const Eigen::Matrix< Scalar, Dim, 1 > *points, int num_points, const ShaderSetting &shader_setting)
 
template<typename Scalar , int Dim, typename Allocator >
std::shared_ptr< glk::PointCloudBufferupdate_points (const std::string &name, const std::vector< Eigen::Matrix< Scalar, Dim, 1 >, Allocator > &points, const ShaderSetting &shader_setting)
 
template<typename Scalar , int Dim>
void update_normal_dists (const std::string &name, const Eigen::Matrix< Scalar, Dim, 1 > *points, const Eigen::Matrix< Scalar, Dim, Dim > *covs, int num_points, float scale, const ShaderSetting &shader_setting)
 
template<typename Scalar , int Dim, typename Alloc1 , typename Alloc2 >
void update_normal_dists (const std::string &name, const std::vector< Eigen::Matrix< Scalar, Dim, 1 >, Alloc1 > &points, const std::vector< Eigen::Matrix< Scalar, Dim, Dim >, Alloc2 > &covs, float scale, const ShaderSetting &shader_setting)
 
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const float *vertices, const float *colors, int num_vertices, const unsigned int *indices, int num_indices, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename Scalar , int Dim>
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const Eigen::Matrix< Scalar, Dim, 1 > *points, int num_points, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename ScalarV , int DimV, typename ScalarC , int DimC>
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const Eigen::Matrix< ScalarV, DimV, 1 > *points, const Eigen::Matrix< ScalarC, DimC, 1 > *colors, int num_points, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename ScalarV , int DimV, typename ScalarC , int DimC>
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const Eigen::Matrix< ScalarV, DimV, 1 > *points, const Eigen::Matrix< ScalarC, DimC, 1 > *colors, int num_points, const unsigned int *indices, int num_indices, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename Point , typename Alloc >
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const std::vector< Point, Alloc > &points, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename Point , typename Alloc >
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const std::vector< Point, Alloc > &points, const std::vector< unsigned int > &indices, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename Point , typename AllocP , typename Color , typename AllocC >
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const std::vector< Point, AllocP > &points, const std::vector< Color, AllocC > &colors, bool line_strip, const ShaderSetting &shader_setting)
 
template<typename Point , typename AllocP , typename Color , typename AllocC >
std::shared_ptr< glk::ThinLinesupdate_thin_lines (const std::string &name, const std::vector< Point, AllocP > &points, const std::vector< Color, AllocC > &colors, const std::vector< unsigned int > &indices, bool line_strip, const ShaderSetting &shader_setting)
 
void update_icosahedron (const std::string &name, const ShaderSetting &shader_setting)
 
void update_sphere (const std::string &name, const ShaderSetting &shader_setting)
 
void update_cube (const std::string &name, const ShaderSetting &shader_setting)
 
void update_cone (const std::string &name, const ShaderSetting &shader_setting)
 
void update_frustum (const std::string &name, const ShaderSetting &shader_setting)
 
void update_coord (const std::string &name, const ShaderSetting &shader_setting)
 
void update_wire_icosahedron (const std::string &name, const ShaderSetting &shader_setting)
 
void update_wire_sphere (const std::string &name, const ShaderSetting &shader_setting)
 
void update_wire_cube (const std::string &name, const ShaderSetting &shader_setting)
 
void update_wire_cone (const std::string &name, const ShaderSetting &shader_setting)
 
void update_wire_frustum (const std::string &name, const ShaderSetting &shader_setting)
 

Protected Attributes

std::string context_name
 
Eigen::Vector2i canvas_rect_min
 
Eigen::Vector2i canvas_rect_max
 
std::unique_ptr< guik::GLCanvascanvas
 
guik::ShaderSetting global_shader_setting
 
bool show_window
 
bool draw_xy_grid
 
bool decimal_rendering
 
Eigen::Matrix4f last_projection_view_matrix
 
std::unordered_map< std::string, std::function< bool(const std::string &)> > drawable_filters
 
std::unordered_map< std::string, std::pair< ShaderSetting::Ptr, glk::Drawable::ConstPtr > > drawables
 
std::mutex sub_texts_mutex
 
std::deque< std::string > sub_texts
 
std::unordered_map< std::string, std::function< void()> > sub_ui_callbacks
 

Constructor & Destructor Documentation

◆ LightViewerContext()

guik::LightViewerContext::LightViewerContext ( const std::string &  context_name)

◆ ~LightViewerContext()

virtual guik::LightViewerContext::~LightViewerContext ( )
virtual

Member Function Documentation

◆ append_text()

virtual void guik::LightViewerContext::append_text ( const std::string &  text)
virtual

Reimplemented in guik::LightViewer.

◆ async()

AsyncLightViewerContext guik::LightViewerContext::async ( )

◆ canvas_br()

Eigen::Vector2i guik::LightViewerContext::canvas_br ( ) const
inline

◆ canvas_size()

Eigen::Vector2i guik::LightViewerContext::canvas_size ( ) const
inline

◆ canvas_tl()

Eigen::Vector2i guik::LightViewerContext::canvas_tl ( ) const
inline

◆ clear()

virtual void guik::LightViewerContext::clear ( )
virtual

Reimplemented in guik::LightViewer.

◆ clear_drawable_filters()

void guik::LightViewerContext::clear_drawable_filters ( )

◆ clear_drawables() [1/2]

void guik::LightViewerContext::clear_drawables ( )

◆ clear_drawables() [2/2]

void guik::LightViewerContext::clear_drawables ( const std::function< bool(const std::string &)> &  fn)

◆ clear_partial_rendering()

void guik::LightViewerContext::clear_partial_rendering ( )

◆ clear_text()

virtual void guik::LightViewerContext::clear_text ( )
virtual

Reimplemented in guik::LightViewer.

◆ color_buffer()

const glk::Texture & guik::LightViewerContext::color_buffer ( ) const

◆ depth_buffer()

const glk::Texture & guik::LightViewerContext::depth_buffer ( ) const

◆ disable_partial_rendering()

void guik::LightViewerContext::disable_partial_rendering ( )

◆ disable_xy_grid()

void guik::LightViewerContext::disable_xy_grid ( )
inline

◆ draw_gl()

void guik::LightViewerContext::draw_gl ( )

◆ draw_ui()

void guik::LightViewerContext::draw_ui ( )

◆ dynamic_flag_buffer()

const glk::Texture & guik::LightViewerContext::dynamic_flag_buffer ( ) const

◆ enable_decimal_rendering()

void guik::LightViewerContext::enable_decimal_rendering ( )

◆ enable_info_buffer()

void guik::LightViewerContext::enable_info_buffer ( )

◆ enable_normal_buffer()

void guik::LightViewerContext::enable_normal_buffer ( )

◆ enable_partial_rendering()

void guik::LightViewerContext::enable_partial_rendering ( double  clear_thresh = 1e-6)

◆ enable_xy_grid()

void guik::LightViewerContext::enable_xy_grid ( )
inline

◆ find_drawable()

std::pair< ShaderSetting::Ptr, glk::Drawable::ConstPtr > guik::LightViewerContext::find_drawable ( const std::string &  name)

◆ get_camera_control()

const std::shared_ptr< CameraControl > & guik::LightViewerContext::get_camera_control ( ) const

◆ get_canvas()

guik::GLCanvas & guik::LightViewerContext::get_canvas ( )

◆ get_drawables()

std::unordered_map< std::string, std::pair< ShaderSetting::Ptr, glk::Drawable::ConstPtr > > & guik::LightViewerContext::get_drawables ( )

◆ get_projection_control()

const std::shared_ptr< ProjectionControl > & guik::LightViewerContext::get_projection_control ( ) const

◆ get_screen_effect()

const std::shared_ptr< glk::ScreenEffect > & guik::LightViewerContext::get_screen_effect ( ) const

◆ hide()

void guik::LightViewerContext::hide ( )

◆ info_buffer()

const glk::Texture & guik::LightViewerContext::info_buffer ( ) const

◆ info_buffer_enabled()

bool guik::LightViewerContext::info_buffer_enabled ( ) const

◆ init_canvas()

bool guik::LightViewerContext::init_canvas ( const Eigen::Vector2i &  size)

◆ load_camera_settings()

bool guik::LightViewerContext::load_camera_settings ( const std::string &  path)

◆ lookat() [1/2]

void guik::LightViewerContext::lookat ( const Eigen::Vector3f &  pt)

◆ lookat() [2/2]

template<typename Vector >
void guik::LightViewerContext::lookat ( const Vector &  pt)
inline

◆ normal_buffer()

const glk::Texture & guik::LightViewerContext::normal_buffer ( ) const

◆ normal_buffer_enabled()

bool guik::LightViewerContext::normal_buffer_enabled ( ) const

◆ partial_rendering_enabled()

bool guik::LightViewerContext::partial_rendering_enabled ( ) const

◆ pick_depth()

float guik::LightViewerContext::pick_depth ( const Eigen::Vector2i &  p,
int  window = 2 
) const

◆ pick_info()

Eigen::Vector4i guik::LightViewerContext::pick_info ( const Eigen::Vector2i &  p,
int  window = 2 
) const

◆ pick_point()

std::optional< Eigen::Vector3f > guik::LightViewerContext::pick_point ( int  button = 0,
int  window = 2,
Eigen::Vector4i *  info = nullptr 
) const

◆ projection_matrix()

Eigen::Matrix4f guik::LightViewerContext::projection_matrix ( ) const
inline

◆ read_color_buffer()

std::vector< unsigned char > guik::LightViewerContext::read_color_buffer ( ) const

◆ read_depth_buffer()

std::vector< float > guik::LightViewerContext::read_depth_buffer ( bool  real_scale = true)

◆ register_drawable_filter()

void guik::LightViewerContext::register_drawable_filter ( const std::string &  filter_name,
const std::function< bool(const std::string &)> &  filter = 0 
)

◆ register_ui_callback()

virtual void guik::LightViewerContext::register_ui_callback ( const std::string &  name,
const std::function< void()> &  callback = 0 
)
virtual

Reimplemented in guik::LightViewer.

◆ remove_drawable() [1/2]

void guik::LightViewerContext::remove_drawable ( const std::regex &  regex)

◆ remove_drawable() [2/2]

void guik::LightViewerContext::remove_drawable ( const std::string &  name)

◆ remove_drawable_filter()

void guik::LightViewerContext::remove_drawable_filter ( const std::string &  filter_name)

◆ remove_ui_callback()

void guik::LightViewerContext::remove_ui_callback ( const std::string &  name)

◆ reset_center()

void guik::LightViewerContext::reset_center ( )

◆ save_camera_settings()

bool guik::LightViewerContext::save_camera_settings ( const std::string &  path) const

◆ save_color_buffer()

bool guik::LightViewerContext::save_color_buffer ( const std::string &  filename)

◆ save_depth_buffer()

bool guik::LightViewerContext::save_depth_buffer ( const std::string &  filename,
bool  real_scale = true 
)

◆ set_bg_texture()

void guik::LightViewerContext::set_bg_texture ( const std::shared_ptr< glk::Texture > &  bg_texture)

◆ set_camera_control()

void guik::LightViewerContext::set_camera_control ( const std::shared_ptr< CameraControl > &  camera_control)

◆ set_clear_color()

void guik::LightViewerContext::set_clear_color ( const Eigen::Vector4f &  color)

◆ set_colormap()

void guik::LightViewerContext::set_colormap ( glk::COLORMAP  colormap)

◆ set_draw_xy_grid()

void guik::LightViewerContext::set_draw_xy_grid ( bool  draw_xy_grid)

◆ set_point_shape()

void guik::LightViewerContext::set_point_shape ( float  point_size = 1.0f,
bool  metric = true,
bool  circle = true 
)

◆ set_pos()

void guik::LightViewerContext::set_pos ( const Eigen::Vector2i &  pos,
ImGuiCond  cond = ImGuiCond_FirstUseEver,
ImGuiWindowFlags  = 0 
)

◆ set_projection_control()

void guik::LightViewerContext::set_projection_control ( const std::shared_ptr< ProjectionControl > &  projection_control)

◆ set_rainbow_axis()

void guik::LightViewerContext::set_rainbow_axis ( const Eigen::Vector3f &  axis)

◆ set_rainbow_range()

void guik::LightViewerContext::set_rainbow_range ( const Eigen::Vector2f &  minmax_z)

◆ set_screen_effect()

void guik::LightViewerContext::set_screen_effect ( const std::shared_ptr< glk::ScreenEffect > &  effect)

◆ set_size()

void guik::LightViewerContext::set_size ( const Eigen::Vector2i &  size)

◆ shader_setting() [1/2]

guik::ShaderSetting & guik::LightViewerContext::shader_setting ( )
inline

◆ shader_setting() [2/2]

const guik::ShaderSetting & guik::LightViewerContext::shader_setting ( ) const
inline

◆ show()

void guik::LightViewerContext::show ( )

◆ unproject()

Eigen::Vector3f guik::LightViewerContext::unproject ( const Eigen::Vector2i &  p,
float  depth 
) const

◆ update_cone()

void guik::LightViewerContext::update_cone ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_coord()

void guik::LightViewerContext::update_coord ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_cube()

void guik::LightViewerContext::update_cube ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_drawable()

void guik::LightViewerContext::update_drawable ( const std::string &  name,
const glk::Drawable::ConstPtr drawable,
const ShaderSetting shader_setting = ShaderSetting() 
)

◆ update_frustum()

void guik::LightViewerContext::update_frustum ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_icosahedron()

void guik::LightViewerContext::update_icosahedron ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_normal_dists() [1/2]

template<typename Scalar , int Dim>
void guik::LightViewerContext::update_normal_dists ( const std::string &  name,
const Eigen::Matrix< Scalar, Dim, 1 > *  points,
const Eigen::Matrix< Scalar, Dim, Dim > *  covs,
int  num_points,
float  scale,
const ShaderSetting shader_setting 
)

◆ update_normal_dists() [2/2]

template<typename Scalar , int Dim, typename Alloc1 , typename Alloc2 >
void guik::LightViewerContext::update_normal_dists ( const std::string &  name,
const std::vector< Eigen::Matrix< Scalar, Dim, 1 >, Alloc1 > &  points,
const std::vector< Eigen::Matrix< Scalar, Dim, Dim >, Alloc2 > &  covs,
float  scale,
const ShaderSetting shader_setting 
)

◆ update_points() [1/3]

template<typename Scalar , int Dim>
std::shared_ptr< glk::PointCloudBuffer > guik::LightViewerContext::update_points ( const std::string &  name,
const Eigen::Matrix< Scalar, Dim, 1 > *  points,
int  num_points,
const ShaderSetting shader_setting 
)

◆ update_points() [2/3]

std::shared_ptr< glk::PointCloudBuffer > guik::LightViewerContext::update_points ( const std::string &  name,
const float *  data,
int  stride,
int  num_points,
const ShaderSetting shader_setting 
)

◆ update_points() [3/3]

template<typename Scalar , int Dim, typename Allocator >
std::shared_ptr< glk::PointCloudBuffer > guik::LightViewerContext::update_points ( const std::string &  name,
const std::vector< Eigen::Matrix< Scalar, Dim, 1 >, Allocator > &  points,
const ShaderSetting shader_setting 
)

◆ update_sphere()

void guik::LightViewerContext::update_sphere ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [1/8]

template<typename Scalar , int Dim>
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const Eigen::Matrix< Scalar, Dim, 1 > *  points,
int  num_points,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [2/8]

template<typename ScalarV , int DimV, typename ScalarC , int DimC>
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const Eigen::Matrix< ScalarV, DimV, 1 > *  points,
const Eigen::Matrix< ScalarC, DimC, 1 > *  colors,
int  num_points,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [3/8]

template<typename ScalarV , int DimV, typename ScalarC , int DimC>
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const Eigen::Matrix< ScalarV, DimV, 1 > *  points,
const Eigen::Matrix< ScalarC, DimC, 1 > *  colors,
int  num_points,
const unsigned int *  indices,
int  num_indices,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [4/8]

std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const float *  vertices,
const float *  colors,
int  num_vertices,
const unsigned int *  indices,
int  num_indices,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [5/8]

template<typename Point , typename Alloc >
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const std::vector< Point, Alloc > &  points,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [6/8]

template<typename Point , typename Alloc >
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const std::vector< Point, Alloc > &  points,
const std::vector< unsigned int > &  indices,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [7/8]

template<typename Point , typename AllocP , typename Color , typename AllocC >
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const std::vector< Point, AllocP > &  points,
const std::vector< Color, AllocC > &  colors,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_thin_lines() [8/8]

template<typename Point , typename AllocP , typename Color , typename AllocC >
std::shared_ptr< glk::ThinLines > guik::LightViewerContext::update_thin_lines ( const std::string &  name,
const std::vector< Point, AllocP > &  points,
const std::vector< Color, AllocC > &  colors,
const std::vector< unsigned int > &  indices,
bool  line_strip,
const ShaderSetting shader_setting 
)

◆ update_wire_cone()

void guik::LightViewerContext::update_wire_cone ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_wire_cube()

void guik::LightViewerContext::update_wire_cube ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_wire_frustum()

void guik::LightViewerContext::update_wire_frustum ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_wire_icosahedron()

void guik::LightViewerContext::update_wire_icosahedron ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ update_wire_sphere()

void guik::LightViewerContext::update_wire_sphere ( const std::string &  name,
const ShaderSetting shader_setting 
)

◆ use_arcball_camera_control()

std::shared_ptr< ArcBallCameraControl > guik::LightViewerContext::use_arcball_camera_control ( double  distance = 80.0,
double  theta = 0.0,
double  phi = -60.0f *M_PI/180.0f 
)

◆ use_fps_camera_control()

std::shared_ptr< FPSCameraControl > guik::LightViewerContext::use_fps_camera_control ( double  fovy_deg = 60.0)

◆ use_orbit_camera_control()

std::shared_ptr< OrbitCameraControlXY > guik::LightViewerContext::use_orbit_camera_control ( double  distance = 80.0,
double  theta = 0.0,
double  phi = -60.0f *M_PI/180.0f 
)

◆ use_orbit_camera_control_xz()

std::shared_ptr< OrbitCameraControlXZ > guik::LightViewerContext::use_orbit_camera_control_xz ( double  distance = 80.0,
double  theta = 0.0,
double  phi = 0.0 
)

◆ use_topdown_camera_control()

std::shared_ptr< TopDownCameraControl > guik::LightViewerContext::use_topdown_camera_control ( double  distance = 80.0,
double  theta = 0.0 
)

◆ view_matrix()

Eigen::Matrix4f guik::LightViewerContext::view_matrix ( ) const
inline

Member Data Documentation

◆ canvas

std::unique_ptr<guik::GLCanvas> guik::LightViewerContext::canvas
protected

◆ canvas_rect_max

Eigen::Vector2i guik::LightViewerContext::canvas_rect_max
protected

◆ canvas_rect_min

Eigen::Vector2i guik::LightViewerContext::canvas_rect_min
protected

◆ context_name

std::string guik::LightViewerContext::context_name
protected

◆ decimal_rendering

bool guik::LightViewerContext::decimal_rendering
protected

◆ draw_xy_grid

bool guik::LightViewerContext::draw_xy_grid
protected

◆ drawable_filters

std::unordered_map<std::string, std::function<bool(const std::string&)> > guik::LightViewerContext::drawable_filters
protected

◆ drawables

std::unordered_map<std::string, std::pair<ShaderSetting::Ptr, glk::Drawable::ConstPtr> > guik::LightViewerContext::drawables
protected

◆ global_shader_setting

guik::ShaderSetting guik::LightViewerContext::global_shader_setting
protected

◆ last_projection_view_matrix

Eigen::Matrix4f guik::LightViewerContext::last_projection_view_matrix
protected

◆ show_window

bool guik::LightViewerContext::show_window
protected

◆ sub_texts

std::deque<std::string> guik::LightViewerContext::sub_texts
protected

◆ sub_texts_mutex

std::mutex guik::LightViewerContext::sub_texts_mutex
protected

◆ sub_ui_callbacks

std::unordered_map<std::string, std::function<void()> > guik::LightViewerContext::sub_ui_callbacks
protected

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