I am currently working on a university project, where I am looking to see if I can write a dynamo script that can ‘read’ a framed building in the way that a building compliance officer would, so that there would.
Within one of the images you can see the house that has been modeled. Each of the elements has been correctly labelled; the wall stud is a wall stud; and within Dynamo I am able to find this. BUT how am I able to get dynamo to determine the dimensions (B and D?) and is there anyway of determining the spacing between the wall studs?
I have edited the script several times, but the best that has been made avaliable is the length and the area, with this being incorrect, due to the script looking broadly at the entire structural columns and not just the wall studs in particular.
You need to get the parameter values for the family type. Search the forum for family type parameters. For spacing that depends on how you set up the file. Element.location and intersections along the wall are one option. Share your DYF and RVT and we might be able to come up with more for you.
Agree with above, you need to read the ‘b’ and ‘d’ parameters from your families.
To get spacing, find their location (try Element.Location) and you should be able to determine the spacing from the difference in their X and Y components. So, say if one stud is placed at x = 0 and one at x = 800, you can surmise that they’re 800mm apart (this should remain true providing they’re the same family everywhere. It’s possible to model the origin in different locations on different families so you’d need to be consistent for this to work ubiquitously).
Sadly you’re in a later version of revit than I am so i can’t open the file.
This means I can’t help much on the spacing, but I will give one more bit of input.
The start of your graph is going in a different direction than I would have thought. The way you are starting your end user will have to run the script repeatedly for every family type, and you will have to do some big list management stuff as a result. And what will happen when a family type has a different name than you expected?
I would try starting by getting all of my placed framing elements out of the model as a start point. This example gets all columns - I’m not sure what category your studs are as I can’t open your model (dang backwards compatability issues), but you likely want most if not all of the categories grouped in structural framing.