Extrude Adjacent Closed Curves

I m working on a project that all floor plans are made out of closed polylines.
I would like to ask what is the most efficient to extrude adjacent closed curves without having double surfaces.

extrude_adjacent_shapes.3dm (209.4 KB)

I would use CurveBoolean on the curves first (or a copy of them) to eliminate the overlapping lines and then extrude the result.

Can you please explain how curve boolean can be used for that purpose?
Normally i use this command when i want to delete the internal walls.
However i cannot see how i can use it to eliminate overlapping lines.

With your 4 adjacent rectangle example:

  • Select the 4 rectangles, Explode, leave selected
  • CurveBoolean, options DeleteInput=Used, CombineRegions=Yes, Output=Curves
  • Click somewhere outside the entire figure, Enter
  • You will now have the outer joined border plus the inner lines - some of which are dupes.
  • SelDup>Delete
  • Done

(you can also SelDup>Delete after Explode and before CurveBoolean)

However this is limited to the above case but not for a more irregular arragement.
That’s because of SelDup command step.
For example the following arrangement cannot be extruded in this way.

Yes, there is no way in Rhino to automatically eliminate overlapping lines that are not exact duplicates.

If the input geometry is flat on the Z0 plane, one thing that might get you further is to use Make2D on the figure. The scale should remain correct, although the result will probably be displaced from the original - you can move it back with object snaps. Then explode the result and run CurveBoolean as before.

I think i found a solution that i will need to write a macro for it
Just before SelDup command, i will intersect and then use the intersection points to split all lines
After the SelDup command will be able to find all duplicates.

Yes, there are a number of macroed/scripted solutions possible.