Extrude a surface vertically downwards?

I currently have a simple Polysurface created in Dynamo.

What I want to do is extrude this surface vertically downwards in the z direction to create a solid.
I know there is the Surface.Thicken node but that is thickening the surface at a normal to each of the surfaces faces which is not what I want (top screenshot below)

The only other method I could think of was to offset the surface vertically downwards, but then I cant find a way to connect up the two surfaces into a solid.

I know you can do this by extruding a curve (bottom screenshot below), but can you do something similar starting with a surface?

Well, you can try using Geometry.Translate and Solid.ByLoft.

That doesn’t work. The Solid.ByLoft node expects an array of curves to be provided as an input.
If I do the Geometry.Translate on the surface, it means I am passing it a list of surface objects, and it doesn’t work (I get the error Warning: One or more of the input types are not matching. Couldn’t find a version of ByLoft that takes arguments of type (__array))

Yep, you’ll need in addition Surface.PerimeterCurves and Polycurve.ByJoinedCurves to create the loft.

This is one way to achieve what you want.

5 Likes

That worked :slightly_smiling_face:
Thanks!