Making SubD G3 surface

I haven’t use Rhino in 15 years but use Blender very often. I picked up Rhino again as I need G3 continuity on a subd object.

I created a subd form in Blender and successfully got it into Rhino and now I need to control the continuity. I have spent 3 hours looking for tutorials on this and have not yet found anything helpful.

Please see file attached

IA0333 A clas surface question.3dm (153.5 KB)

My understanding is SubD in Rhino has G2 continuity because of how the mathematics used for SubD works. It is not possible to use SubD and achieve G3 continuity.

3 Likes

just use Nurbs which Rhino is excellent in, instead of toying around with SubD. that will be a few clicks? hmm 3 minutes? not 3 hours for sure.

If G3 is what you need SubD is not going to get there, unless you spend (waste) another 3 hours of your time trying to subdivide the surface endlessly further till you maybe on a lucky day pass an actual G3 inspection, which to be fair if you are really good and know how to arrange the geometry might actually work.. because anything that can be divided further will eventually converge where you need it but at a high cost for sure.


Is your question a general question or is it just about the shape you posted ?
If it is about the shape you posted - what are further constraints ? for example a certain planar diameter ?
Rhino as a quite limited set of commands that allow G3 with little afford.
for above quite simple form there should be a way to achieve it with rhino.

I agree on that as well.

G3 means “torsion” or “curvature-change” continuity. It is something you can reach with Nurbs/Bezier on matching low-curved surfaces. But its pointless on stronger curved areas. Because on multiple directions, matching on torsion is hard up to impossible.
G3 is affected by the 3rd and 4th control-point and moving them parallel to the edge-to-match breaks the continuity in the other direction quite easily.
You can trick any continuity analysis by moving control-points very close to the edge. Then you reach G3 more easily, but the resulting shape remains garbage. Higher continuity doesn’t mean better. I have worked on real car-exteriors, and even there, smaller corner blends are allowed to be G1. So who needs G3?

4 Likes

The part that I have designed is going to have a mirror finish and while I thought G3 was necessary I am now reading that G2 should be acceptable.

I have modeled with Nurbs in the past but this particular design has some parts which are tricky for me.

Yes - it is that shape I posted.

It has cylinder-like part which then extends downward. I am not sure how to build the Nurbs form that smoothly transitions from one shape to the other. The cylinder-like part needs to be perfectly round (not eliptical).

The tutorials that I have found don’t cover how to make a NURBS form such as this one.

Now that I am thinking G2 may be OK, I am wondering why my form has got some unwanted lumps and bumps. Perhaps it has too many control points?

Interesting point. So the part is going to have a mirror finish. Do you think G2 would be best for me to aim for?

I have some Ngons on the model which seem to be causing some problems with the lack of smoothness.

_zebra and _emap
are your friends to check the surface quality visually.

will it be produced once ? as a piece of art ? by a person you know / by your team ?
what s the process ? will mesh data also be fine ?

your part is 0.122, 0.054, 0.122 millimeters
is this an import error ? or the real size it will be produced ?

Thanks. I’ve started the SubD from scratch with fewer vertices and I think I have nailed it in Blender. I will bring into Rhino to check emap.

It’s for an aluminium die casting. I am thinking of exporting mesh as OBJ, importing into Fusion, converting to BRep and do all the inside design work with Fusion. From their I can export as STEP.

I think it is 1000 x too small. doh!

How will the die be made?

How accurately final part match your design?

For a “mirror” finish the dies after machining and/or the part after casting will need to be buffed/polished which will smooth the surface.

I think a H13 steel tool.

Still waiting to hear about accuracy

g1, g2, g3? The polishing process for your mirror finish will take care of it.

1 Like

Generally speaking yes. G2 is fine, for harder blends G1 is fine.

If you match 2 or more surfaces you won’t get a single continuity value. With a deviation analysis you’ll see that it varies on for each point measured on the given edge.

So you can have a surface being matched with G1, but close to G2. Or a surface matched with G2 close to G3. Or at one end, its G3, on the other G1. And its fine like this.

In the end you need to decide by looking at it. Zebras or highly reflective materials can simulate it. But again, you can perfectly match 2 surfaces with high continuity and still have a weird surface.

You want smooth surfaces either being rectangular or fan-shaped, with equally or continously increasing controlpoints. You want to reduce the cp count to a minimum. You want to reduce spans. In automotive, you often see non-rational Bezier surfaces being used for production models (=unweighted, single-span Nurbs). Even if multi-span surfaces are matched with high continuity internally, these are considered as harder to work with.

In my oppinion, Rhino is not the best CAD for this type of work. But its potentially doable as you find plenty examples in this forums gallery. I have done this work with “Icem Surf” some years ago and I experienced Rhino to be a bit hard to use. Because Rhino, even if its doing it better nowadays, tend to increase the cp count on each operation, while “Icem Surf” or AD Alias are able to approximate the result to the lowest possible CP count.

In any case, this entire topic is not as easy as people think it is. I had to train this type of modelling for months, but I’m also happy that I don’t need to do it anymore. :wink:

And last but not least, as many others pointed out. You can compensate a lot with post-processing the produced model. One reason of the precise modelling in this industry, is to lower the total error. This reduces post-processing for serial production to a minimum.

2 Likes

It’s for an aluminium die casting. I am thinking of exporting mesh as OBJ, importing into Fusion, converting to BRep and do all the inside design work with Fusion. From their I can export as STEP.

You don’t need to import mesh/SubD files into other software — you can do it directly in Rhino.

1 Like

Others will carry the flag for you until retirement. Some have no choice but to do the dirty job :sweat_smile:

1 Like