Open3D (C++ API)
0.18.0+252c867
|
Visualizer with custom key callback capabilities. More...
#include <VisualizerWithKeyCallback.h>
Public Types | |
typedef std::pair< int, std::function< bool(Visualizer *)> > | KeyCallbackPair |
Public Member Functions | |
VisualizerWithKeyCallback () | |
Default Constructor. More... | |
~VisualizerWithKeyCallback () override | |
VisualizerWithKeyCallback (const VisualizerWithKeyCallback &)=delete | |
VisualizerWithKeyCallback & | operator= (const VisualizerWithKeyCallback &)=delete |
void | PrintVisualizerHelp () override |
void | RegisterKeyCallback (int key, std::function< bool(Visualizer *)> callback) |
void | RegisterKeyActionCallback (int key, std::function< bool(Visualizer *, int, int)> callback) |
![]() | |
Visualizer () | |
virtual | ~Visualizer () |
Visualizer (Visualizer &&)=delete | |
Visualizer (const Visualizer &)=delete | |
Visualizer & | operator= (const Visualizer &)=delete |
bool | CreateVisualizerWindow (const std::string &window_name="Open3D", const int width=640, const int height=480, const int left=50, const int top=50, const bool visible=true) |
Function to create a window and initialize GLFW. More... | |
void | DestroyVisualizerWindow () |
Function to destroy a window. More... | |
void | RegisterAnimationCallback (std::function< bool(Visualizer *)> callback_func) |
Function to register a callback function for animation. More... | |
void | Run () |
Function to activate the window. More... | |
void | Close () |
Function to to notify the window to be closed. More... | |
bool | WaitEvents () |
Function to process the event queue and return if the window is closed. More... | |
bool | PollEvents () |
virtual bool | AddGeometry (std::shared_ptr< const geometry::Geometry > geometry_ptr, bool reset_bounding_box=true) |
Function to add geometry to the scene and create corresponding shaders. More... | |
virtual bool | RemoveGeometry (std::shared_ptr< const geometry::Geometry > geometry_ptr, bool reset_bounding_box=true) |
Function to remove geometry from the scene. More... | |
virtual bool | ClearGeometries () |
virtual bool | UpdateGeometry (std::shared_ptr< const geometry::Geometry > geometry_ptr=nullptr) |
Function to update geometry. More... | |
virtual bool | HasGeometry () const |
virtual void | UpdateRender () |
Function to inform render needed to be updated. More... | |
virtual void | SetFullScreen (bool fullscreen) |
Functions to change between fullscreen and windowed modes. More... | |
virtual void | ToggleFullScreen () |
virtual bool | IsFullScreen () |
virtual void | UpdateWindowTitle () |
virtual void | BuildUtilities () |
ViewControl & | GetViewControl () |
Function to retrieve the associated ViewControl. More... | |
RenderOption & | GetRenderOption () |
Function to retrieve the associated RenderOption. More... | |
std::shared_ptr< geometry::Image > | CaptureScreenFloatBuffer (bool do_render=true) |
Function to capture screen and store RGB in a float buffer. More... | |
void | CaptureScreenImage (const std::string &filename="", bool do_render=true) |
Function to capture and save a screen image. More... | |
std::shared_ptr< geometry::Image > | CaptureDepthFloatBuffer (bool do_render=true) |
void | CaptureDepthImage (const std::string &filename="", bool do_render=true, double depth_scale=1000.0) |
void | CaptureDepthPointCloud (const std::string &filename="", bool do_render=true, bool convert_to_world_coordinate=false) |
Function to capture and save local point cloud. More... | |
void | CaptureRenderOption (const std::string &filename="") |
void | ResetViewPoint (bool reset_bounding_box=false) |
Function to reset view point. More... | |
const std::string & | GetWindowName () const |
std::string | GetViewStatus () |
Get the current view status as a json string of ViewTrajectory. More... | |
void | SetViewStatus (const std::string &view_status_str) |
Set the current view status from a json string of ViewTrajectory. More... | |
Protected Member Functions | |
void | KeyPressCallback (GLFWwindow *window, int key, int scancode, int action, int mods) override |
std::string | PrintKeyToString (int key) |
![]() | |
virtual bool | InitOpenGL () |
Function to initialize OpenGL. More... | |
virtual bool | InitViewControl () |
Function to initialize ViewControl. More... | |
virtual bool | InitRenderOption () |
Function to initialize RenderOption. More... | |
virtual void | Render (bool render_screen=false) |
void | CopyViewStatusToClipboard () |
Copy the current view status to clipboard. More... | |
void | CopyViewStatusFromClipboard () |
Apply the view point from clipboard. More... | |
virtual void | WindowRefreshCallback (GLFWwindow *window) |
Callback functions. More... | |
virtual void | WindowResizeCallback (GLFWwindow *window, int w, int h) |
virtual void | MouseMoveCallback (GLFWwindow *window, double x, double y) |
virtual void | MouseScrollCallback (GLFWwindow *window, double x, double y) |
virtual void | MouseButtonCallback (GLFWwindow *window, int button, int action, int mods) |
virtual void | WindowCloseCallback (GLFWwindow *window) |
Function to notify the window to be closed. More... | |
Protected Attributes | |
std::map< int, std::function< bool(Visualizer *)> > | key_to_callback_ |
std::map< int, std::function< bool(Visualizer *, int, int)> > | key_action_to_callback_ |
![]() | |
GLFWwindow * | window_ = NULL |
std::string | window_name_ = "Open3D" |
std::shared_ptr< GLFWContext > | glfw_context_ = nullptr |
Shared GLFW context. More... | |
Eigen::Vector2i | saved_window_size_ = Eigen::Vector2i::Zero() |
Eigen::Vector2i | saved_window_pos_ = Eigen::Vector2i::Zero() |
std::function< bool(Visualizer *)> | animation_callback_func_ = nullptr |
std::function< bool(Visualizer *)> | animation_callback_func_in_loop_ |
MouseControl | mouse_control_ |
bool | is_redraw_required_ = true |
bool | is_initialized_ = false |
GLuint | vao_id_ = 0 |
GLuint | render_fbo_ = 0 |
GLuint | render_rgb_tex_ = 0 |
GLuint | render_depth_stencil_rbo_ = 0 |
std::unique_ptr< ViewControl > | view_control_ptr_ |
std::unique_ptr< RenderOption > | render_option_ptr_ |
std::unordered_set< std::shared_ptr< const geometry::Geometry > > | geometry_ptrs_ |
std::unordered_set< std::shared_ptr< glsl::GeometryRenderer > > | geometry_renderer_ptrs_ |
std::vector< std::shared_ptr< const geometry::Geometry > > | utility_ptrs_ |
std::vector< std::shared_ptr< glsl::GeometryRenderer > > | utility_renderer_ptrs_ |
std::unordered_map< std::shared_ptr< glsl::GeometryRenderer >, RenderOption > | utility_renderer_opts_ |
std::shared_ptr< geometry::TriangleMesh > | coordinate_frame_mesh_ptr_ |
std::shared_ptr< glsl::CoordinateFrameRenderer > | coordinate_frame_mesh_renderer_ptr_ |
Visualizer with custom key callback capabilities.
typedef std::pair<int, std::function<bool(Visualizer *)> > open3d::visualization::VisualizerWithKeyCallback::KeyCallbackPair |
open3d::visualization::VisualizerWithKeyCallback::VisualizerWithKeyCallback | ( | ) |
Default Constructor.
|
override |
|
delete |
|
overrideprotectedvirtual |
Reimplemented from open3d::visualization::Visualizer.
|
delete |
|
protected |
|
overridevirtual |
Reimplemented from open3d::visualization::Visualizer.
void open3d::visualization::VisualizerWithKeyCallback::RegisterKeyActionCallback | ( | int | key, |
std::function< bool(Visualizer *, int, int)> | callback | ||
) |
Register callback function with access to GLFW key actions.
key | GLFW key value, see GLFW key values. |
callback | The callback function. The callback function takes Visualizer * , action and mods as input and returns a boolean indicating UpdateGeometry() needs to be run. The action can be one of GLFW_RELEASE (0), GLFW_PRESS (1) or GLFW_REPEAT (2), see GLFW input interface. The mods specifies the modifier key, see GLFW modifier key. |
void open3d::visualization::VisualizerWithKeyCallback::RegisterKeyCallback | ( | int | key, |
std::function< bool(Visualizer *)> | callback | ||
) |
|
protected |
|
protected |