Create elements relationship in revit/ Autoupdate elements in revit,

Hallo Everyone!

I am new to the forum.
I am working a project in which i have to create 3 walls parallel to each other(Each wall type is divided into 3 subwall types.) eg Wall01 is 8 layers. We divided them into the Wall01Core, Wall01Internal and Wall01External. we don’t want to work with parts, its giving us alot of issues.

I created a line based family for each wall type and with dynamo i create a 3 parallel walls from each line based family.

I saw some plugins like Agacad Woodframe plugin in which they draw a wall frame from the wall in Revit. When the wall is updated, they click an update button and the frame adjusts it self to the modified wall.

Can someone please explain how they are doing it? What is the workflow for that? if i want to create a same functionality in dynamo or pyrevit?
I know, i have to get the elements id of these elements but can someone please explain how can i make a relationship between these ids? i want to create this functionality for almost all of my dynamo scripts. if the input changes i want the elements to update accordingly.

In my case, if i update the line, i want the walls to update also. if i delete the line i want the walls to delete also. if i add new lines, iw ant them to create new walls only for the new lines that i have added.

Thanks

They are most likely creating a Revit add-in using C. This allows for rapid event driven interaction with Revit. But since you mention, they have to click a button, they are just collecting the wall and using the location line to draw other elements. My guess is they put some info on the wall to say
This wall is done." or “This wall needs to be updated.”

A more robust solution would be to use Revit’s events to trigger the application.

Within Python (pyRevit) you can create an IUpdater. This will do much the same thing. When a change is noted, the program is fired. You would add your IUpaters to the startup.py in your extension so it loads when Revit loads. The add-in in C .Net is probably faster preforming than python, but I have no stats on that. I run a number of python IUpdaters on our system.

…and in my opinion, Daynamo is not the way to go with this.