Nurbs to high quality quad polygons

I have an FBX nurb model and I need to convert it to quad polygons. How do I do this? All I know is the obvious: a quad has four sides. I found a plug-in called Weaverbird but it has no instructions.

Some workaround is to export from Rhino to .3ds or .obj and open in Blender. There is a tool to convert triangles to quads - though not 100% guaranteed.
See this thread:

Hi Bfackrell

I suggest you to try the lab tools QuadMesh, this plug for Rhino 4 and Rhino 5 32 bit,
Pls follow below url for details
http://wiki.mcneel.com/labs/quadmesh

How is this different from the QuadrangulateMesh command?
–Mitch

The QuadrangulateMesh can not convert all triangles to quads.

OK, so the QuadMesh plug-in can? If this was a labs plug-in for V4, why didn’t this useful feature make it into V5? In any case it won’t run in V5/64…
–Mitch

1 Like

The QuadMesh plug-in just converts a triangle face into several quadrangle faces. The result is like the mesh on the right in the attached image. This is not what users really ask for. Most users think it’s not that useful. I think this is the reason that this plug-in has not been added to Rhino 5.

There was an interesting discussion at the old newsgroup, where some of us asked for a quad mesher and Holger Jahns sent a very good description of the state of the art of quad meshes.
Take a look at his post:

"We see that come up a lot - quad mesher. Can you elucidate exactly why this would be a good thing?

In this discussion one should distinguish between pseudo Quad Meshers and true Quad Meshers.
Software like Moments of Inspriration and also the Npower-Plugin for Modo use Pseudo Quad Meshes.
It’s a post process on render meshes which fills patches with evenly spaced Quads and just sews the
Surface borders differently. Ngons are used to avoid looking at triangles, edges at surface-seams have
some vertices in between, that’s the whole trick.
That’s nice to look at and it might renderers to come along with fewer polygons, especially on relatively simple Geometry.
Some are quite fond of the results - I add a sample screenshot from MoI.

This sort of mesh however does not provide the advantages of what commonly gets referred to as a
Quad Mesh, that’s really something totally different. Such meshess are loop based and Catmull Clark subdividable.

There’s some Mesh and Voxel-based programs which have algorythms built in to automatically create meshes of
this kind on top of unordered Hi-Res-Meshes with arbitrary topology. Results typically get better when the user defines
Guidelines for the Edge Flow on top of that Hi Res mesh. Implementations are based on papers like this one for instant.
I already sent this stuff to Dale Lear years ago.

The underlying motivation for such a Retopo process is that one wants to texture these models and would like to create
an UV-Map with a very Low Res version of that mesh. Working on Low Res geometry for UV’s has amazing advantages,
I would say it’s the key for usable output. This Low Res Geometry can also easily get animated (think of timeline scrubbing)
and it can be sent to renderers with an adequate density which can get adjusted ad libidum.

Having a quad remesher similar to the 3DCoat or Zbrush implentation in Rhino would be the foundation for any UV-work
which makes sense. I wished you would trust me here!
One could send adaptable polyloads to render engines. Displacement-Rendering in all engines would work a lot better.
With Rhino one currently can not displace from a Subdivision Optimized Base mesh, all engines have to fail without pre-subdivision.

Tsplines and Clayoo could harvest the quad mesh and would allow for quick topology transformations also on polysurfaces with
trimmed surfaces - something which currently severely limits the usefulness of both products.
Further anybody could send Rhino Geometry to Subdibvision Surface applications, completely loss free.

Interestingly Rhino should have way better start-conditions for establishing such a quad meshing postprocess as in Zbrush or 3DCoat:
These Mesh and Voxel products have no accurate reference geometry at disposal. Rhino when remeshing could use the underlying Nurbs
geometry.
Rhino’s Meshes could get arbitrarily accurate, when reprojecting them with high SubD ratios against the underlying Nurbs.
Zbrush is already freakin awesome in this - but all they have to offer is their finite precision Hi Res mesh…

The other great advantage is that Rhino geometry already comes with topology guides - the surface seams and isocurvesl.
A good quad mesh would typically not follow the patch layout of the Nurbs polysurface, but an considerable amount of Surface Edges
and isocurves could help a Quad remesher understand what mesh flow was desirable in a particular case.

I hope that explains some of the usefulness of Quad Meshes.

cheers, Holger"

Is the workaround that Cadmaster describes the only option for a Rhino 5 user? I don’t like the odds of success… Is it possible to manually build a quad? Though that might not be an option since I have over 100K surfaces.

Just to refresh the idea that a quadmesher from nurbs (subD friendly) would be very, very nice to have in Rhino6. nPower products for Max have this feature and for some work it is absolutely essential. I have an old copy of 3D Max 5.3 and Power Translator which I keep around on an old machine just for the purpose of quadmeshing a nurbs object which is SubD friendly. I would so like to have everything needed for my work up to current standards.

The nPower pluggins had this great feature 10 years ago…cutting edge back then and I guess still cutting edge today. This would be such an asset to have in Rhino 6.

4 Likes

I have been experimenting with a conformal mesher . For some classes of surfaces it works really nicely

if you have not found a solution let me know and we can figure out how to test my little code…

@davee62 I’m interested in testing your code, I haven’t heard about a new solution inside rhino.

Hi ,

This has been written for my CFD code. If you want to share with me either a test geometry and some details on what sort of mesh qualities are important etc I would gladly take a look at it further

Thanks

David

David, the main idea I think we are looking for is a mesher that can create quads meshes from trimmed surfaces, with fillets or any kind of transitions. The goal is getting a mesh that can then be useful in Sub-D technics, so the flow of polygons and topology needs to respect the most it can the original structure of the surfaces.
I found interesting how this program deals with transitions between surfaces. http://www.groboto.com/
I think that the camera model that you can find at rhino tutorials could be a tricky example model to test your code and share results.

Thanks,

I will take a look at the example this week. I am an old school guy , conformal maps and all that. So will see how it works out

Thanks

David

Groboto is an interesting tool. Their display mesh booleans have poor-quality topology, but when you bake the results you can get some decent all-quad layouts.

ZBrush, Mudbox, and 3DCoat all have automatic mesh->quad mesh conversions that have pretty good quality.

If you’re looking at converting back into Nurbs via t-splines or some other subd -> nurbs converter, then one common problem is that these algorithms tend to not pay enough attention to the number of star points. Even if the model is all quads, if it has a lot of star points the nurbs conversion will not be very nice.

To @bfackrell 's original question, I think right now it’s probably simpler to model the shapes you’re interested in with subd/mesh tools and techniques, rather than using nurbs tools and trying to convert after the fact. Maya, silo, modo, blender, or t-splines (in rhino or in fusion) might be good places to start. I am somewhat biased towards t-splines, being on the dev team. ; )