How to transform an imported 3D scan into a Rhino Object?


#1

Hi There. I have scans from objects in STL format. The objects appear the Rhino window, but I can’t really work with them. Is there a way to mesh them? I ultimately need to modify a few curves and them send them to CNC to make a mold… Thank you for any help you can porvide


#2

I see two methods.
Work with the Mesh scan and the mesh functions in Rhino

or transform to Nurbs (MeshToNurbs) and export afterwards to stl again.

Andreas


#3

In my experience, I can recommend to isolate the surface mesh to be modified with the command “subdivide mesh” . At this point the curves generated using the “curve interpolation points” and snap properly activated. Alternatively, I propose to work directly on the mesh so that after generating NURBS curves and surfaces, you can see the difference with the surface mesh. the command “MeshToNurbs” only works for small parts and is usually unnecessary for complex parts. to make this work so efficient with Rhino, would use T Splines (which exists only for the Windows version).


#4

“Subdivide mesh” is not a native Rhino command… --Mitch


#5

I apologize, I did the translation from my language (Italian) )


#6

Ah, that translates as MeshSplit… Depending on the complexity of the mesh that can work but can also sometimes fail.

Another thing that can be done if you want to divide up the mesh along some distinct creases is to Unweld everything (angle 0°) then Weld the mesh at some specific angle (like 45°). If you then use Explode, the mesh will divide itself at crease angles greater than the weld angle. You can then work on individual pieces.

–Mitch


#7

Thank you for the suggestions. I fear none will work. It seems part of the problem is that the STL file I open shows the shape of the object (a fin), but has no points, no lines, no curves, nothing…. I can select it and the Gumball appears at its geometrical center, but what I need to do is somehow map the shape of this object with a workable surface…
Thanks again


#8

That is correct. There will be no points, no lines, no curves. The object is a polygon mesh.

As has been said above, the only real way to work with it is by using the mesh methods available in Rhino - or another mesh editing program. You can try to reverse engineer the mesh into a NURBS surface object, by cutting appropriate sections through the object, rebuilding/editing the resulting curves and then using Rhino’s normal surface creation tools like Loft and Sweep to make a surface based object.

HTH, --Mitch


#9

Thanks Mitch. When I got your message I was playing with Drape. The idea would be to drape both surfaces of the object and then stitch the two surfaces (sides) obtained via drape. I would end up with a sort of 3D copy of the original object.
With your experience, do you think it may work?


#10

It could work. Keep in mind that Drape projects onto the object from the view direction, so the “resolution” on surfaces nearing vertical will not be very good. The other problem will be after having trimmed the upper and lower draped surfaces, you will not really be able to match them to each other, because you can only match untrimmed edges. So maybe you will need to leave some clean gaps and then fill in the sides with BlendSrf surfaces.

However, from the image you posted, I think I would first try creating sections(vertically) through the fin - which should create a series of closed polylines - then rebuild them all with the same number of points and loft through the sections. You will probably need to do some point editing etc. for the fin end. I don’t know what the other end looks like.

–Mitch


#11

Well, I just read the links you sent, with the Rhino Reverse Engineer pdf, and it seems there is no easy path…
Anyway thank you very much: your advices are very helpful
Fabien


#12

Correct! Sometimes “easiest” and “fastest” path is to just roll up your sleeves and start drawing, using the scan data as an underlay layer you snap new construction elements to, as well as to shade both the scan and new surfaces.

Under most circumstances, if the scan and new surface appear reasonably coincident, you’ll be good. Probably a better more workable surface too.


#13

If I had to work with scanned data, I’d take a serious look at Mesh2Surface. Of course, being on a Mac is a problem when it comes to plug-in use.


#14

Looks promising. Has mesh2surface performed well for you?


#15

I’ve only tried it as a demo. I don’t really work with scanned data much and when I have, it’s been very organic/character based where Mesh2Surface wouldn’t really work. For the right type of work or scanned data, it appears to work very well.


#16

“Contour” down the foil span at small spacings, split the curves into top and bottom (surfaces of the wing), “rebuild” the curves then loft through them (top and bottom separately) and “join” will be the quickest way to reverse engineer a wing. Note that the trailing edge will need to have some thickness to be cuttable and buildable.


#17

Thank you !


#18

Have you tried MeshToNURB? That’s usually how I’ve taken STL objects and converted them into something I could manipulate.


(John Brock) #19

http://wiki.mcneel.com/rhino/meshtonurb

The MeshToNurb Command:
Summary: Much controversy and many support calls have arisen over the years concerning this command. This article will attempt to explain some of the workings of this useful but often misunderstood function and hopefully promote a more informed usage.


(David Cockey) #20

Another method (simple version):
Extract vertices using ExtractPt
Use Patch to create a surface through the extracted points.

(complex version if mesh is not extremely dense)
Extract vertices using ExtractPt
Create boundary and possibly a few curves with IntrpCrv
Create an initial starting surface using the created curves.
Use Patch with initial starting surface to create a surface through the extracted points.

(complex version if the mesh is extremely dense).
Use Contour to create one or more sets of curves through the mesh which capture the shape of the mesh.
Create boundary and possibly a few curves with IntrpCrv
Create an initial starting surface using the created curves.
Use Patch with initial starting surface to create a surface through the curves from Contour.