PROJECT2-ARCH 653
OBJECTIVE
The objective of this project is to
learn and use the visual programming in BIM, Revit Dynamo is used as the visual
programming software for this project. In this project2, we were to extend the
functionality and creativity of the parametric BIM using Dynamo. For a project
with complex geometry Dynamo keeps track of every element and geometry and
makes it easy to control the parameters in the modeling interface.
For this
final project I chose to design/model new building which is Rock and Roll Hall
of Fame instead of extending the midterm project. I have created the mass model
of this project. I have set parameters to the model and developed a parametric
model which works in the Revit. Later, I also developed code for changing these
parameters of model in Dynamo and ran the code which was successful.
The
additional capabilities I tried to develop in this project using Dynamo are to
change the thickness of the panels, color of the panels and change the size of
the openings in the panel along with the colors. I have also used a different
mass model other than the building to show these changes.
DYNAMO CODE FOR PARAMETRIC CHANGES
I have created the parametric model
of the building and loaded it into another family so that the parameters can be
seen in the properties window then only they can be used in the Dynamo code.
Fig. Mass Model
We
should select the model element and it is linked to the node elemnt set
parameters with the parameters names used in the revit and their dimensions are
changed by using integer slider node. By changing the value of the dimensions in
the Dynamo code we can observe the changesin the Revit model.
CREATING CURTAIN PANEL
I have created two different panels
rectangle and octagonal. The octagonal panel is plain and has a thickness of 2
feet named as thickness of panel and the two different rectangular panels are
created one is plain with thickness of 2 feet and other panel is created with
the circular void in the center with a radius of 3 feet which is named as the “radius of
void”. Different radius values of radius are given in the dynamo code which can
be changed along with the panel color change.
Fig. Rectangular panel with circular void
Fig. octagonal panel
DYNAMO CODE PANELS
Dynamo helps the users to build Revit
models without the use of learning Revit API it also help to track and control
the model information of Revit this helps the Revit users to reduce the work
flow and learning curve. Dynamo is a recent tool and it has undergone various
changes in each upgraded version. The dynamo code has lot of nodes which are
sequentially connected to one another. One should know the function of each and
every node and their order of connecting which makes this process difficult and
also due to the upgrading of tool every time node names differ. This problem
can be considered as the backlog for the usage of dynamo tool.
DYNAMO CODE USED FOR THE PROJECT:
Fig. Code for changing the panel colors
In the first code only the color of
the panel is changed along with the material. The main parts of this code is to
select dived surface and select different materials with color variation and
for randomizing the colors for different panel excel sheet is used
Fig. divided surface node
The ‘select
divided surface families’ node helps to select the divided surfaces of the
model from the Revit Environment. By connecting a watch node to it we can see
the selected panels along with their ID numbers and shape of the selected panel
can also be seen in the watch list.
Fig. List node for Material
Five
different materials are selected with different colors and all these materials
are grouped individually using list option.
USING EXCEL SHEET FOR RANDOMIZING COLORS
After the curtain panel is selected
for the divided surface then the color of these applied panels has to be
changed using dynamo code and each panel should have random color this cannot
be done by selecting every panel separately hence, Excel is used by using the
function “RANDBETWEEN” colors of the panels can be altered and I have 5
different colors for my code. This function updated the sheet with random
numbers from ‘0 to 4’ and these numbers vary in the number of cells, equal to
the number of panels on the divided surface of the model.
Fig. Random values from Excel
In the second code the thickness of
the panel and opening of the void in the panel changes along with the color and
material of the panel and for this code I have used rectangular panel with
circular void. Extra parameter thickness and void openings is used in this code
and different thickness and opening values are given ranging from 1 to 5 which
matches the color variation number.
Fig. list node for thickness and void
opening values
All the panels on the divided surface
from the watch node is plugged into the final ‘set Element Parameter’ node.
This parameter actually shows the result in the Revit mass family.
The final code including all three paramters that rae color of the panel, thickness of the panle and the void radius change in the panel is achived by the following code
Fig. Final Dynamo code
PYTHON SCRIPT
Instead of writing a big if-else statement to randomize the thickness and
opening along with the color Python Script can be used in the Dynamo code. If
Dynamo script is not used then Dynamo screen will look too clustered with lot
of if-else nodes. Python script makes this process easy and simple. The main
work of the python script is it links the one input color with the single panel
thickness value and radius value and these values changes as the selected color
is changed. For example if the material selected is poche with blue color, corresponding
opening radius is 2 ft and thickness is 3 ft and if the color is Default-Red
corresponding opening radius is 3 ft and thickness is 4 ft.
In the
present Dynamo code Excel sheet controls the randomness of the colors and
materials applied for the panels, and two different Python Scripts are used one
to script links the list of the material colors with the list of the opening
radius values. Simultaneously another Python Script is used to change the
thickness of the panel with the change in the color of panel.
Fig. Python script to link color and thickness
FINAL RESULT
The final results of running the above codes is shown in the Revit Environment
Fig. panel color change
Fig. thickness of panel along with color
Fig. change in thickness of panel in dome
Fig. change of voids and thickness with color of panel
No comments:
Post a Comment