Feature Request: Plating Command



I would like to see a command in Rhino that allows one to create plating for a polysrf. In other words, this would a command to reliably add thickness to a polysrf.

A possible solution might be to have a WELD command where one could do OFFSETSRF multiple surfaces, then join them together.


You can already offset polysurfaces. However, the key word here is “reliable”. Offsetting arbitrary NURBS polysurface configurations is difficult to get right - it works reasonably well with simple stuff in Rhino, but not with more complex situations. This is on the perpetual wishlist to improve. Depending on your need, creating a mesh and using OffsetMesh may work better (or not).

(David Cockey) #3

@bigjimslade “Weld” already has a meaning in Rhino relating to meshes. https://docs.mcneel.com/rhino/6/help/en-us/index.htm#commands/weld.htm?Highlight=weld My guess is that isn’t what you want.

Do you mean “weld” as in the result of shipyard workers welding plates together? If so keep in mind that the fine details of the welding such as the arrangement and order of welds where multiple plates meet at one point historically were not worked out when ship plans were drawn. Instead the skilled, experienced welders were expected to know how to handle the variety of situations which would arise. Do you want Rhino to have an algorithm which replicates the welders knowledge and experirence?


In the simple case, let’s say I have two rectangular planar surfaces that share an edge at an angle. If one does an offset surface on both towards the obtuse angle side, there will be a v-shaped groove between the two resulting polysurface. A weld command would then fill the groove and join the two polysurfaces.

(Michael Pryor) #5

For me the simple case you describe works by setting the OffsetSrf commands corner type to sharp.

(David Cockey) #6

Same for me with Rhino for Windows V5 and V6.

@bigjimslade Are you offsetting several individual surfaces, or a polysuface? OffsetSrf when used on a polysurface already extends and trims surfaces with Corner=Sharp and creates fillets between the offset surfaces with Corner=Round.


Join them first, then do the offset with solid=yes. In this case it will also be good to do a MergeAllFaces afterwards.

(David Cockey) #8

An example where OffsetSrf on a polysurface partially fails: OffsetSrf ExDC1.3dm (91.3 KB) I also Offset each surface separately and then extended, intersected, extended the intersections and trimmed the surfaces. (This example was created using the Rhino for Windows V7 WIP but I expect V6 to produce the same results.)

Problems typically arise where the base poly-surface has where 4 or more surfaces which intersect at a single point. The offset surfaces may not intersect at a single point so the trimming becomes complicated. (2 surfaces when offset always intersect in a line, and 3 surfaces when offset always intersect in a single point.)


I can easily come up with a simple set of polysurfaces that, when joined and offset, produce bizarre, counterintuitive results with offsetsrf (round or sharp edges). Apparently offsetsrf does not take into account the full range of edges that should be aligned.

It would be great to have a better offsetsrf. If not, another solution would be something that functions like a weld. One does the offsetsrf on individual surfaces then “welds” them together.

Another situation where such a comment might be useful is where following the plans creates a nonmanifold edge. Let’s say you have 4’x4’ rectangle with the corners filleted at 6". Now extrude that 3/8" to create a plate with rounded corners. Now the plans say to wrap a 3/4" bar around. If you do that with rhino you get a nonmanifold edge. But the weld command would fill in the gap between the bar and the plate.

I posted a file containing this one previously. With sharp corners the top center edges will not line up. With round corners the side edges to not line up.

This is just 4 planar surfaces at angles. Try an entire ship hull—good luck.

(David Cockey) #10

@bigjimslade For a given configuration of surfaces your proposed “weld” tool would require exactly the same logic as making the current Corner=Sharp work with OffsetSrf when used on polysurfaces. Also investigate ConnectSrf.

(David Cockey) #11

@bigjimslade In your example with four surfaces the offset surfaces do not intersect at a single point as the original surfaces do. That is how the geometry works, not a failing of Rhino.

(David Cockey) #12

Individual offset surfaces from the example I posted above. How to extend and trim to create a single polysurface is not initially obvious, at least not to me. OffsetSrf ExDC2.3dm (109.7 KB)


I am puzzled by that. Here I have taken the same four surfaces. Instead of offsetsrf together I have done offsetsrf on each one separately.

Here is what happens after doing a boolean union and mergefaces:

The edges are aligned perfectly. Exactly what I would hope for (if I done offsetsrf on joined surfaces).

If I join the surfaces and try to offset them together, the result is misaligned.

So why not just do them separately?

It works with acute angles but with obtuse angles there is a gap as here running vertically down the center.

(David Cockey) #14

@bigjimslade Can you post a .3dm file with your geometry and results?