Duplicate face border

Hi guys. Is there a command that works just like duplicate face border but that will only duplicate the outside edges of the face ? Currently I will use the dfb with objects with holes in them when I only want the outside edges and so I have to delete the extra curves from the holes.

Yep, DupFaceBorderwill do that. Oh, I see, no holes… nope, not built-in anyway.

ExtractSrf, Copy=Yes, UntrimHoles DupFaceBorder, Delete the face…

here’s a macro:

! ExtractSrf Copy Pause Enter SelLast UntrimHoles DupBorder SelPrev Delete SelLast

Make sure to run-SelPrev (with the dash) and set DeselectOthersBeforeSelect=Yes or the macro will not work right…


hey @pascal, very cool macro indeed :slight_smile: I had to change it slightly to make it work on brep faces:

! ExtractSrf Copy=Yes Pause Enter SelLast UntrimHoles DupBorder SelPrev Delete SelLast

i did not know a command to do it in case surfaces AND polysurfaces like _DupBorder works, but have this funny script: DupOuterLoops.py (2.7 KB)

The script has one option FilterOutput which you can set to OnlyLongest (this is the default) value, or to KeepAll. In case of polysurface objects like the one below.

if there are multiple “outer borders” eg. when one of the outer trim loops is shared between two faces, the script allows to keep only the longest joined outer border, otherwise it duplicates all outer borders. Works for surfaces too, however i did not find a case where a single surface had multiple outer borders… :wink:


Nice! thinking a little further on these lines, I guess it would be extra nice to be able to select multiple faces from a polysurface and have the borders of contiguous faces sorted as you do here. (Rhino.Input.Custom.GetObject() with SubObjectSelect=True)


@pascal, you mean that it allows for subobject (brep-face) selection but still single breps with either one or multiple faces ?


Awesome thanks guys.

@pascal, i´ve done this now and changed the script from above. It works with sub-object (pre)selection and polysurfaces. To access the option, post selection is required…


Yeah, very nice, that is what I was thinking, exactly.