Tuesday, 25 April 2017

Deleting Global Parameters in Revit

Following on from my earlier post about transferring global parameters between Revit projects, here is some information about what happens when you delete them.

Your list of Global Parameters in a project can get very long and messy - so eventually you'll need to do some tidying up.

Global Parameters Dialog Box

The Global Parameter dialog box has a 'Delete' function, not surprisingly - a red cross icon, next to the modify and create new icons.

A Global Parameter (GP) can be used in formulas for other parameters, and it can be associated to dimensions or elements in the project, so you need to be careful about deleting them - more so than in the family editor (where you have a better chance of knowing where they'd been used).

If a GP is deleted, then any formulas using that GP would also be cleared - it gives a warning, which is invaluable

If a GP is deleted, where it has been associated to elements, it also gives a warning with a number of elements to be affected - if you proceed all those associations would be lost. By comparison, in the family editor deleting a parameter would affect only that family, whereas with Global Parameters it could affect the whole project. So, be very careful

Elements in the Project

Elements in a project could have GPs associated with them, and deleting the element would obviously break/lose that association.  It is important to know when this is happening - or better still, beforehand.  When a dimension is deleted, it will warn you about constraints;  it does the same thing for GP associations to dimensions.

If you expand the warning it does not mention global parameters, but gives enough information to figure it out

If you delete an element that has a GP directly associated to one of its properties, it does not warn you - Revit just goes ahead and deletes it.  For this reason it is important to be able to check which elements have associations

Checking GP Associations

When you select an element that has GP controlled dimensions attached to it, all the related GPs show up on screen, including the label names. You can hover the cursor over any of the highlighted constraint dimensions for more detail in a popup tooltip.

It is a mystery why all those extra label names appear in this situation but not when you select an actual dimension. Sometimes it gets very messy and confusing

More on checking GP Associations by scheduling and view filters to follow . . . .

Friday, 14 April 2017

Revit Dialog Box Shortcut Keys

I was recently doing a very repetitive task on a Revit dialog box - it involved changing the order of many View Filters in the View Template dialog box (Filters tab).  This list of added filters does not sort alphabetically - the dialog box has no means to do so because the filters are applied in order, which means you don't want it to sort automatically.

In the process I decided to check if there are any keyboard shortcuts for the 'Move Up and Down' commands.  Yes, there are indeed some hidden keyboard shortcuts. This can be very useful as you can keep your finger on the key for multiple moves, unlike using the mouse, which requires a click for each move (a sure recipe for RSI):

[Edit] After further testing prompted by comments by 'infeeeee' I have realised it is simpler to use than I first thought.  I knew about the Alt key shortcuts that work on the ribbon (or Keytips as the Autodesk helpfile refers to them) - but I was not aware that they also work on some dialog boxes.  I have amended the instructions below accordingly.

Here is how it works:

View Filter tab View Template dialog box

The command icons will show the keyboard shortcut underlined if you press the Alt key (as shown above).
  • First select the filter in the list
  • Then get the focus onto the icons for up/down by pressing the Tab key, or by clicking on one of the up or down icons
  • Then use the following single key shortcuts:

D = Add

R = Remove

U = Up

O = Down

E = Edit

Esc = Cancel
  • Alternatively, you can press the Alt key + a shortcut key, which negates the need to get the focus onto the command icons in the first place (much easier)

Line Styles Dialog Box

N = New (Subcategory)

D = Delete

R = Rename

I = Invert

Fill Patterns

Although the keyboard shortcuts are programmed, the Tab key does not put the focus onto the icons, so you cannot use the keyboard shortcuts that way. However, the Alt key works like a charm.

N = New

E = Edit

D = Delete

U = Duplicate

R = Drafting

M = Model

Even the Modify and New Pattern dialogs have their own key tips:

Line Patterns 

Line patterns work the same way as the Fill pattern dialog - you have to use the Alt key combination as you can't get the focus to move using the tab key (except at the end of the list)

N = New

E = Edit

D = Delete

R = Rename

Family Editor ‘Family Types’ dialog box.

Some keys are programmed (weirdly) but it is hard to get the focus onto the icons. It is best not to use this because it is too easy to put the focus back into the parameter values and you get into all kinds of trouble changing values and formulas. However, it should be ok to use this with the Alt Key combination.

G = Manage Lookup tables

C = Sort reverse alphabetically

D = New parameter

M = edit

N = New type

R = Rename type

S = Sort alphabetically

U = Up

W = Down

Global Parameter Dialog Box

Yes, the keys are programmed here too - but it is way too dangerous to use, so I won't even list them.  Just as an example, D = Delete (now that is scary because D means new parameter, or Add on other dialog boxes).  In addition to that, it is tricky to get the focus onto the command icons, and to keep it there, so the chances of wiping out a value or a formula are quite high.

[Thanks to 'infeeeee' for the comments that helped me to improve this blog post]

Tuesday, 4 April 2017

Transferring Global Parameters Between Revit Projects

In preparation for my upcoming presentation 'Power to the People - Global Parameters' at BILT ANZ 2017 in Adelaide (2.3 at 1.30pm Friday 26 May), I have done some in-depth analysis of how Global Parameters work. I don't want to spend too much time during the presentation on the nuts and bolts as there is much more exciting stuff to look at with what Global Parameters can achieve - so I plan to publish some of that research here . . . .

. . . . .Starting with how to copy Global Parameters between Revit projects:

There are two ways to achieve this, with varying results.

Transfer Project Standards

From v2017 it is possible to copy Global Parameters between projects  using the 'Transfer Project Standards' function.   However, it is 'all or nothing', as per usual for this feature - it copies every single Global Parameter in one project to the other one, along with all the values and formulas.  So it is like applying a sledgehammer - you could transfer two hundred parameters when you only want two. 

  • It does not copy any associations between modelled elements and Global Parameters - these would have to be re-associated to elements in the new project.
  • NB. If there are any materials selected for any material type global parameters, the materials will be transferred too.
  • If Global Parameters already exist in the project (with the same names), Revit will ask if you want to overwrite them - it will overwrite both values and formulas.
    Be careful not to lose any values or formulas if the names happen to be the same by coincidence.

Copy & Paste

Copy & Paste of elements between projects will also transfer any associated Global Parameters. This will in turn bring with it any formulas included in those Global Parameters, and any further GPs referred to within those formulas. This does not guarantee that the whole GP relationship will necessarily work properly once copied because there could be GPs that rely on such things as reporting parameters driven by dimensions that were not copied.

  • The benefit of this method is that it only brings with it the Global Parameters associated with the elements that you want to copy anyway.
  • It also maintains any associations between selected elements and Global Parameters.
If identically named Global Parameters already exist in the project:
  • It does not copy/overwrite existing Global Parameters
  • If the Global Parameter values and formulas are the same, it maintains them, and maintains the element associations to the Global Parameters.
  • If the Global Parameter values and formulas are different it will try to maintain associations, but using the new values - if this causes significant changes it will warn you that it needs to break the associations


Use whichever method best suits your purpose:
  • If you want to overwrite Global Parameters, use 'Transfer Project Standards - but it copies all your Global Parameters.  You may need to transfer them to an intermediate blank project, then delete the ones you don't need, keeping only the ones to transfer - then transfer those into the final destination project.
  • If you want to maintain associations with elements, or only want to copy specific Global Parameters - use Copy and Paste.

Wednesday, 15 March 2017

Nested Revit Repeaters - Gare do Oriente pt 5

How to use Revit adaptive components and repeaters to create a model of Santiago Calatrava's roof structure of the Gare do Oriente in Lisbon:
Part 1 - The rig for one structural column
Part 2 - Placing roof panels onto the rig
Part 3 - Creating the structural elements 
Part 4 - Adding struts to the structure

Part 5 - Assemble Structure on Platforms

YouTube Link

Step by Step checklist:

Add Column Base

  • Open your column structure adaptive family created in steps 1 - 4
  • Set the work plane as the horizontal reference plane of adaptive point 1
  • Place a reference polygon centred on the adaptive point, first making it 4 sided
  • It will give four temporary dimensions, one for each side, from the centreline references
  • Make these into real dimensions
  • Select all four dimensions and associate them to a parameter called 'Half base'
  • Optional:  create a new parameter called Base Width
  • Optional:  add a formula to 'Half base' = Base Width /2
  • Select the four reference lines of the polygon
  • Create form
  • Drag its top surface up, and it should enable a temporary dimension for the height
  • Turn that into a dimension
  • Associate it to a parameter 'Base Height'
  • The family is now ready to use in a project model


Create an Array of Columns

  • Load the family into a project
  • Create railway platforms (floors or extrusions of some kind) 
  • Create an in-place Mass family
  • Draw a rectangle of reference lines, with the two long sides centred on the outside platforms
  • The length of the rectangle should be a multiple of the distance between each platform
  • Select the four reference lines (rectangle)
  • Create a form
  • Drag the top surface of the form up or down so that it is flush with the top of the platforms
  • Select the top surface of the form
  • Click on the 'Divide surface' icon
  • Depending on the number of platforms/tracks, and the length of the rectangle, adjust the number of U and V grid divisions to achieve a square pattern of grids, one per platform - remembering that the number matches the grid lines not the divisions
  • Change the surface representation of the divided path; make the Nodes visible
  • Place one of the structural adaptive components onto any one of the nodes
  • Select the component and click on the Repeater icon
  • It should create an array of columns, one on each node
  • Select the divided surface and hide its nodes again, so that they will not be visible in the project in any views.  NB. if any divided path nodes are visible in the structure, you need to hide those back in the family and reload them (which can be painfully slow, so its better to do so before creating the repeater) 
  • Finish the Mass family
  • In the project Browser, select the column family and change its 'Inside Radius' property to match half the spacing between nodes (platforms) - this should ensure that the overall size of the roof matches the divided surface grid size
  • Adjust any of its other properties as desired - eg. Base Height
  • The individual nested families will most likely be shared families, unless you changed that when creating them - so you should be able to adjust other parameters by selecting the nested families in the project browser - eg. Number of struts. NB. it can be slow to make those property changes depending on your computer, but remember that Revit is doing a lot of calculating for each change, and it is still much quicker than creating such a structure by conventional Revit modeling tools.
  • You should now have a basic parametric model of the railway station roof of Santiago Calatrava's Gare do Oriente in Lisbon