Align MEP families to different Ceilings in Linked model


I want to Allign MEP families (in my case - Air Terminals) to Linked Arch model when the model changes. I managed to use your helps on the forum to list the heights of the suspended ceilings as well as all the Air Terminals that I want to align (I filtered the Air Terminals which is hosted to ceiling).

Does anyone know how to complete the script?

Thank you…


This looks good & you are very close! You just need to work out which elements are in which room. If this sound daunting, I suggest starting of with a POC, and looking at one room and only the air terminals in that room.

After that it’s just a case of ending the script with a set parameter node.

Thank you Daniel, do you have any solution how I can do that?

One option is to find all the air terminals and ceilings within each “room”, and then find the heights of those ceilings. This will give you grouped results that can be matched together.

Alternatively, you can use an example by Sean fruin, where he uses dynamo lines from the air terminal up to the ceiling, and where it intersects the ceiling, it will provide the height and respective ceiling element

I am running into a similar issue as Milos although I believe I may be utilizing the dynamo lines intersection method that you mentioned danielU. I believe that the script is close to 99% as when I substitute a constant value for the variable Offset_= under the “//Get Offset from Hosted Level” section the script runs and moves all the air terminals to that value. The generated lines are also visible in Revit when I run the script so I know they are being created successfully. It seems to me that the issue is somewhere with either a) the ceiling intersection point not being properly created or b) the intersection point not being read as the variable Offset_=. Can anyone shed any light on where the issue might be?

The inputs are all elements of categories Air Terminals, Ceilings, and Levels.

1 Like

The image below is a section view from Revit showing the created dynamo line.