Monday, October 22, 2012

Reality & Illusion

In the West (and I assume throughout the U.S. and elsewhere), where wood frame construction is dominant, these standards apply:

Standard length for 9 foot (nominal) studs is 104 5/8" or 8'-8 5/8". With top and bottom plates added, the standard plate height should be 109 1/8" or 9'-1 1/8". This allows for approximately a 9 foot clear interior ceiling height, depending on the finish.

For engineered joists, the actual size of the TJI-12 is 11 7/8", while the TJI-14 is actually 14".

Using these values, the top of 3/4" plywood sheeting will be 10'-1 3/4" for the TJI-12 system; and 10'-3 7/8" for the TJI-14 system. Roof plate heights for the two systems and 19'-2 7/8" and 19'-5" respectively.

In CAD, where accuracy is often pushed aside for expediency (because it's so inefficient?) these values have been "leveled off" to 9'-1", 10'-2", and 19'-3".

Also in CAD, reference values from finish floor are rarely given. The plate to sub-floor dimension is also excluded. The logic (?) being that at the start of the job, the floor assembly depth is unknown, and CAD must be protected from the demand for changes, where it is extremely inefficient.

When modeling with Revit, the best practice is to use actual values whenever they are known. There are no "unknowns" in a Revit model. The model is a record of all the information gathered about the building being designed. What better place to record those decisions accurately than in a Building Information Model?

Practitioners who wish to see no "differences" between CAD and Revit may set the dimension tolerance "to the nearest inch" and exclude the values from the level annotations.

There is no substitute for accuracy. 
When using Revit, do not attempt to substitute an illusion for reality.

Monday, October 8, 2012

Are We Men (and Women) or Are We Monks?

From Wikipedia:
The at sign or Astricks @ is also commonly called the at symbol or commercial at in English—and less commonly a wide range of other terms. The fact that there is no single word in English for the symbol has prompted some writers to use the French arobase or Spanish arroba—or to coin new words such as asperandampersat—but none of these have achieved wide currency.
Originally an accounting and commercial invoice abbreviation meaning "at the rate of" (e.g. 7 widgets @ $2 = $14), in recent years, its meaning has grown to include the sense of being "located at" or "directed at", especially in email addresses and social media like Facebook and Twitter.
Medieval monks abbreviated the Latin word ad (at, toward, by, about) next to a numeral. One reason for this abbreviation was that it saved space and ink. Since thousands of pages of Bible documents were copied onto expensive papyrus or hides, and the words at, toward, by and about repeated millions of times throughout the ages, a considerable amount of resources could be spared this way. 
In architectural drafting (hand drafting) many were taught to use this symbol as shorthand for "spacing":
  • 1/2" A.B. @ 32" o.c.
  • 11 Risers @ 7 1/2"
Somewhere along the timeline, after the transition to CAD, practitioners began to use the symbol where its meaning was not spacing but location; for example - Building Section @ Lobby.

In hand drafting there is some defense for this practice. It saved time and graphite - just like in medieval times!
But we are now in the 21st century!
It takes the same amount of time or less to type the letters "AT" than to hold the shift key while pressing "@". Certainly not more. Nothing is being saved.
Of these examples, which looks better? Which is easiest to read?
  • Window Sill at Fiber Cement Siding**
One of the benefits of implementing Revit/BIM (getting rid of CAD) is that it provides an opportunity to re-think many of the practices that have been erroneously carried forward into this modern age. This is one.

**Stay tuned for my indictment of "ALL CAPS" text.

Thursday, September 27, 2012

Revit Work-Sharing File Protocol

Recently I attended a user group meeting that included a presentation on Revit Work Sharing and Worksets. Eventually three different users spoke about their procedures regarding central and local files, and all of them were different from mine.

Revit Worksharing was introduced in version 4 (2002?) and represented the first true multi-user BIM environment. With this innovation, all objects in the model were assigned to a collection; the "workset", which was required to be checked out by a single user. Conflicts still arose when an objects in different Worksets interacted with each other. These limitations eventually led to the development in version 6 (2004) of "element level borrowing", which lessened the need for Worksets, except on larger projects.

When Worksharing is activated, the single user file is automatically converted to a central file. Copies of the new central file are automatically designated as "local' files which must be periodically synchronized with the Central.

When this feature was initially implemented, all file management was manual. It was not unusual for inexperienced users to accidentally open the central file; one solution was to include the word 'central' in the file name, as a reminder.

Another common problem was the failure to save local changes back to the main file, locking other users out. This led to the so-called "best practice" of creating a new local file every day or even with each new work session. These protocols were originally all manual, and some users created external programs to automate the process.

Starting with version 2010 enhancements were added to make central and local file management more transparent. The Recent Files start-up window and the Recent Documents panel make it easy for users to select the correct file.

Now when users browse to a central file in Revit, the default result is automatic creation of a new local, in the location specified in Revit options dialog. The Revit user name is automatically appended to the central file name, which identifies it as a local file.

Some CAD users have developed the habit of browsing to a file and "double-clicking" it in Windows Explorer (which is fine for single user files). When users open a Revit central file by this method, or any other, they will soon receive a warning to save their work into a new local file.

As with CAD, when using Revit there is no reason maintain some strange attachment to procedures that have become obsolete. The Zen of Revit means developing a sense of "what Revit wants" and following it.

Sunday, September 16, 2012

“Core Only” Walls in Revit

Before the advent of CAD, on construction drawings walls were represented by two lines - which everyone understood to represent the wall’s entire thickness. The actual wall assembly was defined by details. The construction layers and finish materials of walls were always shown in larger scale views.

Then as now the standard for dimensions was to reference the face or edge or the core construction, because it must be placed first in the field.  General notes disclaimed “All dimensions are to face of structure unless noted otherwise”. When more specific direction was required, the letters ‘FOS’ or ‘FOW’ were placed next to the dimension line to denote the reference.

At one-eighth inch scale the size of a six inch wall is 1/16”, which is about as fine as can be drafted with pencil on vellum. In manual drafting, at smaller scales the same wall would be drawn thicker, by necessity. The level of detail was variable, depending on the scale of the drawing.

With CAD came the ability to add more detail and precision to drawings. Unfortunately, CAD did not have the human ability to automatically adapt drawing detail level to drawing scale, and management of this information by drawing layers (over hundreds of individual files) although possible, was eventually abandoned because it was impossible to maintain.

So it was all or nothing, and the practice of representing only the structural core of walls, and excluding finishes, evolved into the defacto standard for CAD.

The transition from manual production to CAD did not really resolve its problems; it simply exchanged old limitations for new ones. This compromise is one example of how the limitations of CAD were first accepted and are still perceived as obstacles to overcome in the transition from CAD to BIM.

Among the unintended side effects of this practice, with CAD room and building areas are often calculated by tracing a polyline around the perimeter of a space, not at its finish but at the wall core. Cabinetry and casework is often depicted as if the wall finish does not exist. These errors are not significant, but should hardly be defended when a better solution is presented.

Those familiar with its early history know that Revit was designed specifically to resolve the problems inherent in CAD. Revit allows dimensions to be referenced to structural elements, while also displaying the full thickness of the wall, finish to finish. Revit  also allows walls to be depicted with only two lines (coarse view) with unlimited options for color, fill pattern, and lines weight.

In Revit room areas are automatically calculated, with boundaries established at the user's preference. 

In addition, Revit area plans automatically apply rule-based algorithms for its calculations.

My advice to Revit users is to resist all temptation to use Revit to emulate the limitations found in CAD. Allow what is clearly obsolete to stay in the past where in belongs.

Saturday, July 14, 2012

Pattern-Based Curtain Panel Roof Tile

There are many interesting ways to use Revit's pattern-based curtain walls and panels, and this is one that must have occurred to many users when the capability was introduced in version 2010.

My recent work on smaller scale residential buildings provided the opportunity to develop the technique.

Traditionally in Revit roofing tiles have been represented by a "roof object" with a surface pattern and thickness. The line-based families I had previously created for hip, ridge and rake tiles are great for enhancing 3D views and also elevations to some degree, but these views were still very "flat" - resulting from the imported surface pattern (displayed at an angle) and the lack of definition of the foremost edge of the roof material.

Pattern-based curtain panels are capable of stretching and deforming over complex surfaces. In addition, panels are automatically trimmed along angular edges, which is essential for accurately depicting the hips and valleys of these roof types.

Starting with the Curtain Panel Pattern Based.rfa template set to a 12" x 12" grid  two coincident profiles are blended into a tapered 'S' tile with a 2 inch overlap on the bottom edge.

In the building model roof structure and plywood  are separate objects. The roof tiles are hosted by an in-place mass family. With the workplane set to the surface of the plywood, a boundary line is drawn offset by a few inches from the edge of plywood. The purpose of the offset is to eliminate overlapping tiles. Use 2 inches at hips and edges, 3 inches at hips and valleys.

Selecting the closed boundary, the in-place mass is extruded from the plywood surface. A divided surface is applied to the bottom of this extruded form, with a fixed distance of 12 inches in both directions. The tapered S-tile panel family is applied to the grid. Component flip places the tiles above the plywood. Other settings allow fine tuning of the panel layout.

Go to the Files & Families tab above to download sample files.


Monday, May 14, 2012

Family Naming Simplified

Revit is an open system - the naming of files and family components is completely up to the user. Practice has shown there is much to be gained by adopting a naming convention or guideline. 

In Revit Architecture there are 21 external family categories, whose purpose includes the behavior of components including visibility, line weights, etc.

Assigning a keyword to each category facilitates sorting and results in grouping of content of similar categories within the pull-down menus.

Hosted objects
For most objects the default host is assumed or apparent. A ‘location’ keyword is useful when the method of hosting is variable or not the default(CB) ceiling based; (FB) face based; (FLB) floor based; (LB) line based; (RB) roof based; (WB) wall based.

When naming external families, it's a good practice to proceed from general to specific. Sub-categories to be considered include Type, Description, Use, and Manufacturer. Use the suffix ‘2D’ to indicate families composed of symbolic linework or detail components. Otherwise assume the family is modeled 3D geometry.

WDO_Multi-Panel Recessed
SPEQ-FB_Seat Cover Tissue Dispenser- Surface Mtd - Bobrick B-3479
SPEQ_Grab Bar-2D

Wednesday, May 9, 2012

Slab Depression - Part 3

Revit facilitates an iterative process in which the output is constantly being improved. For many Revit is the antithesis to CAD, where, due to the complexity of the system, the goal of quality is often perceived to be an effect of consistency, which is pursued through standardization.

With Revit quality is seen to be an effect of innovation, within a modular system that supports and facilitates innovation. Once every year a new version brings new tools and functionality, to be implemented as needed, but in practice the improvements are incremental and continuous.

Soon after I deployed the Slab Depression families I received a request to slope the depressed surface to enable tagging with spot slopes. It was a fairly easy task to enhance the original void extrusion with a blend tapering from the outer boundary to a three inch square bottom surface representing the drain location. 

The depth of the depression, however, had to be set manually in order to achieve the desired slope, more or less by trial and error. 
The required depth for any slope is determined by the longest distance from the perimeter to the drain. 
An Internet search on "Revit conditional formula" led to this discovery on Autodesk WikiHelp:

if(A > D, if(A > C, if(A > B, A, B), if(B > C, B, C)), if(B > D, if(B > C, B, C), if(A > D, if(A > C, if(A > B, A, B), if(B > C, B, C)), if(B > D, if(B > C, B, C), if(C > D, C, D)))))

This is a conditional formula which by comparison returns the largest of four different values  originally posted  by 'ekkonap', a Revit user in the Netherlands, on
The formula variables were equated to the four distances, and the depth calculated as a percentage (0.25/12). This slope factor could also assigned to a parameter.
The faces of the depression may be painted with floor materials, or for simplicity a level floor may be placed into the recess. As a serendipitous effect of this modeling strategy, the slope lines are now edges which can be transformed to hidden lines with the linework tool. 

Go to the Files and Families tab above to download "GEN_Slab Depression w

Monday, April 30, 2012

Spanish Rake Tile Families

Work on the mission style project led to further development of the families posted earlier this month.

The design drawings depict a Spanish rake treatment on the gabled ends of the building. As seen in the photo below, the exterior finish is warped (over a foam filler) to the bottom edge of each rake tile.

Similar to the tile families, the filler is a face-based generic model. When placed it may be aligned with the roof and tiles with line modification commands.

When considering how to achieve this in model form, it became apparent that the previous families would have to be modified. New families have been posted in which the tiles are larger in diameter and length, and also closer to the roof surface. 

This modification also mandated a change in the method used to correct the rotation when the opposite face is selected as host. A conditional formula combined with a yes/no parameter is now used to reverse the orientation of nested tile families.

Go to the Files and Families tab to download.

Wednesday, April 11, 2012

Ridge & Rake Tile Families

Line Based Tile Families -
When using Revit on small scale residential or commercial buildings, while we do not model individual roofing tiles, a more realistic appearance can be achieved by adding ridge, rake, and hip tiles to the model.

These families are derived from some very familiar ones which have been around for several years, their origin now obscure. The individual tiles are created using the geometry 'swept blend' with external profile families. This choice allows the profiles to be mirrored parametrically.
The tiles are nested into a line-based generic family and arrayed with constraints to the beginning and end. The tile spacing is variable 

I modeled a Revit roof for each roof pitch that we normally encounter, then used sections and detail views to determine the appropriate angle for each hip and ridge type.
Families are placed by drawing on a selected roof face, or by selecting a roof edge using the 'pick line' tool. (In some cases the families install opposite of the intended direction with this method.)

As the line-based family may be hosted to either face, a yes/no parameter is included to reverse the profile.

The roof tile material may be assigned in Object Styles > Generic Models > Roofing Tile.

With line based families, the Trim, extend and align tools are active and facilitate placement, as depicted in this short video...
The families may be downloaded from the 'Files and Families' tab above.

Friday, March 23, 2012

Symbols in Keynote Lists - Strange but True

Among the drawing efficiency improvements that were introduced in the Systems Drafting era was the concept of  "Keyed Notes". 

This technique evolved from the desire to standardize and streamline repetitive notation. Symbols on the plan replaced the hand-lettered notation, resulting in clean drawings and efficiency in making changes.

Eventually the numbered lists were produced by copying a type written master onto adhesive backed transparent mylar. The typewriter did not draw a circle around the number, nor did we.

Fast forward to CAD. The keynote symbol is an attributed block and it is so cool because I can double-click on the object and edit its contents. Since all the notes are placed as separate objects, or perhaps as multi-line text, it's easy to copy the same block vertically to create the numbered list.

Revit was designed to solve the deficiencies of CAD. In this case it is the link between the numbered list and the symbols on the drawings. In (vanilla) CAD there is none.

Neither software can automatically place the symbol in the numbered list. Only Revit can update the list automatically, transparently, in both directions.

It is a widely accepted convention that a legend should be included to explain the different types of symbols used in a set of construction drawings. The keynote symbol should be included in this legend, and if it is there is no need to repeat the same information in a note list.

Wednesday, March 21, 2012

Slab Depression - Part 2

I stated that using Revit leads to expansive thinking. Often when I re-visit a recently-constructed family I add to it, enhance it or improve it in some way. When I began the previous post the drain annotation was not nested with equality constraints. That was an on-the-spot improvement. This is another example.

For the same project I also needed an L-shaped slab depression. Starting with the previous family, I added a second reference plane in each direction, and created additional instance parameters for each.

I added the slope lines and constrained their end points to the planes. That was fine as long as the floor drain was placed separately, but I realized that automatically locating it at the intersection of the slope lines was a challenge. 

After some deliberation, it occurred to me that the drain location could be established parametrically, and if the slope lines could be constrained to the corners of the object, I might also be able to lock them to the drain annotation object. This was accomplished by placing two grouped reference lines and constraining the slope line end-points to their intersection. 

New 'Offset' instance parameters were established to control the location. The drain annotation was aligned and locked to the reference lines.

assigned the slope lines to a new subcategory 'Slab Depression Slope Lines' to allow view-specific visibility control.

When the object is highlighted in the model triangular grips appear for all parameters. I have also revised the original rectangular slab depression, incorporating these improvements.

Revit is expansive. 
For all three families download from the Files and Families tab above .

Tuesday, March 20, 2012

Quick Slab Depression

I'm working on a building that has several areas where the concrete floor slab must be depressed for ceramic tile finish and sloped for drainage. It would be easy to place a couple of hidden lines on the floor plan, drop in a 2D floor drain, and be done with it. That's what I did on the first pass. I soon realized that the slab depressions would also need to be shown on several other drawings: Slab Plan, Export Plan, Enlarged Plan, etc.

The general guideline for Revit is that if an object or feature appears in more than one view...

Model it!

I created a floor-based generic model containing a void extrusion with instance parameters to control the length, width and depth. I used symbolic lines for the hidden "slope to drain" lines as I prefer them to appear in plan only. I copied the generic annotation from the Floor Drain family and used equality constraints to locate it in the center of the family. Yes/no visibility parameters (Show Drain; Show Lines) allow the appearance of these to be controlled in the model.

As with all basic Revit families, this is just a starting point. The possibility for further development is apparent. 

  • Multiple floor drains. 
  • Sloped slab using a void blend below the extrusion.
Download 'GEN_Slab Depression.rfa from the Files and Families tab above.
Like architecture, great software doesn't just happen, it is designed
Revit is designed to be expansive. Operations are consistent, logical and intuitive. Learning is incremental and the curve is steep - which means users achieve high productivity in a relatively short time.