Go to the documentation of this file.
29 #include <unordered_map>
39 namespace visualization {
40 class SelectionPolygon;
41 class PointCloudPicker;
56 bool AddGeometry(std::shared_ptr<const geometry::Geometry> geometry_ptr,
57 bool reset_bounding_box =
true)
override;
58 bool UpdateGeometry(std::shared_ptr<const geometry::Geometry> geometry_ptr =
64 std::vector<int>
PickPoints(
double x,
double y,
double w,
double h);
103 std::shared_ptr<const geometry::Geometry> geometry);
107 std::shared_ptr<glsl::SelectionPolygonRenderer>
115 std::shared_ptr<glsl::PointCloudPickerRenderer>
float drag_depth_
Definition: VisualizerWithVertexSelection.h:112
~VisualizerWithVertexSelection() override
Definition: VisualizerWithVertexSelection.h:49
SelectionMode
Definition: VisualizerWithVertexSelection.h:45
DragType
Definition: VisualizerWithVertexSelection.h:100
void UpdateWindowTitle() override
Definition: VisualizerWithVertexSelection.cpp:262
void RegisterSelectionMovingCallback(std::function< void()> f)
Definition: VisualizerWithVertexSelection.cpp:448
std::shared_ptr< geometry::PointCloud > ui_selected_points_geometry_ptr_
Definition: VisualizerWithVertexSelection.h:128
void AddPickedPoints(const std::vector< int > indices)
Definition: VisualizerWithVertexSelection.cpp:704
std::unordered_map< int, Eigen::Vector3d > selected_points_
Definition: VisualizerWithVertexSelection.h:126
std::shared_ptr< geometry::PointCloud > ui_points_geometry_ptr_
Definition: VisualizerWithVertexSelection.h:123
void PrintVisualizerHelp() override
Definition: VisualizerWithVertexSelection.cpp:242
void MouseMoveCallback(GLFWwindow *window, double x, double y) override
Definition: VisualizerWithVertexSelection.cpp:546
std::function< void()> on_selection_changed_
Definition: VisualizerWithVertexSelection.h:131
Definition: RenderOption.h:36
void KeyPressCallback(GLFWwindow *window, int key, int scancode, int action, int mods) override
Definition: VisualizerWithVertexSelection.cpp:465
void SetPointSize(double size)
Definition: VisualizerWithVertexSelection.cpp:817
std::shared_ptr< glsl::SelectionPolygonRenderer > selection_polygon_renderer_ptr_
Definition: VisualizerWithVertexSelection.h:108
void InvalidatePicking()
Definition: VisualizerWithVertexSelection.cpp:686
std::function< void()> on_selection_moving_
Definition: VisualizerWithVertexSelection.h:132
int index
Definition: VisualizerWithVertexSelection.h:67
void InvalidateSelectionPolygon()
Definition: VisualizerWithVertexSelection.cpp:677
void WindowResizeCallback(GLFWwindow *window, int w, int h) override
Definition: VisualizerWithVertexSelection.cpp:458
std::vector< int > points_in_rect_
Definition: VisualizerWithVertexSelection.h:111
const char const char value recording_handle imu_sample void
Definition: K4aPlugin.cpp:255
VisualizerWithVertexSelection()
Definition: VisualizerWithVertexSelection.h:48
std::vector< PickedPoint > GetPickedPoints() const
Definition: VisualizerWithVertexSelection.cpp:421
void MouseScrollCallback(GLFWwindow *window, double x, double y) override
Definition: VisualizerWithVertexSelection.cpp:583
RenderOption pick_point_opts_
Definition: VisualizerWithVertexSelection.h:121
std::shared_ptr< PointCloudPicker > pointcloud_picker_ptr_
Definition: VisualizerWithVertexSelection.h:114
std::shared_ptr< glsl::PointCloudPickerRenderer > pointcloud_picker_renderer_ptr_
Definition: VisualizerWithVertexSelection.h:116
SelectionMode selection_mode_
Definition: VisualizerWithVertexSelection.h:109
void RemovePickedPoints(const std::vector< int > indices)
Definition: VisualizerWithVertexSelection.cpp:727
std::function< void()> on_selection_moved_
Definition: VisualizerWithVertexSelection.h:133
int size
Definition: FilePCD.cpp:56
Definition: VisualizerWithVertexSelection.h:43
void RegisterSelectionMovedCallback(std::function< void()> f)
Definition: VisualizerWithVertexSelection.cpp:453
@ DRAG_MOVING
Definition: VisualizerWithVertexSelection.h:100
void DragSelectedPoints(const Eigen::Vector3d &delta, DragType type)
Definition: VisualizerWithVertexSelection.cpp:745
bool AddGeometry(std::shared_ptr< const geometry::Geometry > geometry_ptr, bool reset_bounding_box=true) override
Definition: VisualizerWithVertexSelection.cpp:98
std::shared_ptr< SelectionPolygon > selection_polygon_ptr_
Definition: VisualizerWithVertexSelection.h:106
std::vector< int > PickPoints(double x, double y, double w, double h)
Definition: VisualizerWithVertexSelection.cpp:347
void RegisterSelectionChangedCallback(std::function< void()> f)
Definition: VisualizerWithVertexSelection.cpp:443
bool InitViewControl() override
Function to initialize ViewControl.
Definition: VisualizerWithVertexSelection.cpp:430
Eigen::Vector3d CalcDragDelta(int winX, int winY)
Definition: VisualizerWithVertexSelection.cpp:803
bool UpdateGeometry(std::shared_ptr< const geometry::Geometry > geometry_ptr=nullptr) override
Definition: VisualizerWithVertexSelection.cpp:173
Definition: VisualizerWithVertexSelection.h:66
char type
Definition: FilePCD.cpp:57
std::shared_ptr< const geometry::Geometry > geometry_ptr_
Definition: VisualizerWithVertexSelection.h:118
std::shared_ptr< glsl::GeometryRenderer > ui_points_renderer_ptr_
Definition: VisualizerWithVertexSelection.h:124
VisualizerWithVertexSelection & operator=(const VisualizerWithVertexSelection &)=delete
std::shared_ptr< glsl::GeometryRenderer > geometry_renderer_ptr_
Definition: VisualizerWithVertexSelection.h:119
Eigen::Vector3d coord
Definition: VisualizerWithVertexSelection.h:68
void ClearPickedPoints()
Definition: VisualizerWithVertexSelection.cpp:693
Eigen::Vector2d mouse_down_pos_
Definition: VisualizerWithVertexSelection.h:110
std::shared_ptr< glsl::GeometryRenderer > ui_selected_points_renderer_ptr_
Definition: VisualizerWithVertexSelection.h:129
Definition: PinholeCameraIntrinsic.cpp:34
VisualizerWithVertexSelection(const VisualizerWithVertexSelection &)=delete
void BuildUtilities() override
Definition: VisualizerWithVertexSelection.cpp:270
@ DRAG_END
Definition: VisualizerWithVertexSelection.h:100
float GetDepth(int winX, int winY)
Definition: VisualizerWithVertexSelection.cpp:307
Definition: Visualizer.h:56
std::unordered_map< int, Eigen::Vector3d > selected_points_before_drag_
Definition: VisualizerWithVertexSelection.h:127
const std::vector< Eigen::Vector3d > * GetGeometryPoints(std::shared_ptr< const geometry::Geometry > geometry)
Definition: VisualizerWithVertexSelection.cpp:765
void MouseButtonCallback(GLFWwindow *window, int button, int action, int mods) override
Definition: VisualizerWithVertexSelection.cpp:589
bool InitRenderOption() override
Function to initialize RenderOption.
Definition: VisualizerWithVertexSelection.cpp:437