How to write an editable "point cloud" application?

I have sonar bathymetry data sets that consist of many (10K +) points (latitude, longitude, depth). I want to write a C++ application to display the data set as a point cloud. The user should have capability to “edit” the cloud, selecting individual or groups of points and erasing or modifying their x/y/z values. Points should be colored according to the data quality associated with it.
How to implement this? I want to display the cloud as individual points, not polygons. Should I display each point as a VtkVoxel? Which Vtk class would I use to group the voxels into a cloud? Does anyone know of a similar Vtk example that I should look at?
All suggestions appreciated. Thanks!

Hello @Tomasso

Have you had a chance to look at LidarView? This is a ParaView based application (hence using VTK under the hood) to visualize and post-process point clouds from (but not limited to) Lidar sensors.

Otherwise, in VTK world, point clouds are usually vtkPolyData where each point is a vertex cell or all points are in a polyvertex cell. You can look at the vtkConvertToPointCloud documentation for examples.


1 Like