I am trying to create organic structures with subd tools. To do so, I’ve flipped the surface and reconnected again to the surface’s opposite side - think of the Mobius strip principle - resulting in normals with opposite directions.
And so when I try “offsetsubd” on the surface to give the structure thickness, naturally, it doesn’t work. Around the areas where normals face opposite directions encounter, the offset creates intersections between the “inside” and “outside” surfaces.
So my question is: would anyone know a way to give this surface thickness without having these intersections? Is it possible to do it from the surface that I have already modelled or should I approach this kind of shape differently from the very beginning?
OffsetSrf on both sides (BothSides=Yes) with the original surfaces as the mid-surface.
Join the offset surfaces into a single surface with two edges.
Note I worked with NURBS surfaces, not SubD but the same approach should work with SubD.
Example: Thick Mobius.3dm (1.9 MB)
When the offset is to the inside of the curvature and the offset distance is greater than the radius of curvature of the offset surface will will crease and self-intersect. How to fix it depends on the design intent. This is distinct from the Mobius issues.
Try splitting your surface into smaller, simpler parts and offseting each part separately. Then you can figure out what to do with the individual parts.
After trying to edit a SubD Moebius strip, I think the safe way to do this is to offset the SubD geometry partially, room after room. And then weld or bridge so you get the Moebius situations.
Thank you. I think I underestimated Rhino. Didn’t think it was capable of accounting for the opposite normal vectors. I did some trials with a simple mobius strip and understood that this is not the case and indeed the problem is the relationship between radius of the curvature and offset distance.
Just to give you something else to think about , I’d suggest going to a voxel model inbetween and then back to SubD like this. I used Grasshopper (GH) and a free plugin called Dendro
Extract the render mesh from the SubD > reference that in GH (I did this already and internalized it in the GH file) > use the verts from the mesh as input for a voxel volume using Dendro > the relationship of voxel size to point radius is fragile so I just experimented until I got a valid mesh at the end > bake that out > use ExtractMeshPart to make sure you only use the outer mesh next (there may be a couple nuggets inside still depending on your settings) > use QuadRemesh to get back to a SubD