-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Description
Is your feature request related to a problem? Please describe.
It would be great to be able to pick points from a pointcloud (and perform other operations), without blocking your application. When I use VisualizerWithEditing and try to run it non-blocking mode (see code below), it crashes as soon as I pick a point using shift+click (see log below).
Describe the solution you'd like
It would be great to have a fully functional non-blocking VisualizerWithEditing
.
Describe alternatives you've considered
I considered using the 'normal' blocking version of VisualizerWithEditing in a separate thread, but since it would still be blocking on the separate thread, there would be no way to update geometry when things in other parts of the application change, or close the Visualizer when needed.
Additional context
current code
def setup(self):
self.vis = o3d.visualization.VisualizerWithEditing()
self.vis.create_window()
self.vis.add_geometry(self.pcd)
def update(self):
# without the line below visualization works, only crashes after picking a point
# WITH the line below, application freezes with black visualization window
# self.vis.update_geometry(source)
self.vis.poll_events()
self.vis.update_renderer()
crash log
[Open3D INFO] Picked point #142192 (1, 0.18, 3.4) to add in queue.
Segmentation fault: 11