What Can I Do With 3.25 Million Points?

Last week, Dana presented a very informative webcast on surface modeling and TIN theory.  Personally, I’ve been building TINs now for almost 15 years and still learned a lot while watching her perform her magic. In two weeks, I plan on presenting what Mark and I have dubbed “Surfaces, Episode 1 – The Phantom Mesh.” This webcast will explore how to get the initial surface created in Civil 3D, and will showcase one of Engineered Efficiency’s solutions offering, VRMesh. This post isn’t really a plug for the webcast, even though we love when you sign up.  This is an effort to explain exactly how VRMesh can help you, especially if you are working with very large point files. Follow the link to find out more.

While attending Autodesk University 2007, I managed to actually sit in on two classes in passing – one was Dana’s Stormwater Management class, which we dropped in on while returning from the EE booth. The other was a class presented by Dan Philbrick, Nick Zeeben, and Ray Sirios called “Optimize the Performance of AutoCAD Civil 3D.” In that class, Dan showed a program briefly that I had never seen before, and it raised my interest just a bit. Not enough to actually figure out the name of the software, just enough to say “hey, that’s cool.” Once I got back home and grew some new brain cells, I remembered the presentation and emailed Dan asking the name of the software – it was VRMesh. I downloaded a demo of the software (30 days, I believe) and played with it for about two hours, then moved on to other tasks, not remembering it again until the demo had run out. Mark jogged my mind about this when he announced that we were now an authorized VirtualGrid reseller.

So what does VRMesh do?  From the VRMesh product overview page:


VRMesh is an advanced free-form 3d mesh modeling software for arbitrary triangle mesh creation and processing. Our innovative technologies are aimed to provide powerful, easy, and affordable solutions for engineering industries. The entire family of VRMesh consists of three packages targeted to different customers.

VRMesh Family:

  • VRMesh Studio: A comprehensive point cloud processing, and mesh modeling environment for industry users requiring engineering tools and design communication in one package.
  • VRMesh Reverse: A complete reverse engineering workflow for users to wrap point cloud data into an accurate meshed model.
  • VRMesh Design: An ideal solution for STL repair, and conceptual design.

Why Choose VRMesh:

  • Automatically create accurate models from scan data of physical parts.
  • A powerful and comprehensive toolset for mesh healing and editing.
  • Speed up the transition from sketches to model.
  • Complete organic details and solids.
  • Entire inspection and measurement solution.
  • Handle large dataset by using Level-of-Detail display.
  • A high-level and easy-to-use application tool.
  • Features like those found only in products costing 10 to 40 times more.

Cutting Edge Technologies:

  • Complete point cloud processing tools.
  • Global point clouds/meshes registration.
  • Triangulating point clouds to meshes automatically and accurately.
  • Advanced hole filling techniques.
  • Feature-preserving global/local remesh smoothing and decimation.
  • Advanced mesh-editing techniques, e.g., glue, fillet, knife, boolean.
  • Sketch-based modeling techniques.
  • Digital clay working directly on arbitrary triangle meshes.

The program that we focus on is VRMesh Studio. You might not see where this can be helpful to you, but if you work with LiDAR files or point clouds and Civil 3D, this is a pretty important tool for you – and here’s why:

First, my computer specs.  My laptop has a 2.4 GHz Core 2 Duo CPU, 4GB of RAM, an 80GB 7200 RPM hard drive, and ATI Mobility Radeon HD 2300 video card with 256MB of video RAM running in Direct3D mode on Windows Vista Business with the /3GB switch being used.

I have a LiDAR file that contains 3.25 million points. Since I was playing with VRMesh yesterday, I decided to import those points and time the import process. From clicking OK to full point display took a mere 26 seconds. For the sake of comparison, I tried the same process in Civil 3D 2009 and had to manually kill the process at the one hour mark because the only thing that was happening was a steadily growing memory usage in Task Manager. I knew it was either kill it or it would commit suicide, so it went away. An hour is too damn long to wait on point import, anyway.

So I backed up and punted. The whole reason for me to import the points is to build a surface, right? But I know that there is a command to reference an external point file with a Civil 3D surface, so I did that. The resulting surface was built in just over 8 minutes and contained 6,469,815 triangles. I was only displaying the border of the surface, and was too scared to change that to a display that I could, uhhh, USE. So I went back over to VRMesh to see how it could help me.

What you see below is a small sample area of the LiDAR points in VRMesh. You can definitely see relief, and see what’s happening with the points.  That’s a LOT of points.


What I want to use VRMesh for is called Point Decimation. If I get rid of some points, then that would help me build a smaller surface. However, I don’t want to arbitrarily cut points out of my file, because I am not going through 3.25 million points to try and figure out which points are RELEVANT to the surface. That’s right, some points may be just a little redundant in the grand scheme of things. So let’s get rid of them – which is what VRMesh does. It uses an algorithm that I couldn’t even begin to fathom to INTELLIGENTLY decimate the points. The decimation process took 2 minutes 52 seconds to complete, and here is the result of the process:


Notice that the points aren’t quite so uniform now? Any point redundant to the surface definition is deleted, which will make for a much smaller surface that still has an acceptable level of accuracy.

The results?  The initial 91MB text file was reduced to 18MB. The resulting surface took a speedy 54 seconds to be created (still displaying the border) and had a neat 847,981 triangles. Displaying contours at a 1′ interval took less than 10 seconds.

Using LiDAR data? Want to see more about VRMesh? Sign up for next Wednesday’s webcast. Want information on pricing or more information about the software? Email marc.meyers@eng-eff.com or call him at (866) 760-8724.

Hope to see you on the 25th!


  1. Matt Kolberg says:

    To anyone wanting to watch this, I have used it before and it is ESSENTIAL

  2. Matt Kolberg says:

    To continue
    It is ESSENTIAL to the LiDAR process to perform this kind of edit to the raw data. One way or another, your data provider or you must do this to make the surface workable in Civil 3D.

    Anyway, that’s my opinion.

  3. Garnet Dawes says:

    Hey this VRmesh seems interesting, I’ll be downloading the trial version for sure,

    Do you people have any experience querying the data with Microsoft Access, as a more hands on approach?

    I’ve used it to reduce 5M point Lidar clouds to 500K, while maintaining contour integrety.

    Do you know how VRmesh decides which points to remove?