Recently I was asked how to create a Civil 3D surface from a point cloud that was provided in LAS format. Now I know what you might be thinking, easy enough, just create a point cloud in Civil 3D from the LAS and then create the surface from there. Here is the problem, the LAS file provided to me was not a classified point cloud. that means if I try to create a surface from point cloud in Civil 3D, I am going to get all the vegetation, building, cars and whatever other undesirable points that might be in an LAS file included in the surface. Of course, that would create all kinds of spikes and/or valleys in my surface. I started wondering how I could utilize the point cloud without haven't to go through and classify it.
Solution
Since I have access to Cyclone, I decided to play around with importing the LAS files into a new Cyclone database. I ran into a bit of trouble because there were 10 LAS files and technically, no way to register the clouds using targets, visual registration or even GPS points. Since each cloud was created in a coordinate system, I could easily register them together using their coordinates. This provided me with one big point cloud.
With the individual clouds all registered together, we can now think about creating a surface. If you are an experienced Cyclone user, you know that it is possible to create a mesh from the point cloud in Cyclone and XML that mesh out to be imported as a surface in Civil 3D. Since my cloud has a ton of vegetation and large trees, I have found that process to be a little too time consuming. So the workflow I have been using is to create ground points in Cyclone and export those points to Civil 3D as a text file. To do this, I used the workflow below:
First, start by making sure you have the reference plan and coordinate system set properly. I find it helpful to set my coordinate labels to display N, E, El as shown below.
Next, I am sure to set the coordinate system by selecting View>Coordinate System>Reset Scanworld Coordinate System. Select Yes reset it to the home ScanWorld.
Once this is done, I move on to setting the reference plane to the point cloud. Usually it is enough to select Tools>Reference Plane>Set to Easting Northing Plane. If for some reason this doesn't work, select a pick point on the cloud itself and go to Tools>Reference Plane>Set Plane Origin on Pick Point.
Set to Easting Northing Plane:
Set Plane Origin on Pick Point:
NOTE: The above steps aren't always needed, I do them as a precaution to prevent getting warning messages that my reference plane is not in a viewable area.
Now that the setup is complete, all that needs to be done is to create the points. In this case, I don't need to create specific points like EP or CL, I am just interested in creating a surface in Civil 3D as a comparison to traditional survey. Cyclone has a command to create points on a grid. The command can be found under Tools>Points on Grid.
The resulting dialog box has settings to set up the rotation, grid spacing, COGO starting point number and description. Some of these settings will depend on the type of data the cloud has collected so you may need to vary your input from what I am showing in the dialogs below. On the Reference Plane tab, I will often rotate the grid to 0 deg and the Grid Size will depend on how large of an area I need to cover and how detailed I need the data to be.
The Points on Grid tab is where I want to be sure I look at my settings carefully. In this example, I am using the SmartPick Method of Ground Point. This means that a point is created based on the surrounding area of the grid. It also means that the point created may not be a point on the cloud and may be interpolated.
Place a fence around the area where you would like to create a surface (or the whole thing). I can select Place Points to create the points in the Modelspace. I now want to export my points from the modelspace to a text file. To export points, click File>Export and choose the file format (XYZ or TXT work well).
Civil 3D
Create a surface in the normal way and use the point file to add directly to the surface.