Wednesday, February 13, 2008

Automated Keynoting in Autodesk Revit

I am frequently asked about the keynoting feature in Autodesk Revit; how to use it and how to set it up. It’s actually quite simple, and with a little bit of effort can reward you with a much-simplified annotation system, whether you actually use keynotes (reference or sheet) or simply want standardized “typical” text notes.

The following tutorial will attempt to walk through the process of using keynotes. Then we’ll take a look at how to customize them. This tutorial will use the standard keynotes file that ships with Revit Architecture (as well as Revit Structure and Revit MEP).

Associating the Keynotes File

Before you can use the keynoting feature in Revit, you must first associate your project with a keynotes file. You can do this in your template project if you want to use an office standard keynotes file, or you can use a separate file for each project.

To associate a keynotes file, go to Settings->Keynoting. The first item in the dialog is the path to your keynotes file. Note in the figure below that it is currently reflecting the default keynotes file, which should be located in your Imperial or Metric Library. This is a simple text file which can be edited or created from scratch, as we will see later.



Figure 1 – the Keynotes Settings dialog


Note the other settings in the keynotes file. Most importantly we will discuss the difference between the numbering methods “By sheet” and “By keynote” later.

Assigning Keynotes to Materials and Types
Once you’ve associated the keynotes file to your project or template you can begin to assign keynotes to material definitions and element types. Note in figure 2 and 3 that both the Material Definitions dialog (on the “Identity” tab) and the Type properties of any element have a field for a Keynote to be assigned.


Figure 2 – the Material Definitions dialog, with the “Identity” tab selected.



Figure 3 – the Type Properties dialog of a wall type.



Additionally, the Family Types dialog of a component family definition will allow the assignment of a keynote to any component or detail component family. Selecting the browse button in the Keynote field in any of these dialogs will take you to the associated keynote file, allowing you to select from any of your standard notes. Figure 4 shows the default Imperial keynote file, which is structured around the 16 division CSI format.


Figure 4 – The default Imperial keynotes file.


So, now you’ve associated a keynotes file to your project and you’ve assigned keynotes to your materials and type definitions. The hard part is done.


Using Keynotes


To use keynotes, go to the drafting panel and select the “Keynote” tool. You have three options:
Element: Pick an element and the keynote assigned to the type definition will be used.
Material: Pick an element that has materials assigned to its components and the keynote assigned to the material definition will be used.
User: Pick any element. Whether or not it already has a keynote assigned to it you will be taken to the keynotes file to select any other keynote that you prefer to use.


If you select an element or material that has no keynote assigned to it yet, you’ll also be sent to the keynotes file to select a note. Once selected, that keynote will then be assigned to the element or material that you selected for future picks. If you accidentally select the wrong keynote during this process, you need to edit the type (or material definition) properties and change the keynote assignment there.


Referring back to the keynotes settings dialog box shown in Figure 1 again, note that you can choose to use “By sheet ” or “By keynote” when you place keynotes. The difference between these is simple but significant. “By sheet” refers to a system where each keynote is assigned a number that is unique on a particular sheet, however the same keynote could be a different number on a different sheet. Typically the numbers will simply be “1”, “2”, etc. “By keynote” is a system where the actual keynote number specified in the keynotes file will be used, and will be consistent for a given keynote across all sheets. The terms “By sheet” and “By keynote” refer to the US National CAD Standard “Sheet Keynotes” and “Reference Keynotes”, respectively. Figure 5 shows a detail annotated with the “By keynote” (reference keynotes) option. Figure 6 shows the same detail annotated with the “By sheet” (sheet keynotes) option.


Figure 5 – A detail annotated with the “By keynote” option.



Figure 6 – A detail annotated with the “By sheet” option.


Note that with the sheet keynotes, the actual keynote number is not assigned; instead there is a simple “?” placeholder. The number will be assigned when the detail is actually placed on a sheet. You can actually switch an entire project’s details from the reference keynotes option to the sheet keynotes option by simply switching the choice in the Keynotes Settings dialog. All existing keynotes in your project will update immediately to the new system.


Keynotes are essentially nothing more than tags. You can choose to use a tag definition that displays the keynote number, or you can choose to use one that displays the keynote text itself. Therefore, even if you don’t use keynoting as an annotation method, you can still use this feature in Revit to standardize and automate your text annotation.


