Viewing 3D Meshes and Objects along Point Cloud data on the path profile tool

Hello,

I’m hoping someone here might have a solution to a long-standing issue that’s been a bit of a nuisance.

Currently, it seems nearly impossible to view a 3D terrain elevation mesh alongside a point cloud using the path profile tool, or at least, I haven’t found a reliable way to do so. Loading point cloud data works fine, and a single 3D terrain mesh also displays correctly. However, unlike point clouds, you can’t compare two terrain meshes directly to visualize elevation differences.

My workaround has been to convert all 3D model meshes into LiDAR-style point clouds with matching resolutions, which allows for accurate comparison within the path profile tool. This method works, but it's time-consuming. Recently, we ran into a case where we need to compare a 3D model of a finished road surface against two terrains: pre-construction and post-construction.

While converting the terrains to point clouds works well, the road object itself has been much more difficult. I’ve tried generating a higher-density point cloud from the object, but the best result I’ve achieved is getting just the vertex points—not enough for proper comparison.

So my question is:

Is there any way to display multiple 3D objects in the path profile tool? Or Alternatively, is there a method to convert a 3D object into a point cloud with a specified point density, so it can be meaningfully compared against terrain data?

Any suggestions would be greatly appreciated.

Comments

  • Regarding the road issue, we managed to find a barely acceptable workaround. It's far from ideal, but it gets the job done for the current emergency. Here's the procedure in case anyone else runs into this problem:

    Step 1:

    Export the 3D model as LiDAR data. This will give you two sets of LiDAR points: one for the top surface of the model and one for the bottom.

    Step 2:

    Generate a model-accurate terrain boundary. To automate this:

    • Right-click on the LiDAR layer
    • Go to Layer > BBOX Coverages
    • Select the 3D LiDAR object layer
    • When prompted, select NO - Create Polygonal Coverage Areas
    • Move the slider all the way to Rough
    • Check Advanced, and make sure to use Legacy Concave Hull for LiDAR coverage (not doing this causes the software to generate... let’s just say weird and imprecise results)
    • Then click Go

    Step 3:

    You should now have a boundary area that roughly matches the shape of the original rectangular object.

    Create an elevation grid using the LiDAR data:

    • Set the grid method to Binning - Minimum Value (DTM)
    • Use a spacing of 10 cm for sufficient viewing density
    • Set the bounding box to the previously generated boundary
    • Generate the terrain

    Step 4:

    Repeat the same process, but this time use Binning - Maximum Value (DSM) to generate the second terrain.

    Step 5:

    You now have two terrains — one representing the "top" and one the "bottom" of the object.

    Export both terrains as LiDAR elevation data (one at a time).

    Step 6:

    Open the exported LiDAR files and recolor them as needed for visualization.

    Done!

    You can now view the top and bottom of the object, along with both terrains, in the Path Profile Viewer.

    Definitely not an ideal solution, but it works — and at this point, we’ll take what we can get.

    Hopefully, this helps others facing the same issue.

  • Heres a screenshot of how it looks when its done:


    On the cross section you can see terrain one from a photogrammetry mesh converted to point cloud, terrain 2 from a lidar scan, and the various layers of the road 3D model converted to "point cloud model" and how they match against the ground.

    Not the most awesome, elegant or time efficient but I cant argue with the end result