Element Binding - rhythm tools

I know this topic has been talked about many many times, but I’d like to point at specific thing that I found in other topics to be recommended solution to element binding which I found out that it doesn’t work.

Im talking these 2 bad boys

Rhythm package ToggleElementBinder and PurgeBindings.

Scenario is known - I’m shooting out some Sheets, elementbinding rhythm tools are set as shown above and these sheets still are bound :frowning:

Do you guys know some more robust form of controlling element binding, or is going into notepad digging into code and deleting these binding lines is the only 100% way?

Yeah, they are a hit or miss, unfortunately. I have found that even with those nodes you have to close your Dynamo graph and reopen it :unamused:

I have actually been thinking of removing them as they don’t work how I hoped.

1 Like

Oh hi! Given the opportunity - thanks for the amazing package!

Yes in the end I did manage to produce all sheets I wanted (3 separate sets of 50-120 sheets) but it involved a weird combination of deleting the node that produces sheets and placing it back, closing and reopening .dyn file and just trial and error, which all took me about 30 minutes but it isn’t ideal.
I think also saving the .dyn might break what these Rhythm toggles do

For now imma stick to just checking bindings in notepad before running things, but i’m keeping topic open if anyone wants to chime in

1 Like

Thanks for the kind words! :blush:

The other option is to run this graph through Dynamo player because that does not use Element Binding.


You can also use function passing to create the sheets, as this circumvents the capacity for binding entirely in the Revit environment. It can be difficult to describe how to do this without he context of the larger graph, but generally omit one input so the node stops executing, and outputs a Function object. This object can then be passed into a Function.Apply node or a List.Map node (depending on the data structure you’re using), and the input which you removed can then be pushed into arg1 input or the list input. The previous element creating node will run, and bindings will not be introduced.

A few caveats:

  • This will also suppress any warnings; even ones like “hey we couldn’t make those sheets because there was already a sheet with that name” or whatever. Things will always look perfect, but your graph will not always run perfect. As such you’ll have to review the results (manually or via data validation) more carefully
  • This is much slower than just using the nodes as normal, so expect a bit more lag when using it.
1 Like

Woah, I didn’t realize that suppressed binding too.

I have a video covering using functions to suppress warnings, maybe that helps?

1 Like