Stretch/morph Dynamo solids to fit a new shape?

Hello! I have a dynamo script that is creating a square panel/screen that’s made up of numerous extruded circles. I’ve applying this to a grid that includes a curve on one side, so along that curved edge, the grid becomes radial and the “squares” become more trapezoidal. I’m curious to know if there is any way to morph a Dynamo solid from one shape to another, in this case from a square to a trapezoid? Some screenshots below to hopefully illustrate better what I’m trying to achieve.

I’ve also attached the .dyn that is creating the panel…if anyone has suggestions for how I can modify this .dyn to achieve what I want, it would be hugely appreciated! I know ideally this should be an adaptive component, but I’m not sure how to make that possible.


Transform Square to Trapezoid.dyn (44.6 KB)

Thanks in advance!

It might be tricky to transform the surfaces. You might want to start by transforming the underlying curves and then rebuild the surfaces from the result.

If you split the curves into points and map the resulting points to the extents as parameters, you can then apply the same parameters to a new set of extents:

5 Likes

Thanks Dimitar, this is pretty much exactly what I’m trying to do! Would you mind sharing the .dyn? It’s hard to see what nodes you’re using and what is in the code blocks.

This was a quick proof of concept, you’ll have to clean it up and make it work with multiple extents:

RemapCurves.dyn (11.1 KB)

1 Like