I saw there was a post last november about Potree and point clouds. Although the post was more focused on point clouds in general, which already are supported in Speckle. I was wondering if incorporating potree for its ability to do dynamic loading of point clouds might still be a good idea.
I stumbled over this project which seems to provide a threejs loader for Potree. Maybe Speckle could incorporate that project or copy the relevant parts from it together with a new Octree Geometry type for Point Clouds.
Yes, that’s a good idea! Regarding the “three-loader” project, I’m not sure if it works with the latest version of Potree 2 !? Maybe we can also take inspiration from the new development of potree-core !
In any case, being able to load a Potree “external” link would be great !
Other than potree being a point cloud viewer, how do you see this being a useful addition. What does Potree specifically offer?
Hi Jonathon, I can see potencial in pointclouds besides the viewer. Since pointclouds are (fidelity wise) a replica of the “real world” (not digital twin because they lack strucured data) you can compare a pointlcoud vs model and performe clash, view direct diferences between both (model and as built) but with the improvement in pointcloud classification trhough machine learning you can now create atributtes to those “simple points” and give them meaning and object based search capabilities (it is still in early stages but it will get there). Not only that but typically pointclouds (e57 openformat pointcloud file) as a 360° image panorama embedd in. Image you can view the 3D Model created with Revit, have it compared with the pointcloud and reproject all with the 360° image at the same time? It would give a lot more meaning to the 3D Model and realtime feedback on the As Built. (Again all of this is just an idea)
Regarding the functions of Potree:
- large file viewer (in my case +1TB)
- annotations (points, distance, etc.)
- Height profile (point extraction for calculations and drawings)
- Camera navigation (along a trajectory)
I hope this can give some concrete ideas !?