43 #include <pcl/visualization/common/actor_map.h>
44 #include <pcl/visualization/common/ren_win_interact_map.h>
45 #include <pcl/visualization/keyboard_event.h>
46 #include <pcl/visualization/mouse_event.h>
47 #include <pcl/visualization/point_picking_event.h>
48 #include <pcl/visualization/area_picking_event.h>
49 #include <boost/signals2/signal.hpp>
50 #include <vtkInteractorStyleRubberBandPick.h>
51 #include <vtkRendererCollection.h>
52 #include <vtkRenderWindow.h>
54 class vtkRendererCollection;
55 class vtkLegendScaleActor;
56 class vtkScalarBarActor;
58 class vtkWindowToImageFilter;
63 namespace visualization
158 PCL_DEPRECATED(1, 18,
"this function has no effect")
160 setUseVbos (const
bool use_vbos) { use_vbos_ = use_vbos; }
166 boost::signals2::connection
173 boost::signals2::connection
180 boost::signals2::connection
187 boost::signals2::connection
194 saveScreenshot (
const std::string &file);
200 saveCameraParameters (
const std::string &file);
204 getCameraParameters (
Camera &camera,
int viewport = 0)
const;
210 loadCameraParameters (
const std::string &file);
219 setCameraParameters (
const Eigen::Matrix3f &intrinsics,
const Eigen::Matrix4f &extrinsics,
int viewport = 0);
226 setCameraParameters (
const Camera &camera,
int viewport = 0);
241 return (camera_file_);
254 modifier_ = modifier;
271 int win_height_{0}, win_width_{0};
274 int win_pos_x_{0}, win_pos_y_{0};
277 int max_win_height_{0}, max_win_width_{0};
280 bool use_vbos_{
false};
283 bool grid_enabled_{
false};
288 bool lut_enabled_{
false};
299 boost::signals2::signal<void (const pcl::visualization::MouseEvent&)>
mouse_signal_;
310 OnKeyDown ()
override;
316 OnMouseMove ()
override;
318 OnLeftButtonDown ()
override;
320 OnLeftButtonUp ()
override;
322 OnMiddleButtonDown ()
override;
324 OnMiddleButtonUp ()
override;
326 OnRightButtonDown ()
override;
328 OnRightButtonUp ()
override;
330 OnMouseWheelForward ()
override;
332 OnMouseWheelBackward ()
override;
353 getCameraParameters (
const std::vector<std::string> &camera);
363 bool stereo_anaglyph_mask_default_{
false};
376 bool camera_saved_{
false};
389 std::string lut_actor_id_;
395 updateLookUpTableDisplay (
bool add_lut =
false);
427 void OnKeyDown ()
override;
430 void OnTimer ()
override;
vtkSmartPointer< vtkWindowToImageFilter > wif_
Internal window to image filter.
vtkSmartPointer< vtkRendererCollection > rens_
Collection of vtkRenderers stored internally.
void setKeyboardModifier(const InteractorKeyboardModifier &modifier)
Change the default keyboard modified from ALT to a different special key.
void Initialize()
Initialization routine.
Camera class holds a set of camera parameters together with the window pos/size.
PCL histogram visualizer interactory style class.
void setShapeActorMap(const ShapeActorMapPtr &actors)
Pass a pointer to the shape actor map.
vtkSmartPointer< vtkPNGWriter > snapshot_writer_
A PNG writer for screenshot captures.
shared_ptr< CloudActorMap > CloudActorMapPtr
/brief Class representing 3D point picking events.
InteractorKeyboardModifier
A list of potential keyboard modifiers for pcl::visualization::PCLVisualizerInteractorStyle::PCLVisua...
ShapeActorMapPtr getShapeActorMap()
Get the cloud actor map pointer.
std::map< std::string, RenWinInteract > RenWinInteractMap
boost::signals2::signal< void(const pcl::visualization::KeyboardEvent &)> keyboard_signal_
PCL Visualizer main class.
boost::signals2::signal< void(const pcl::visualization::AreaPickingEvent &)> area_picking_signal_
static PCLHistogramVisualizerInteractorStyle * New()
PCLHistogramVisualizerInteractorStyle()=default
Empty constructor.
vtkSmartPointer< vtkRenderWindow > win_
The render window.
std::string camera_file_
Camera file for camera parameter saving/restoring.
void setRendererCollection(vtkSmartPointer< vtkRendererCollection > &rens)
Pass a set of renderers to the interactor style.
Camera camera_
A pcl::visualization::Camera for camera parameter saving/restoring.
PCLVisualizerInteractorStyle defines an unique, custom VTK based interactory style for PCL Visualizer...
vtkSmartPointer< PointPickingCallback > mouse_callback_
A VTK Mouse Callback object, used for point picking.
boost::signals2::signal< void(const pcl::visualization::PointPickingEvent &)> point_picking_signal_
void setRenderWindow(const vtkSmartPointer< vtkRenderWindow > &win)
Set render window.
/brief Class representing 3D area picking events.
void setCameraFile(const std::string &file)
Set camera file for camera parameter saving/restoring.
std::string getCameraFile() const
Get camera file for camera parameter saving/restoring.
/brief Class representing key hit/release events
pcl::visualization::CloudActorMapPtr CloudActorMapPtr
vtkSmartPointer< vtkScalarBarActor > lut_actor_
Actor for 2D lookup table on screen.
boost::signals2::signal< void(const pcl::visualization::MouseEvent &)> mouse_signal_
void setRenWinInteractMap(const RenWinInteractMap &wins)
Pass a map of render/window/interactors to the interactor style.
shared_ptr< ShapeActorMap > ShapeActorMapPtr
vtkSmartPointer< vtkPointPicker > point_picker_
Stores the point picker when switching to an area picker.
vtkSmartPointer< vtkLegendScaleActor > grid_actor_
Actor for 2D grid on screen.
CloudActorMapPtr getCloudActorMap()
Get the cloud actor map pointer.