Stubborn Corner

Hi Bobi - you can ask the thing not to trim. You can set the radius by using the nested Radius command and selecting an edge from an existing fillet surface that you want to match.

-Pascal

1 Like

I just tried that, but the radius of the adjacent surfaces is 5,1715729 millimeters and Rhino creates a spherical patch which sits inside the main model. :slight_smile:
However, if I measure the distance between two of the opposite sharp edges instead of their radius, then it gets the proper number. The problem with this approach is that it gets the proper radius only if the adjacent surfaces are at 90 degrees to each other.

I’d do everything I could to avoid surfacing a section like that. A simple change in topology, job done.

3 Likes

can you briefly explain your steps to get to this result?

Also much better from a designers perspective.
The six-way-corner with all edges filleted with the same radius is ugly.

Sometimes, it can’t be avoided due to technical limitations like: lack of space, design intent etc. Also, some architectural projects purposely use this kind of six-way corner to create a better visual appearance on the entire building. It’s often used on some products designs with a similar pattern, as well.

One roof panel that I had to design (check the 4th second here: Filling 6-sided holes in Rhino (tutorial 1) - YouTube ) also included similar six-way corner, but it was mostly because I was limited by a very tight space. There was a rubber sealing that had to lay directly on top of one of the surfaces, while a door locking mechanism filled the space below. Some of its parts were just 2 mm away from the walls of that “pocket” of the roof panel. I was happy that these parts were able to fit inside at all. So, yes, it would be easier and quicker for me to just avoid a surface transition like this one, but it’s not always possible. :slight_smile:

2 Likes

In an earlier post @Tom_P already showed how to fill such 6-sided holes with free-form surfaces where keeping exact radius is not mandatory. Here is a quick video tutorial showing that approach, as well as the Rhino 7 file:

6-sided corner 4.3dm (727.9 KB)

1 Like

Of course, that is a different design.

-Pascal

here is another approach, i did it a few days ago for fun.
it was just to see what level of surface quality i could get with rhino only.

this approach is not really useful for small corners that are not visible or are hidden from the eye.

but if I assume that these surfaces will be part of a large area in a reflective consumer object.
that will be the approach that I apply.

I changed the nets by fusion surfaces in G2
to obtain the right continuity on the rest of the geometry
CORNER 6 SID COMPLEX.3dm (11.2 MB)

1 Like

it is doable with this method, but the approach will be a little different from what you showed in your video

since in the file shared here the 6 edges are not homogeneous.

I did it that way too.
I got a slightly better result than vsr. but with a lot of time to adjust the points.
I do not recommend this approach. unless the edges are a little homogeneous

I generally avoid using G1 continuity in my work, because I simply prefer the smooth reflections and can’t stand looking at anything that resembles G1. :smiley: The approach I showed in my last video is a quick way to accomplish something usable, though not perfect. To make it perfect, it would require too much extra time and multiple repeats of the surface matching.
Alias, for example, could achieve perfect surface transitions while using the exact same approach for less than a minute, because it has an advanced matching engine with active history that preserves and auto-adjusts several surface edges simultaneously. Unlike it, Rhino’s History only preserves one surface edge at a time and any manual editing of the same surface often results into some crazy deformations due to the history being confused what to do. :slight_smile:

By the way, very nice job on your G2 sample! :slight_smile:
I agree with you that sometimes Rhino’s own tools are better than what VSR could achieve. This is why several years ago when I was using Rhino 5 I rarely used VSR due to its wrong reading of the edge continuity. For example, when I used VSR’s automatic surface matching tool, the Zebra analysis clearly showed some deviation. But when I used “Move UVN” to improve the visual flow of the zebra stripes, then VSR’s analysis tools showed some “mathematical” deviation, even though the stripes were excellent.
Rhino’s “Match surface” is still a bit behind that of Alias, which is the reason for it to be unable to create fully perfect transitions. Have you tried “Match surface” with an angle such like 0,01 degrees or 0,001 degrees? My default setting is 0,1 degrees and sometimes I bump it to 0,01 mm if the former can’t achieve good enough result. what bugs me is that even at such strict setting “Match surface” is still not perfect and I manually improve the curvature with the “Move UVN” tool.
This is what the Zebra and Curvature analysis showed when I checked your model. The Zebra is excellent in the other direction. My opinion is that if you optimize the upper surface a bit more, it would help achieve a respectable transition between the rest ones next to and and ultimately that could look like something created in Alias. :slight_smile:

