Problem
Let’s discuss the problem first. In Revit you can join / cut elements by selecting two objects that you want to cut or join. This is a lot of clicking! Especially in a big projects where you need to have a precise material takeoff.
In my case I had floor beams and floor blocks mad out of Porotherm, and on top of there is a layer of concrete poured. Clicking each beam was very tedious, so I created a Dynamo Script that it’s very basic but super efficient.

Tools used
- Revit 2023.1 (it will work easily on other versions as well)
- Dynamo
- Clockwork – Dynamo Package (download it inside Dynamo)
Solution
My main node was created by Clockwork. It’s called Element.CutGeometry and Element.JoinGeometry.
I wanted to manually select the main ‘big’ object like floor in my case. And later select all elements of type that are inside it and needs joining. I also wanted to have the option to select it on the screen, and based on my selection script selects all elements of this type.
Luckily the main Dynamo node figures out which object intersect with the main one, and instead of returning error we will have only ‘false’ on the results.
If you don’t understand any of it please refer to the video below :).

Video tutorial showing how to join / cut all elements at once in Revit
Download Dynamo scripts
Download file from Google Drive
What next?
I think this Revit Dynamo script can be easily modified using some smart list filtering or can be turned into Dynamo Player for the users who get scared of Dynamo 😉 If you have any questions or ideas, please share.