Creating Keynote Legends


Keynote legends are nothing more than a schedule view. To create them, however, you need to go to the View pull down menu and select New->Keynote Legend; you won’t find the option on the View design bar. Once the legend is created, you’ll see it listed in the Project Browser with the rest of your schedules.
Viewing the properties of the legend, you’ll see, in fact, that it has the same structure as any other Revit schedule with one critical exception. On the “Filter” tab there will be an option at the bottom to allow you to filter keynotes by sheet, as in figure 7.


Figure 7 – filtering keynotes by sheet.


Turning this option on will allow you to have all of your keynotes in one keynote legend. However you can use the legend on multiple sheets. For each sheet that you place it on, only those keynotes that appear on the sheet will be shown in the legend. If you are using sheet keynotes, the keynote number will be blank in the legend view, since each one can vary from sheet to sheet, but when the legend is placed on the various sheets the numbers for those sheets will be assigned.


That’s it. That’s all there is to working with keynotes. The critical thing to make it move fluidly and quickly is to take the time to assign keynotes to all of your component family types and system family types, as well as your material definitions. This means that you will probably also need to either edit the default keynotes text file or create a new one. Read on…


Customizing a Keynote File


Although keynote files are nothing more than simple text (.txt) files, the best tool to use to create or edit them is actually a spreadsheet editor such as Microsoft Excel. The formatting is a little ugly in the raw text form, but much more readable in spreadsheet form. When you open the file in Excel (we’ll use the default Imperial keynotes file as an example), make sure to set the file type in the File Open dialog to “all” so that you can see .txt files. After selecting the file, choose the “Delimited” option in the Text Import Wizard, and select “Next”. In the next screen, select “Tab” as the delimiter; you should see a preview of the file in the same dialog box.


Once the file is opened in Excel, you should notice that there are three columns. The first column is the actual keynote number for each note (or the section header for a group of keynotes). The second column is the keynote itself or the header text. The third column is a reference section – it is the section number that the keynote in that row falls under. This is how the keynote file can appear to “cascade” in the keynote dialog box. Looking at figure 8, let’s examine this a bit closer.


Figure 8 – a partial view of the default Imperial keynote text file


Notice the entry for “01530.A1”. The keynote text for that entry will be “Temporary Dustproof Partition”. It will fall under the section 1500 – “Temporary Facilities and Controls” – note the reference to section 1500 in the far right column for the keynote. Section 1500 will, in turn, fall underneath Section 1000, “Division 01 – General Requirements”, because it’s far right column includes a reference to that section. Rows that do not include a reference in the far right column will be considered top-level headers.


It’s that simple. After editing the file, make sure you save it back to .txt format, not .xls, and you’re ready to go!


That’s all there is to Revit keynoting – create/modify your keynote file, associate it to your project or template, assign keynotes to your type and material definitions, and start annotating!

6 Comments:

Blogger Parley said...

That was a fantastic tutorial... Thanks!

6:16 PM  
Blogger Micah Jonas said...

Thanks for this! The most concise tutorial on keynotes I've found yet.

9:46 PM  
Blogger Unknown said...

WHAT IF YOU WANT THE TEXT TO BE MULTI-LINE TEXT IN THE LEGEND?

5:15 PM  
Blogger Matt Dillon said...

Currently not possible.

5:17 PM  
Blogger Unknown said...

HOW DO YOU MAKE THE KEYNOTE ITSELF MULTI-LINE TEXT WHEN NECCESSARY?

5:17 PM  
Blogger Frank G said...

Everyone thinks that multiline text is not possible but in fact it is. Unfortunately if the text is long, the tag will wrap according to its label settings. It is possible to open your keynote text file in Excel and then adding hard breaks to the text by hitting the alt+return key. Revit does recognize these breaks, and I have found no other method of creating them. Be forewarned however that you have to open the file by tight clicking it and doing an open with - importing will not work. Be also forewarned that excel will by default treat numbers as numbers and not text, so you have to break up your keynote numbers with a space or decimals or add letters or excel will eliminate all preceding 0's

4:25 AM  

Post a Comment

<< Home