I played a bit with the “Move UVN” tool and “Match surface” on the aforementioned upper blend surface and here is a quick example of how it looks like after the modifications. It has a pink material instead of blue. You can check the surface with “Zebra analysis” with vertical stripes from the same camera angle as you see it when you open the file.

CORNER 6 SID COMPLEX.3dm (12.1 MB)

I only changed the aspect ratio (called “acceleration” in some programs) of the control points that define the curvature continuity. This is a tricky area, because the long G2 input surfaces at either end of the intermediate blend surface go into opposite directions.

1 Like

by the way, I did not break my head too much to make these surfaces.

the problem of torsion comes mainly from the arrangement of the input patches.
they could be corrected. but this necessitates the modification of neighboring surfaces,
or use the EndBulge command

I don’t use the tolerance options in the matchesrf command.
since I often work with single-span surfaces only.
the activation of these boxes will generate the addition of nodes, which will destroy the tropology of the primary surfaces.
I avoid doing it at all costs.

by the way, i would like to say that these options are only useful if you are working on multispan surfaces.
(since rhino needs to add knots to approximate uniform and nonuniform edges)

1 Like

Yes, it’s the invested time versus end result which is always difficult to justify for models or areas of models that are not as important. :slight_smile: This is why for projects that are very limited in time I prefer to break the Class-A surfacing rule and just use brute force, such like adding a few extra control points here and there or using the “Refine match” option of the ! _MatchSrf command. Otherwise, I would be forced to split a surface into two surfaces with Degree 5 and spend a lot of time to try to make them blend perfectly.

By the way, Alias lets you automatically split a surface into two or multiple surfaces with Degree 5 wherever the program “decides” is necessary, while also preserving the G2 continuity across all of them and the adjacent surfaces. This is why it’s so easy to achieve clean surfacing in Alias with several surfaces aligned to each other, but Rhino is still not mature enough on this particular path of modeling. Also, both Alias and ICEM could match a surface edge onto two target surfaces, whereas Rhino 7 for the moment is limited to just one target surface.
I have seen videos with alias modelers solve a similar classic case with a 6-sided hole by using an advanced history that will work simultaneously on all 6 surfaces that fill the hole, while Rhino’s History is limited to keep track on the the last surface edge only. For example, if you activate History and match one end of a surface between two adjacent surfaces, and then match its opposite end of the same surface, the History for the former will get broken.

Don’t get me wrong, I LOVE Rhino and its universal usability. And I don’t want to bash it for being less advanced than the other two programs specifically made for advanced Class-A surface modeling. I just try to explain why sometimes things are much slower and even impossible with Rhino, so in the end most Rhino modelers choose to use alternative non-Class-A solutions to save time rather than spending couple of hours on a 5- or 6-sided hole between surfaces. I’m pretty sure that long-time Alias and ICEM modelers would feel like rookies while trying to do Class-A surfacing in Rhino. :slight_smile: VSR for Rhino 5 was a step forward in the right direction and I would love to see native Rhino tools do a similar job in the future.

3 Likes

For those who don’t mind some small deviation and don’t want to spend too much time, there is a very quick way to build a relatively easy patch surface to fill the 6-sided gap:
6-sided corner 6.3dm (609.9 KB)

1 Like

what do you mean by this? I assume you are referring to something else then the ‘chainedges’ option in Matchsrf where you can select edges of multiple surfaces?

I meant the “OnSurface” option that you can opt for from the Command line when you run the “Match surface” command. :slight_smile: It lets you match a surface edge onto a target surface, instead of target edge(s). The problem is that currently only one target surface is allowed in Rhino, while other programs are capable of matching a surface edge onto multiple surfaces.

2 Likes