Pcl: GUI for pcl::visualizer

Created on 31 Mar 2020  路  6Comments  路  Source: PointCloudLibrary/pcl

I would like to have some simple GUI on top of pcl:visualizer. Basically, I want to have a few buttons, drop-down lists etc.
Are there any examples of doing it? Seems like using Qt is one way. Since Qt seems like an overkill for my needs, I am wondering whether I can use imGui.

Any thoughts/suggestions/examples would be appreciated.
Thanks.

question visualization

Most helpful comment

I found a way to do what I asked by making a renderer (subclass of vtkRenderer) to render the GUI and adding it to vtkRenderWindow of PCLVisualizer using its AddRenderer method.

Hello @victoryc, I am trying to to use imGUI with PCL visualizer as well. Can you please share a working example? Thanks

All 6 comments

Here is an example of using PCLVisualizer with Qt: http://pointclouds.org/documentation/tutorials/qt_colorize_cloud.php#qt-colorize-cloud

I'm not aware of imGui + PCLVisualizer usage.

I figured out a big chunk of what needs to be done to use imGui with PCLVisualizer. I am pretty close. However, I am stuck with the following issue.

As I see in RenderDoc debugger, when PCLVisualizer::spinOnce is called it does the following:

  • Clears the viewport
  • Renders point cloud
  • Clears again (Not sure why; but, that is not my main concern as of now)
  • Renders point cloud again (Not sure why; but, that is not my main concern as of now)
  • Swaps buffers

I would like to render the GUI just before it swaps buffer. Is there a way to do it? Basically, I want to render the GUI in addition to the point cloud. The rendering of the GUI happens by setting up some render state and then calling glDrawElementsBaseVertex. Basically I need a way to do that somewhere between the BeginFrame and EndFrame of PCLVisualizer's rendering.

I found a way to do what I asked by making a renderer (subclass of vtkRenderer) to render the GUI and adding it to vtkRenderWindow of PCLVisualizer using its AddRenderer method.

I found a way to do what I asked by making a renderer (subclass of vtkRenderer) to render the GUI and adding it to vtkRenderWindow of PCLVisualizer using its AddRenderer method.

Hello @victoryc, I am trying to to use imGUI with PCL visualizer as well. Can you please share a working example? Thanks

Hi @victoryc

I am wondering if you can share your changes adding imgui to PCLVisualizer? Thanks!

I found a way to do what I asked by making a renderer (subclass of vtkRenderer) to render the GUI and adding it to vtkRenderWindow of PCLVisualizer using its AddRenderer method.

Hello @victoryc, I am trying to to use imGUI with PCL visualizer as well. Can you please share a working example? Thanks

Same thing! I am really looking to integrate ImGui to PCL. That would be a wonderful addition! Thanks!

Was this page helpful?
0 / 5 - 0 ratings