Tuesday, January 23, 2018

Data Mining Your Revit Model

Data Mining Your Revit Model

Revit is Database software that uses graphics and geometry as part of its system.  This leads to a very data rich model file.  There are a variety of different ways to get useful data from the Revit Model.  Revit can automatically schedule many elements of the model.  Revit can also do material take-offs of most elements that exist in the model.  Furthermore, Revit is also able to get useful information from reportable model data that doesn’t actually exist in the model.
There is information in the model that can be translated to provide different information that is useful to the manufacturer. For example; if I have the perimeter of a Curtain Wall Panel, then I can use that information to figure the length of gasket material or amount of adhesion material, and so on.  If we know how many fasteners it takes for the different mullion types and assemblies, we can add a parameter to include X amount of fasteners to each of the types. That information would only need to be added per type.  Then we can Schedule that information in the Curtain Wall Mullion Schedule.
Curtain Wall Panel take-offs do not automatically give perimeter information.  The following demonstrates how to mine your Revit model for useful information.  In this case we schedule the perimeter of the curtain wall panels.
Using Revit 2016 (This can also be done in earlier and later versions of Revit. Different year releases might not look identical.)
Step One
Click “View” then “Scheduled” then “Material Takeoff”.

Step Two
Select “Curtain Panels” from the “Category “ list.
Select “OK”
Step Three
Add the fields that you want to schedule.  Be sure to include “Height” and “Width”.  You will need them later to get the perimeter.  The “Family” and “Material Area” will also be useful for keeping track of types and ordering material.
Step Four
Select “Calculated Value”.  Name it “Perimeter”.  Set Discipline to “Common”, and Type to “Length”.
In the “Formula” area click the "three dot" button.   There you will see the parameters that can be used in a formula and are in the current scheduled fields.  First choose “Height” or “Width”.  Then choose the other. You can pick one at a time or just type in the formula by hand.  Be sure to match the text exactly or Revit won’t recognize it.  To get the perimeter you can use a few different formulas that will get the same result.  I use (Width + Height) * 2.  These formulas work like an Excel formula.

Edit the “Formula” field to show the calculation that you want.
Select “OK.”
Step Five
Once the fields are set, it’s time to determine how to show the desired data.  Sorting helps to arrange the data in a very useful spreadsheet layout.  Select the Sorting/Grouping tab to arrange the data for the spreadsheet.  Under the "Sort by:" pull down menu select Family and select the options you would like to use.  It is important to check the box for “Footer” and “Grand Totals”.  Whether everything needs itemized or not is up to you.

Step Six
Select  Formatting.” Be sure to check the “Calculate Totals” box at the bottom, for fields that you want the material length or area for.


Bonus Step
Sometimes we need lengths or areas in a different unit of measure for special circumstances.  Revit can easily deliver the information that you need in any of the formats that you see in the image below.  In the “Field Format” you can get this information in either Imperial or Metric.
Scheduling these factors is very useful for the folks involved in the project.  Area can be used for ordering material like glazing or coatings. Width can be used to find the longest span for the structural folks. Perimeter can be used for ordering material like gaskets or adhesion material.   


Once we think through the list of data that our manufacturers may need we can come up with a way to mine that information from our Revit “Database” Model.  We can get most of what we need from Scheduling the Curtain Wall Panels or Mullions.
I invite your questions or comments.

Thursday, August 25, 2016

Inserting Curtainwall Doors as Embedded Curtainwalls

Revit handles curtainwall doors differently than it handles regular doors.  Normal doors are Revit elements that require hosting by a standard wall.  Curtainwall doors, however, are treated as curtainwall panels and substituted for a standard panel between curtain grids.  When designing curtainwall doors, there can be an enormous number of frame and doors style combinations to consider and a CW door library containing all of those combinations can get quite large and time consuming to create.


On a recent project, I came across this method used by Dave Jones, the owner of Drafting and Design Plus (ddpbim.com).  Dave creates the curtainwall door frames as individual curtainwall types and then embeds that CW in a single panel space within an existing CW.  He then inserts a CW door as the lone panel within that embedded curtainwall.  Keeping the doors and frames as separate elements allows any combination of doors and frames to be created and each will flex properly when the host curtainwall’s grids change.


This exercise will go over the method of creating a new curtainwall type, containing the door frame, embedding it into existing curtainwall, and then inserting doors.  In practice, you may need to vary the mullion design depending on how you define the face of the curtainwall system – Face of glass, face of system, face of frame, centerline of wall, etc.


1.   Start by creating a new curtainwall.  The size doesn’t matter but making it approximately the size of a door will aid in visualization during the process.

2.  With the curtainwall selected, click Edit Type then click Duplicate in the Type Properties dialog box.  Give the new curtainwall type a descriptive name that identifies the type of door frame then click OK in both of the open dialog boxes.

3.  The next step is to create the profiles for the frame.  Click the Application button > New > Family.

4.  Open the Profile-Mullion family template.

5.  Create the desired vertical profile. Add parameter driven dimension values to make the process of changing the shape quicker and allow for multiple types of the same profile if required.  This profile will be used for the vertical mullions in this exercise.

