Can someone explain the thinking behind the way Rhino is handling offsetting (poly)surfaces?
Offset surface only allows a both sides option with a non solid offset, solid offsetting is confines to a single side.
Actually the set of commandline options change based on the choice for solid or not
There is a shell command that is also an offset surface from my point of view, however it’s not allowed to offset a complete polysurface, I need to select a surface to exclude from the shell…why?
All in all I think offsetting surfaces is poorly implemented, can this get some love please?
Hi Willem - I guess Shell is pretty specific in that it is intended to create a solid from a closed solid. It’s sort of a Solids Modeling thing - to make manufacturable parts. BothSides in OffsetSrf allows, and creates, a solid, here at least on a single surface offset.
To expand on Pascal’s comments based on my, perhaps flawed, understanding of OffsetSrf and Shell.
OffsetSrf will offset a closed polysurface to either side. Problems sometimes occur which need manual cleanup and repair. The result is two closed polysurfaces, one inside the other which are not connected. The interpretation of the the two nested closed polysurfaces will depend on the use. Rhino does not automatically interpret it as solid with thick skin and an internal void though that may be the user’s intent.
Shell gets around the question of how to interpret two nested closed surfaces by creating a hole between the nested surface and then closes the perimeter of the hole. This type of geometry is used in various manufacturing process.
I see how shell could be considered an offset surface solid to one side with the addition of omitting a number of subsurfaces from the input polysurface.
This is true for single surfaces, yet with polysurfaces there is no bothsides and solid option.
In my workflow modeling metal sheet parts, I have both center surfaces and either-side surfaces.
Currently I have no way to offset a center poly-surface to both sides into a solid.
Why?
I do not see how complicated it could be to match up corresponding edges of an offset bothsides and make a solid. Sure there are many cases this will fail (miserably). However that has never been a reason not to let a command through. ( I just got a message from shell it did not produce a solid)
cynicism aside: Please add a bothsides AND solid option for offseting surfaces. It’s not like asking for caustics in rendering, just a basic modeling operation for polysurfaces in 2016.
I would find both sides polysurf offset into solid very useful, too. +1, seems like basic modeling feature, indeed.
Very often I would use offsetmesh with solid/both sides option as a poor man’s version of that but a) surfaces are much more useful and b) offsetmesh produces pretty bad output in terms of consistent thickness that it can’t really be a good workaround to MeshToNurbs it and merge all coplanar faces…
One thing to keep in mind is that offsets of curvy surfaces, except in special cases, tend to be of poorer quality than the original, so typically the workflow is to make the nice surface and offset to the inside/less visible side. Offsetting these types of surfaces in both directions will get you second best on both sides. It may not be what you need it for, but just something to consider - I am just guessing, but that may be one reason this hasn’t been done and is not such a ‘no brainer’.
True, but Rhino is also often used on non-curvy surfaces or on ‘simply’ curved surfaces like cylindrical shapes that OffsetSrf can usually handle well.
Again … … Rhino is also used for things that have not to be pretty, on either side ( e.g. production equipment )
Hehe … I know that Rhino is not intended and developed for these kind of things, but, AFAIK, it’s heavily used for that too.
And I think it would be used even more if improvements like this would make its use faster and simpler for us, ‘heretical users’ …
I like the ‘heretical users’ phrase coined (since something tells me I am one of them, too! )
We should create HereticalRhinoUsers category on this forum. Invitation-only. Illuminati style.
@Emilio said it already, but to reiterate, my point (and main usage) would be for simpler shapes mostly, for architectural use, for elements like polyline-like walls, mullions etc. I know _Slab has now BothSides option, which is great, but often the polysurface is a starting point, and not the curve, to add thickness.
That’s my suspicion honestly! The reality is Rhino is being used in so many various design fields and in so many different ways these days that it goes well beyond the original ‘NURBS modeling for Windows’ theme. So the plan for HereticalRhinoUsers would be a secret take-over of this forum… and the world
I’m fully aware of the possible quality degradation of offset surfaces.
My workflow is such that I model mean surfaces that are to be unrolled later on.
So my pretty surface are the mean/centerline surfaces.
It just feels odd and is frustrating that there is no such a tool to offset a surface solid to both sides.
Also the cluttered commandline with jumping options feels like OffsetSrf needs some love.
There are about 8 items in the commandline that jump around and switch based on the input.
In comparison the GUI for _SetPt… it’s so much easier to use than say _Align
I avoid Align because of the lack of a proper UI, there is too much commandlien clutter and I do not want to have multiple buttons that need to be nested to free screen estate.
If there was a proper GUI instead of a clutterd commandline and a single button would suffice. And in my personal case I’d need no button because I’d type the command.
This is Rhino wide an issue, brought up many times in the past so yes I understand there are limited resources But it would not hurt to have at least some old tools reworked with proper UI’s
Offset surface has been the bane of Rhino since V2. I currently need to add thickness in a precise manner for FFF printing but this function is all but useless…
If anyone out there knows of a software or plug-in that will actually do a good job, please let me know.