The History of 3D Scan Based Reverse Engineering – Why All the Focus on NURBS?

By Tom Charron

By some estimates, more than 80% of parts being produced today do not have 3D definition. Or at least the 3D models aren’t in the hands of the people who need the data. A lot of things may not need a complete 3D CAD model, but if you’ve ever wanted to make a design modification to an existing part, you know the value of being able to open it up in your favorite CAD software, make a few tweaks, and call it a day. That’s where reverse engineering via 3D scanning comes in.

For those of you who have gotten a part scanned, chances are you ended up with a mesh file (STL) or NURBS surface model (IGES).  Perhaps you opened the file in your CAD software, and found that it was an uneditable, static model without discreet features. Obviously, a set of surfaces isn’t as useful as a parametric solid that’s driven by a feature tree. But why settle? Why is it that so many reverse engineered parts end up being “dumb” geometry? Let’s take a look at how we got here.

3D scanners have been around for a relatively long time – early commercial systems became available in the mid-90’s. These systems would create dense point clouds of millions of points, which presented a real problem to CAD software (and still do).  Using the point clouds themselves in CAD (or CAM or CAE, etc.) was a non-starter. So specialized software (most notably Imageware) was developed to convert point clouds into something useful in CAD. In these early days of scanning, the equipment was far more expensive and hard to use than it is today, and not as accurate as CMMs for catching prismatic shapes,  so you’d really only use it to measure things that you had no other way of measuring – complex contours and freeform shapes. It was natural, then, that tools like Imageware would focus on converting the complex shapes into NURBS surfaces, which are great at representing non-uniform geometry.

Converting scans to NURBS was a very difficult and time-consuming process with these first generation tools. In the late 90’s a second generation of software came along to address this issue. These tools (lead by Paraform, later Geomagic, and later still, Rapidform) automated this NURBS surface fitting process (but required a perfected mesh). So the focus went on cleaning up and merging all your scans into a single mesh, editing it to remove all holes, noise and flaws, then letting the software automatically or semi-automatically lay down a patch network and fit NURBS surfaces to the mesh.  Over the years, we got pretty good at it. Sure, some scans can’t be surfaced because they are too noisy or have too much missing data, but for the right type of scan and the right downstream need, automatic surfacing has gotten pretty good. But there are still two glaring deficiencies to NURBS models from scan data:

  1. They’re almost impossible to edit in CAD. Changing things like fillets, hole size/position, or anything else ranges from difficult to impossible.
  2. They’re verbatim copies of whatever you’ve scanned. Real world parts are imperfect, and scanners can introduce error. So what you capture isn’t necessarily what you want your design model to be. Sometimes you want a plane to be a plane, or a patterned feature to be regular.

If you think about it, the second generation scan-to-mesh-to-surfaces process isn’t really reverse engineering at all. It’s just shape capture and conversion. That’s what you want if your goal is a faithful digital reproduction (e.g., into CAE, animation, etc.) or a verbatim physical reproduction (e.g., via CAM or rapid prototyping, etc.). But real reverse engineering entails capturing both form and function for an existing part or assembly.

For years, if you needed to really reverse engineer something, you would scan the part, you’d go through all the work of making the clean mesh and/or NURBS model, and then you’d open it in CAD and manually rebuild a new part model over top of the scanned geometry. This technique yields a parametric CAD model, and lets you make design decisions along the way so the part actually functions as originally intended. But it’s a slow, inefficient process. Not only did you still have to do all the work in the specialized scan processing software to make the mesh and surface models, but then you had to wrestle with CAD software that wasn’t meant to design from imperfect real-world geometry.

At Rapidform, we had customers banging their heads against a wall because of this problem, and we decided to do something about it. So we bit the bullet and completely rewrote our software, embedding the Parasolid kernel and creating a hybrid reverse engineering/CAD application to create Rapidform XOR. With the benefit of hindsight, it’s obvious that if you want to build a CAD model from 3D scan data, the right way is to use CAD commands to do it. All the scanning software vendors kept chasing the NURBS surfacing dream, but nobody stopped to think that the vast majority of parts are designed using solid modeling techniques now, so why shouldn’t we reverse engineer the same way?