6.  Click the Family Types button in the Modify tab’s Properties panel to open the Family Types dialog box.  Click the New button then give the new mullion profile type a new, descriptive name.  This allows you to contain both of the profile definitions within one profile.  Click OK to close of the Name dialog box.

7.  In the Family Types dialog box, change the parameter values to reflect the shape of the new profile.  This will be the door header profile.  Click OK to close the dialog box.

8.  Save the profile family then load it into the curtainwall project.
9.  The profile is in your project but it hasn’t been defined as a mullion yet.  In the project file, click the Mullion button from the Architecture tab’s Build panel.

 10.  Select any of the Rectangular Mullion options then click Edit Type.  In the Type Properties dialog box click Duplicate then rename the mullion.  Click OK to close the Name dialog box.

11.  In the Type Properties dialog box, click the down arrow for the Profile parameter then select the profile for the vertical door frame members.

12.  Click Duplicate again then rename the new mullion.  From the Profile dropdown, select the profile for the door frame header.  Click OK to close the Type Properties dialog box.
13.  Select the CW then click the Edit Type button in the Properties palette.

Under the Vertical Mullions category, the Border 1 Type and Border 2 Type values define the profiles that appear at the left and right jamb conditions respectively.  Under the Horizontal Mullions category, the Border 1 Type and Border 2 Type values define the profiles that appear at the sill and head conditions respectively.  In both cases, the Interior Type value defines the intermediate mullions.         

14.  In the Type Properties dialog box, click in the down arrow for the Vertical Mullions’ Value column of the Border 1 Type.  Select the mullion for the door frame vertical.  Repeat this step for the Border 2 Type.

15.  Click in the down arrow for the Horizontal Mullions’ Value column of the Border 2 Type.  Select the mullion for the door frame header.  Click OK to close the Type Properties dialog box.

16.  Create a new curtainwall in the project, using the Curtain Wall 1 type, the add curtain grids leaving spaces for a single and a double door.

17.  Select the two panels where the doors belong then, from the Properties palette, click the element dropdown arrow and select the curtainwall type that contains the door frame.

18.  The panels are substituted with embedded CW’s, with preexisting frames, which flex with the size of the door opening.

19.  The next step is to add the curtainwall doors to the curtainwall.  If necessary, click Load Family from the Insert tab’s Load from Family panel.

20.  Navigate to the Doors folder from the elements that ship with Revit then select the Door-Curtain-Wall-Single-Glass and Door-Curtain-Wall-Double-Glass families.  Notice in the preview that neither door includes a frame.  Click Open to load the families.

21.  Use the Tab key to select the single door panel within the embedded curtainwall.  Click the dropdown arrow in the Properties palette then select the single curtainwall door family,

22.  Repeat the process with the double door panel choosing the double door family.

Curtainwall doors now replace the panels in the embedded curtainwalls.

This is a great method for creating framed CW door libraries without have to create a vast library of every door and frame combination.


Thursday, June 2, 2016

Create Single Floor Building Envelope Models

Rarely are BIM models created by a single entity in a vacuum but are usually the conglomeration of models built by many companies contributing to a single goal.  Using the models from the different trades to identify clashes, and other issues, is one of the main strengths of Building Information Modeling and the intent of the 3D coordination process.  When managing the coordination of the contributing models a project requirement is often to submit the models on a per floor basis – one model for each floor of the facility.  While this may be a good idea in regards to furniture plans or the layout of demising walls, the building envelope, especially curtain wall, is rarely created as single floor model for many reasons including: It would be less efficient, the upper and lower components of the stack joint rarely align with the top of slab, and the number of wall models created would be multiplied by the number of floors.  In this exercise we will look using section boxes to accurately export single floor models for BIM coordination in Navisworks.



  Section boxes only appear in 3D views but, surprisingly, the first step to creating the section box to isolate a floor in a 3D view is to create a new elevation.  Open the floor plan for the level that you want to create the model for, then add an elevation perpendicular to one of the external walls.



  Double-click the elevation head in the plan to open the new elevation view then make sure the crop region is displayed and that the Crop View option is selected in the View Control Bar at the bottom of the view.



Select the Crop Region to display the segment handles then move the top and bottom segment handles until they snap to the levels that bracket the floor that you want to isolate.



Create a new, or duplicate an existing, 3D view and make sure the Section Box option is checked in the Properties palette.



Right-click on the Viewcube then chooses Orient to View>Elevations then select the elevation in which you modified the Crop Region.



The 3D view is adjusted to match the elevation that you created at the start of the exercise.



Change the orientation of the 3D view then select the Section Box to expose the control handles.



Carefully select and move the control handles on the four sides of the Section Box but make sure you do not change the position of the handles on the top or bottom of the Section Box.


From the Application button, choose Export > NWC then save the new .nwc file.  Revit will create the new Navisworks file.  If the project coordination is being performed in Autodesk Glue 360, you would choose Add-ins > Glue to initiate the export process..



Open Navisworks then navigate to then open the file you just created.  The file opens showing just the floor that you isolated with the Section Box.


  Using the technique shown here can effectively create the single-floor models required for the coordination process without the need to create many single-floor models.  To generate isolated floors for the remainder of the building, simply repeat the steps shown above.