Precast Concrete Bench

I know this looks like the last images I posted yesterday but there are some improvements. Perhaps not worth the effort if this design changes much…?

  1. I nudged the rail curve to be slightly longer at each end (half the extrusions thickness) to keep the wrap end caps from overlapping the main sweep (which still uses your original rail curve).

  2. I explored several versions of an idea to align the end extrusions differently. The radial pattern used before had the same angle between all the radial extrusions, which didn’t look quite right to my eye because of irregular bench edges in top view.

I tried four different ways to get an edge curve that is divided evenly to create vectors from the rail ends to the those points, used for aligning planes for the radial extrusions (frames).

  • Intersecting a plane surface with the lofted end caps, variable in Z.
  • Projecting the lofted end caps to the XY plane.
  • The Mesh Shadow component using the lofted end caps.
  • Make 2D from the lofted end caps, which is what you see in this image.

.All have problems. While the curve from Make 2D is good, I was amazed and disgusted by how incredibly difficult that component is to use :exclamation: Wow, what a pain!! I finally found something here, which I adapted, but it wasn’t easy at all:

That part of the code to get just two curves (the “shadow” of the bench ends) looks like this:

WHAT A PAIN!!! Insane. And the Make 2D component requires pushing a button if anything upstream of it changes, because it’s slow I guess. Extremely disappointing. :cry:

Oh, and the pSDiff components are fragile so can easily fail. I finally changed my Rhino units ‘Absolute Tolerance’ to 0.0001, which seems to help. I’ll post the code at some point but would like to find another alternative to the absurd Make 2D component.

On second thought, I’ll post this code now since the bench design could easily change.
Bench_2023Sep6c.gh (60.6 KB)

P.S. The white group has a bunch of unused components for the first method I tried (Intersecting a plane surface with the lofted end caps, variable in Z.), ending at the List Item component in a yellow group, that is no longer connected to the Divide Curve component next to it. It was replaced by the Make 2D stuff at the bottom.