Don’t get me wrong; NURBS surface fitting is a useful technique for some parts, and many objects call for a combination of fitted surfaces and prismatic features. But so much of what needs to be reverse engineered is better represented by feature-based modeling. Many people wonder why, in 2010, there’s still so much focus on creating “dumb” NURBS models from scan data, when feature-based solid modeling won the CAD wars in the 80’s and 90’s. But now that you know the history, it makes a lot more sense, doesn’t it?

Tom Charron is the COO of Rapidform Inc., the U.S. arm of INUS Technology, makers of Rapidform 3D scanning software. He’s been involved with 3D scanning for 8 years and remembers the days when who could surface best was all that mattered.

===============

If you wish to write about a CAD software product that you use or develop please click the Contribute to Deelip.com link to know how that can be made possible.

  • SanKulPune

    What's the point of the article? That while others concentrate on Nurbs only this company uses CAD commands?

    A two line ad with images would have conveyed the same message.

  • tomc1227

    SanKulPune,

    As Deelip wrote in a post last week (http://www.deelip.com/?p=1582):

    “I am thinking, why not let manufacturers write about the software they develop. End users would then be able to post their questions directly to the manufacturer as opposed to an editor who probably just started using the product”

    This post talks about a big philosophical difference in the world of reverse engineering from 3D scans. I'm clearly in favor of a certain method, but I welcome open debate about it. Hence putting this post up on Deelip's blog and hoping for some spirited conversation.

  • http://www.deelip.com Deelip Menezes

    I wonder if you could do be a small favor. Create and send me a two line ad with images that conveys everything that this article does. Maybe in trying to do so you will appreciate the “point” of this article.

  • http://coffeeofthemonthclub.net/ Coffee of the Month Club

    This engineering looks good.

  • http://www.flickr.com/photos/ashraf349202/show/with/4585126402/ Ashraf349202

    Dear Sir
    I am Ashraf AND I would like to introduce my self to you as a job seeker if you need my help
    I am very very very distinguished in solid geometry ,At primary and secondary school , my records in it was full mark spontaneously without any effort from me in study it is my talent and it is the gift of God for me
    3d modeling is my interest and hobby
    I love to use solidworks software
    so
    If you send me PHOTOGRAPHS OF any PRODUCT and want a 3d solid OF it I can do perfectly for you THAT CAN BE MOVED BY online shopper to see the product details
    Also if you have a 3d model or graphic & want to have A 3d solid of it I can do perfectly for you
    The output format I WOULD PROVIDE are: SOLIDWORKS PART DOCUMENT , SOLIDWORKS ASSEMBLY DOCUMENT , SOLIDWORKS 2D DRAWING OF A PART OR ASSEMBLY DOCUMENT , SLDFTP FILE , X_F FILE , X_B FILE , IGS FILE , STEP FILE ,
    ERR FILE , VDA FILE , WRL FILE , CERTIFICATE TRUST LIST , EPRT FILE , ADOBE ACROBAT DOCUMENT ,
    U3D FILE , 3DXML FILE , PSD FILE , AI FILE , WINDOWS MARKUP FILE , CGR FILE , JPEG IMAGE , HCG FILE , HSF FILE , TIF IMAGE & MAY BE THERE ARE SOME FORMAT I FORGET
    I would like to attach some photo of some of my 3d solids I draw purely in solidworks and I can do more difficult than these . With the help of God
    http://www.flickr.com/photos/ashraf349202/show/with/4585126402/
    P.S I AM EGYPTIAN LIVE IN UPPER EGYPT I WANT TO WORK FROM HOME
    God bless you
    thank you
    Ashraf
    ashraf349202@yahoo.com

  • Pingback: : Open3DCapture

  • Pingback: Introductions | Phasica




Archives

© 2014 Deelip.com. All Rights Reserved. Deelip.com is a registered trademark of Deelip Menezes. Log in - Designed by Gabfire Themes