Request: Improved Shell/OffsetSrf

Prior to switching to Rhino I used an ACIS modeler. There are just two areas where the ACIS modeler was a vastly better than Rhino.

  1. The Make2D equivalent
  2. Shelling

I have addressed the Make2D complaints elsewhere. With the ACIS modeler I never saw any discrepancy between the 3D and 2D versions.

I never encountered a case where ACIS failed to shell a solid unless the offset was too great (e.g. trying to shell a 2-inch DIA pipe to 2-inches).

Here is an example of a fairly simple shape where shell fails:

Problem Shell.3dm (3.1 MB)

It appears to me that the approach taken to Shell and OffsetSrf is fundamentally flawed.

A possible alternative to creating solids from surfaces might be a WELD command that performed the kind of functionality suggested by the name. For simple case, imagine four rectangular surfaces arranged to form a tube with a square cross section. If I do offsetsrf on the four surfaces outwards and try to join the resulting solid, I will have four non-manifold edges. With my WELD command, the corner gap gets filled so I have a good solid.

Fortunately, my list of major gripe with Rhino is short while it was long with ACIS.

Here is an illustrative example. I have a six planar sided closed surface. If I try to shell (1") this I get a bad surface a non-solid. I can then manually pluck out the bad surface and patch this up (as shown at the right) but this seems to be the kind of thing that should cause shelling no problem

Problem (39.4 KB)

Yep, that certainly ought to work…
RH-62037 Shell: simple case, not solid


If you make the vertical faces’ u directions all point right around the solid and the v directions point consistently up then it shells.

Here is another offsetsrf/shell that fails. Try offsetsrf inward to 3/8" or cap and shell to 3/8".

Problem (99.5 KB)

In trying to find a work around to the problem above, I noticed this weirdness.Problem (167.9 KB)

Here I have the base shape in red and the extension in purple. Both are open poly surfaces. Red is open at the top and bottom. Purple is just the surface shown. Red has not being trimmed to fit purple as in the previous post. I

Then I do an offsetsrf -3/8". I would expect that this would just create new surfaces but notices that the red–purple intersection has changed.

Why would that be happening?

When a question is asked about why a change occurs when a command is used it is very helpful if both the before and after geometry are provided in a .3dm file (no need to use a .zip file).

Where is the original surface? Are you offsetting the red surface towards the the inside, the outside, or both> The edge of the purple surface is in the middleofthe red solid.

Without knowing the answers to the questions above it appears that the change in intersection location is caused by the geometry, nothing else.

Update: Assuming the input geometry was the geometry in the earlier file then you offset the red surface to both sides. That is the reason for the change in intersection.

You are correct. The problem is both sides. The check box was hidden. Chalk this one up to user error.