Placing adaptive components between two surfaces (one flat and other curved)

Hello guys,

I need you help with adaptive components, something weird is happening in Dynamo and Revit.

Firstly, what I was trying to create is Laola Linder Baffle ceiling as a new conceptual mass. I created two surfaces that are exactly the same where the bottom one will be used for creating the curved shape of the ceiling. Probably my newbie logic is wrong and that’s why I need your help. Please find attached the files that I’ve been working on. laola_5 laola_5_ Baffle-Ceiling Element-Lindner-Laola

What is wrong with Dynamo is that after I modify the shape of the bottom surface it automatically rotates the UV grid of the surface so the adaptive components get either misplaced or connected to wrong points, and I have no idea why nor what to do. If someone knows the solution or another approach please tell, I am really thankful for your help!



It would be very challenging to create these curves with a just 4 point adaptive component. You’ll have to either increase the number of points in your AC or apply a different approach.

Here’s a quick demo of what you could do with a dynamo-only approach:

Thanks Dimitar!

I have started with 12-point adaptive component but there were some issues in Dynamo so I had to switch to 4-point just to check whether the method works or not. I have literally copied your method and now I am starting to think that the Dynamo has some serious issues with these surfaces.

When both of my surfaces are flat this is how it looks like:

When I elevate a line:

And when only one point is moved:


Is there a way to use this method you used for placing adaptive components instead of Dynamo-only?

You will need to generate a list of sub-lists. Each sublist must have the same number of points as your adaptive component (AC). Furthermore the order of points must be the same as the order of placement for your AC. Try searching the forum for some examples on how to place ACs, there’s quite a few already.

Thanks Dimitar!

I have managed to do it like this and it works fine.