Creating Conceptual mass in REVIT and Creation of Sinusoidal curve and a Parametric stadium using Dynamo
1) Aim: To create a set of sinusoidal points, curve and to create a surfaace out of the curve by using Revit software
Procedure:
Open revit--> New architectutal template
Manage tab--> Dynamo
On Dynamo--> New
Step1
In search tab->"Code block"->Enter value of start,end, steps
Search "Range"->project the values in the range
Search" Point. By coordinates"->project the range value in X// So that the point lines goes in X-Axis


Step2:
Search "Math.sin" and insert in Dynamo
Add code block and rename it as "Amplifier"-> Enter value of 30
Now direct the sequence of "Range" into "Math.sin"
Open a "Multiply" node-> Project the sin value in X and amplifier into Y of the "Multiply"

Step3:
Enter a node "ADD" to add the Sin wave and the direction
Enter a " Integer slider"-> enter minimum value of 10
Project the variable of Multiply to "X" and integer slider to "Y" of ADD node

Step4:
Project the variable of ADD node to "Y" of points.by coordinates in Z if u want in Z direction
Create integer slider-> put minimum value of 20
Create a Nurbescurve.bycontrolpoint (which takes points and degrees)
Project the point of coordinates in POINTS and integer slider in DEGREE of Nurbescurves

Step5
Copy and paste the nodes 3times for 3 waves
Increase the integer slider in the other 2copied nodes 20 and 30

Step6:
"List.create" node-> project the Nurbescurve of the above copied
Project the Nurbescurve to each item of the list
Create " Surface.Byloft" -> project the list into the crosssections
Result:

2) Aim: To Create a conceptual layout of floor in dynamo. Using the tools available in dynamo link the lines to approprate model elements in Revit by choosing the wall types and wall parameters. Make use of the sliders to slide through the height of the wall and length of the wall
Procedure:
Step1:
Open revit-->New architectural template
Open Dynamo-> create 2"integer slider" ->Give minimum value of 100
Rename them as X& Y
Create 4"Points.By coordinate" and name them // For origin (0,0,0), X(x,0,0)point, Y(0,y,0)point xy(x,y,0)point
Project the X slider on point having x coordinate and y slider on y coordinate

Step2
Create 4"line.Bystartpointendpoint" for each point to connect
There by project the points created in above steps to the lines of (0toX),(0toY)(XtoXY)(YtoXY) start to endpoint

Step3
"List.create" to create a surface for the walls --> Add items to each line i.e, 4 items
Create node "walls.bycurvesandheight"--> It takes input of height, levels, walltypes and curves
Numberslider for height of wall-> Minimum height of 10
"Levels" gives the level you want in the dynamo
"Walltypes" and curves take the values from the list

Step4
No go to revit page--> Minimize the dynamo and keep it side by side with revit
Go to 3D view in revit
In dynamo -> increase the height slider of the wall--> It will reflects the changes in realtime in revit

Result:
Increase the x and y sliders and watch the changes in the length of the walls and height of the walls

3) Aim: To create an array of model elements in Revit. Use Dynamo to vary the properties of model elements by using the slider or code block
Procedure:
Step1
Open revit -> Go to architectural template
Go to insert tab-> Load family(load any family you want) // For example: Sofa
Go to modify tab -> array tool-> select the sofa
Enter the no.of copy you want

Step2
Go to manage tab--> Open dynamo
On dynamo page--> open node "select model elements" to select the elements from the revit file
Open" Number slide" node--> maximum value of 360 and steps 10
To rotate " Familyinstance.setrotation" to perform rotation task
Project select model elements into family instance and slider to degree
Now click on select --> select family from the revit i,e, the sofa array
Click on run to rotate the set

4) Aim: To create a conceptual mass in Revit and develop a parametric column by dividing the surfaces and apply the concepts similar to used in parametric walkway modelling, use triangular bent or square shaped panels to add finish to the parametric column
Procedure:
Open revit--> Open new family template
A new tab will open---> Conceptual mass folder

Click open --> Go to elevation view--> Create a new level at proper height clearance
Rename the levels as" Height of roof"

Go to floor plan--> Height of roof
Create tab--> Model lines --> Spline curves


Now go to 3D view--> set workplane--> click on the pointers to set the plane
Go to circumscribed polygon--> go to the plane and draw with sides length similar to height of levels

Do this to each pointers
Now select the path and the rectangular figure--> click on create form

The form will be created

Now select the object-> Filter, only select the form -> ok
Click on Divide surface --> from properties panel select the " Triangle bent"

Adjust bent surface by changing U-grid and V-grid number
Save the file
Go to new --> family --> Curtain panel pattern based

Open the template-> select the base grid-->Go to properties panel and change to triangle bent
A new triangle pattern will be shown--> from the above tab select reference point
Select the point and select the midpoint of the line of the pattern

Now set the plane at that midpoint--> Go to draw--> Select circle
Draw the circle on that plane in the midpoint of 3"-10" as per choice
Now select the line and the circle --> create form

Go to the above tab--> Load into project

You will be brought back to the project model page
Select any one side of the divided surface you created // To avoid overloading of software, prefer to do it one by one face
Go to properties panel--> Change the selection from triangle bent to triangle bent family1 // It can be family1/family2 etc
Do to for all the sides of spline you want
Result:


5) Aim: Use Dynamo to work on developing a parametric stadium. List your parameters and use the visual programming approach to complete the modelling. You can use the concepts discussed in parametric high rise tower in class for reference
Procedure:
Open revit --> Architectural template
Manage tab--> Dynamo
Open node " Code block", "Point.Bycoordinates" and "circle.bycenterpointradius"
Enter code block value 50 for radius// Put base circle value according to your design
Project the point coordinates into cordinates and codeblock into radius

Run the command, the result given below

Copy the nodes and paste it --> number slider steps of 10
Insert a codeblock--> rename it as height, input value of 10
project the height into Z axis--> now project the coordinates into centerpoint and slider into radius

Copy the nodes and paste --> just increase the height with the steps of 10
Increase the number slider with increment of 50
//do it for 3-4 times with changing the height and radius values

The result of the above nodes are

//repeat the above steps with changing height and values

NOw insert a node of "list.create"-->create number of items according to the number of radius you have // to take the list of radius
Project circle nodes into the items

Insert a node of " Polysurface.byloft"--> project the list into crosssections of polysurface
Run the node

Result:

Display in revit 3D
