Formwork Areas

Revit does not have a simple solution to calculate formwork Areas. The solution to schedule the formwork areas of each INSITU elements was to use Dynamo. The node does not take into account joint faces, only elements as a whole. The shared parameter for the top, bottom and side formwork area updated.

Formwork Area

dynamoforwork

Example of the formwork areas

dynamoforwork2

Link to Download the above Graph.

https://drive.google.com/open?id=0B1tBgb-b92k_NEF6RGpRRW41eTg

Formwork Area – Node

A custom node that split the surface based on the vector direction Z value relative to the surface. The result, the top, bottom and side area values are filtered to each.

formworkarea-node

Advertisements

InfraBIM Dynamo nodes 

A  brief explanation of my custom nodes.

Transform_in

I use this node when bringing world coordinates data into Revit. The node takes the project define base point and true north angle and 2d matrix transforms and subtracts against the input values.  The result been the value are now relative to project base point. ( aka smaller.)

Transform out.

I use this node when getting world coordinates values out of Revit. The node takes the project define base point and true north angle and 2d matrix transform and adds to the elements local coordinate values, resulting in world coordinates.

XYZ parameter.

This is not so much as a custom node but more of a time saver. I have reparations uses of this node when inputting or modifying elements with xyz parameter and world coordinates parameters.

Formwork Area

I use this node to get the split surface areas based on the direction of Z value relative to the surface. The result, the Top, Bottom and side area values

This is not so much as a custom node but more of a time saver. I have reparations uses of this node when inputting or modifying elements with xyz parameter and world coordinates parameters.

formworkarea-node

Basepoint.

This node is used to input the project base point. Example of use is when creating topographic surface from a landxml file. The process of trash and burn.

GIS into Revit using Dynamo

Revit does not have an import function for a GIS ESRI Shapefile. There are multiple workflows of using MAP 3d or Civil 3d and then importing a .dwg into Revit. Dynamo and the package of GIS  now allow the import function of points, curves and Polygons. The current Package on Dynamo only imports the geometry within the Shape file and not attributed information, this is currently not available within the GIS package.

The image of the Dynamo script below uses GIS package in Dynamo to read the shape file and insert point families into Revit. As noted before only the point and curve geometry is import into Revit, no attributed data. The Points are matrix transposes the point to suit the Revit base point to insert point base family in the correct location.

The above appears to be complex set of node but really are just a simple connection of node that performs a simple task;
1. Read the ESRI Shapefile
2. Process the ESRI Shapefile into list
3. Get the Project Base Point and rotation
4. Matrix transforms the point from the Project base point
5. Insert Point family from the transformed base points

The above image is a group of nodes to read the ESRI Shapefile

The process in the above image includes reading the entries of the points within the Shape file. The result a list of points is needed to be inserted into the Code block to list

A group of nodes to get the project base Point.

The next node group is thanks to Wikipedia! If you can understand Revit shared coordinates well try think of it backwards!!!
Revit’s project base point is the mathematical set-out point of the graphical database. The project base point removes large numbers from the database and makes the math simple. I actually don’t know how to write it in words but to put it simple if you had the option of x =235982030, y=230923092, Z=14000 vs  x=1, y =1, z = 1 for every point as a reference point which one would you chose?  Well, Revit makes it simple by using 1,1,1 and tell base point is the large number which is multiplied by linear algebra.  To get the reverse into Revit from Dynamo you need to take the points that you have and Matrix transforms them from the Project base point and rotation to true north. Year 12 linear algebra, comes to mind.
Refer to the Wikipedia for Matrix transform https://en.wikipedia.org/wiki/Transformation_matrix

Rotation[edit]

For rotation by an angle θ clockwise about the origin, the functional form is x' = x \cos \theta + y \sin \theta and y' =  -x \sin \theta + y \cos \theta. Written in matrix form, this becomes:[4]

 \begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} \cos \theta &  \sin\theta \\ -\sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}
Simple math but complex to get at the start.
Once the Points have been reversed transform then can be used as points within Revit
Download the updated dynamo script Link
Download the shape file Example Link

 

 

Excel to Revit using Dyanamo

I’ve now been using Revit for 10 years and only in the last month through the use of Dynamo have I been able to use a command line like AutoCAD (on Steroids). Revit does not have an input command line where you can use specific coordinate, but dynamo gives you the availability to do just that.

 

The image of the Dynamo script below uses excel as the input for coordinates, and then matrix transposes the point to suit the Revit base point to insert point base family.
The above appears to be complex set of node but really are just a simple connection of node that performs a simple task;
1. Read the Excel Spread Sheet
2. Process the Excel sheet into list
3. Get the Project Base Point and rotation
4. Matrix transforms the point from the Project base point
5. Insert Point family from the transformed base points

The above image is a group of nodes to read the excel file.
The first Row within Excel has a heading (fields)  which needs to be removed from the list within to allow the clean list.
Excel has a series of cells which each data entry occurs. To make the data usable within Dynamo the data is required to be processed. The first set is to transpose the list in excel and then from there each column broken into the individual list.
The individual list then can be used to transform the points as well as other function within Dynamo. Using a simple Python script to split each column into individual lists.
A group of nodes to get the project base Point.

The next node group is thanks to Wikipedia! If you can understand Revit shared coordinates well, try to think of it backwards!!!
Revit’s project base point is the mathematical set-out point of the graphical database. The project base point removes large numbers from the database and makes the math simple. I actually don’t know how to write it in words but to put it simple if you had the option of x =235982030, y=230923092, Z=14000 vs  x=1, y =1, z = 1 for every point as a reference point which one would you chose?  Well, Revit makes it simple by using 1,1,1 and tell base point is the large number which is multiplied by linear algebra.  To get the reverse into Revit from Dynamo you need to take the points that you have and Matrix transforms them from the Project base point and rotation to true north. Year 12 linear algebra, comes to mind.
Refer to the Wikipedia for Matrix transform https://en.wikipedia.org/wiki/Transformation_matrix

Rotation[edit]

For rotation by an angle θ clockwise about the origin, the functional form is x' = x \cos \theta + y \sin \theta and y' =  -x \sin \theta + y \cos \theta. Written in matrix form, this becomes:[4]

 \begin{bmatrix} x' \\ y' \end{bmatrix} = \begin{bmatrix} \cos \theta &  \sin\theta \\ -\sin \theta & \cos \theta \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}
Simple math but complex to get at the start.
Once the Points have been reversed transform then can be used as points within Revit
Download the Example Dynamo Script Link
Download the Example Excel Spreadsheet link