Orange County Choppers visit, Part 2: mesh to NURBS conversion
Jason is a down-to-earth sort of guy, he doesn’t seem to have let the glare of the Discovery Channel spotlight affect him too much. He is pretty high energy, which seems to fit in with the frenetic pace of things at the shop – you just can’t spend a couple of days nitpicking details. Jason seems to also have a lot of natural talent in 3D, and in SolidWorks in general. He has had some informal training from a former SW regional technical manager Chris Salmers, but has had no formal or advanced surfacing training. Still, Jason was able to model a couple of things in SolidWorks that were really impressive, like a spider which he had as a rapid prototype and an amazing aluminum piece described in the first post which Quinn had machined out of aluminum.
Not Jason’s skull, just a Turbosquid sample I used for this demo (displayed inside SolidWorks, imported through the ScanTo3D add-on)
Jason’s design process doesn’t always take him through such an easy path, though. SolidWorks to Mastercam is a pretty clean process, but 3D Studio Max to Mastercam is somewhat less ideal. He showed me an organic (skull-shaped) part that was modeled in Autodesks 3DSmax, a polygonal modeler, and machined in Mastercam. Mastercam can bring in STL and IGES file types, both of which support mesh or cloud data. The finished machined aluminum skull was visibly faceted with a quad mesh (4 sided polygons).
The purpose of this post is to talk a little about migrating data from mesh format (obj, 3ds, etc.) to more manufacturableNURBS data. Its very common to hear of people, like Jason, who want to machine something, but they only have mesh data, and they don’t have a week to convert it by manually recreating surfaces over the top of the mesh.
I started from a free download from Turbosquid. I had to create a login, but otherwise it was free, with plenty of options.
I tried to convert the *.obj data to NURBS using the surface wizard in SolidWorks ScanTo3D, but you could clearly still see the tessellation even though it was somewhat smoothed out. Plus, it created a solid and added some funky geometry inside the skull.
This result is not significantly better than the original mesh data, so I needed to try another method.
Next, I watched the Tsplines youtube video on how to convert mesh to nurbs using Tsplines.
And then I read a little from Deelip’s blog on doing a similar conversion.
And then there are some details you need to know:
- Install Rhino. It’s free for up to 25 saves. You should have this software anyway for use as a translator and converter. Did I mention its powerful and FREE?
- Install Tsplines for Rhino. Its free too for a trial. (You can buy Rhino and Tsplines together for about $1500)
- To get the Object Properties dialog to show up in Rhino, go to the menu, Edit>Object Properties
- The three commands you need to know are:
tsConvert
tsSmoothToggle
tsConvertToRhinoSurf - Type these into the Command line, and you will have to select the mesh in the graphics window, and wait for the command to execute, make sure to hit Enter to execute the command.
I saved out of Rhino as a *.3DM (Rhino open format), and then opened that up in SolidWorks. The result is a surface, not a solid, but you should be able to machine that if you’re careful.
The result of this process is shown below, with the default SolidWorks materials
This is smooth data, and should machine smooth, certainly better than the original meshbrought into Mastercam.
Tsplines seems to like the *.obj data better than the *.3ds. That’s because it works best from quad mesh rather than 3 sided mesh, but I think you can get quads from both formats. Also, the original Turbosquid data had a jawbone and teeth, each represented as an individualmesh. I deleted all the meshes other than the main skull for the purposes of this demo.
Putting NURBS surfaces over scanned data or STL data may be more difficult, unless you can convert the point cloud and triangle facets to quads. The Tsplines video referenced above does discuss these topics somewhat.
All of this is just to say that if your design process takes you through mesh data territory, you can still get where you need to go without a lot of hand polishing, or an hour at the buffing wheel.