I have a project where the design team came up with the roof design where two roof planes fold upward. Normally, I can use "roof by footprint" to create the roof. It is possible to do it but it can be tedious sometimes especially for those two end piece of the roof that folds upward. Since we are still studying the shape and want to explore with different roof pitch to get the best form. Trying to model the roof planes work together could be a time sink.
The team wanted to know if there is another way to do this more efficiently; so I thought I could make a mass family of the roof shape, set up a couple of parameters and we are in business!
Start making a mass family, I first lay out some reference points where I need to connect with model lines later. Once the points are set, create dimensions and set up parameters associated with those points.
Next, I use spline through points to create linear model lines (I later convert them into reference lines in the properties) and get all the points connected.
I then select the reference lines and click "Create Form"; the forms are just surfaces that I need to use it to generate the roof once the mass family is loaded into the project.
Flex the family a few times to make sure the form follows with the parameters. One last thing I did before I loaded to the project was to add the formula to tie the "Height" parameter with the parameter "Roof Pitch". All that is done, it is good to go.
Load it to the project, offset it above the walls; I can use create "Roof by Face" to make these folding planes as a roof.
Since I made the mass family parametric, both the width and length are instance parameters, I can freely adjust the overall size of the roof form by pulling the shape handle. The nice thing about using mass family is that once the shape of the mass is changed, I can use "Update to Face" option to get the roof shape follows the new form as if I have a parametric roof family.
I can use the same mass family to generate the roof for multiple buildings in this project.