Thursday, March 27, 2014

New Feature List for Revit 2015

Here's a list of the items that are new to Revit 2015. I've put them into my own grouping.

Big Stuff
Sketchy lines - yep, create sketchy alteration to views
Family parameter order adjustments - reorder/control parameter position
Schedules/material takeoffs - Access to Additional parameters and Grand Total customization
Revision improvements - Delete Revisions and more sketching options
View references - Reassign view reference to different view
IFC linking - Import IFC on Insert ribbon, IFC tab in Manage Links, no RFA process
Pinned element enhancements - Harder to delete pinned elements
Reinforcements for parts - Parts can host rebar (Structure)
Enhanced multi-rebar annotation - Grouping, sorting and updating of annotations (Structure)
Structural Disallow Join - Disallow/allow Joins framing and Braces (Structure)
Calculation methods for pressure drop - Haaland or Colebrook Equations, custom equations (MEP)
Tapped duct and pipe tags - Tag airflow along ducts (MEP)

Other Stuff
IFC imports - Better visual fidelity and performance and Options dialog revisions
Anti-aliasing improvements (related to Sketchy Lines)
Images in schedules - Instance and Type Image parameters can be used in schedules
Shared parameters in view titles - We can add our own parameters to view titles
Manage links dialog - Add links from Manage Links
Assembly code settings - 2010 Classification file provided or use our own
Enhanced hidden lines - View setting to govern hidden line display (Structure and MEP)
Building element analysis - Improved surface analysis and calculations (Subscription Only)
Tag improvements - Leader behavior mimics text leaders
Presentation rebar sets - Create sets to document rebar conditions better (Structure)
Reinforcement numbering - new numbering options (Structure)
Single fabric sheet placement - easy to place one sheet (Structure)
Shape Handles and Snapping - Improvements (Structure)
Setback for Structural Members - Improved adjustment (Structure)

Subtle Stuff
Ray trace usability improvements - faster, better quality and smoother
Views on sheets - Double click to Deactivate View (compliments 2014's Activate View)
Duplicate views - New naming of duplicate views
Keynoting settings - Keynote settings access easier, more obvious
Trim - Use selection box to trim extend multiple elements
Tool tips for family parameters - Create our own tool tips for parameters (max 250 char.)
Formulas - Logarithm syntax and calculation - New ln(x) Old exp(x)]
Assembly code setting - Use alternate assembly code files
Attached Detail Groups - Clipped now, not pinned due to pinning enhancements
Tags can include new Elevation at Top Parameter (for Foundations)
Enhanced analytical model - Local Coordinate System, Loads and analytical links (Structure)
Location Line Visibility - New Graphics (Structure)
Graphical Justification - New control (Structure)
Structural section properties - Catalog for profiles allows for easier analysis(Structure)
Electrical API enhancements - Create wires, add/modify wire properties and remove vertices (MEP)
US AWWA content - New Waste Water project content(MEP)
Japan Localised electrical content (MEP)

Wednesday, March 26, 2014

Pick New - Changing a Host

Shawn at RFO shared a cool tip to help deal with orphaned MEP families when their host goes missing in the linked file they were depending on. When a ceiling is deleted and new ceiling is placed in the same location instead of switching ceiling types MEP families will end up as orphaned elements.

If these orphans really need to stay in the same location but be associated with a new ceiling (or other host surface) the Pick New tool is biased toward moving them to another host. When you attempt to click on the same host they often end up changing their position.

Shawn offered a simple fix. Just use the Pin tool to put a stake in them first. Then when you use Pick New they won't move and you can select their new host. Nice!

Tuesday, March 25, 2014

The Case for Using Project Parameters

Project Parameters are most effective when the information stored with them has no direct geometric impact on the families and categories they are associated with. For example if you expect the information to alter a family's size it can't be a Project Parameter, it needs to be part of the family itself.

One example of a Project Parameter could be the horsepower rating for a motor. A family might get larger when its designed to provide more horsepower but that value alone seldom drives a specific dimension. A manufacturer will provide dimensional parameters for that and HP (horsepower) usually happens to increase as the capacity and physical size of the motor increases.

With this in mind, we can create a Project Parameter for horsepower it can be applied to one or several categories, such as, Mechanical Equipment, Electrical Equipment, Generic Model and others. Every family that we load into our project and belongs to one of those categories will inherit that parameter without first having to edit any families to add it manually. The project adds it to each family that is loaded for us. If we edit a family, apart from the project, the parameter doesn't exist.

This is a benefit but it also has a cost. All loaded Mechanical Equipment, for example, will inherit the parameter (Horsepower for example) even if it is irrelevant to some of the mechanical equipment families. Generally the benefit outweighs the cost though.

A Project Parameter can be created isolated within a project or based on a Shared Parameter. Shared Parameters are like definitions stored in a dictionary. The Shared Parameter file (dictionary) provides a common single location to store parameter definitions we are likely to reuse. That means Project Parameters (and Family Parameters) can be created from a Shared Parameter (definition) stored in the dictionary (shared parameter file) or just created and stored in an individual project.

Whenever we want to create a parameter in families and/or projects AND apply a tag to display the same parameter value and/or include it within a schedule we must create and use a Shared Parameter. If you'd like to read older posts about parameters check out my SUMMARY POST.

Monday, March 24, 2014

Revit Worksets Error - Element has been Deleted

David Baldacchino shared an issue with me that he's run into recently.

Here's how he described the issue.

As a standard, we create our central files with the option "Specify" so users are prompted to pick which workset to open/close when creating a local file. If a user is in a local RVT 2013 file AND THEN another user tries to open a detached copy in Revit 2014 to upgrade it (whether doing this directly from the central file or a local file), the Revit 2013 user/s will start getting errors stating that elements were deleted from the central file when they try to edit. They are also locked out of touching anything until the upgrade process finishes. This issue does not happen if the Specify option is not used. This behavior is not expected and undesirable.

Sounds like it can be avoided, if the file needs to be upgraded, by keeping people out of the active project file. I'm not sure I'd want someone to upgrade a project that someone is actively adding new work to with the previous release. Regardless if it occurs it explains why the error message Elements have been deleted appears.

Sunday, March 23, 2014

Revit INI UI Calculator

When Revit 2014 offered a single installation (just called Revit) with all of the discipline specific Revit features included (aka "one box") the development team provided a calculator to determine the correct variable to assign a parameter value in the Revit.ini. This value is used to configure the user interface according to the disciplines that we want users to see listed on the Ribbon tabs. Since there are numerous combinations that are possible they are using "bit" logic to arrive at a single unique value that defines how the ribbons should be configured. The calculator provides a simple way to arrive at that number. Check the boxes and use the value at the bottom.


When the help documentation team began migration to the present online help delivery software (moving from the previous WikiHelp format) they decided to abandon the calculator since it seemed few people were really interested in it or using it. I complained that as software developers they ought to realize that it was already serving a niche among niches in the first place. It remains a niche item and I'm grateful they've recently taken the time to restore/re-code it to work in the new help documentation system. It's subtle but every little bit helps.

It can be seen HERE.

Saturday, March 22, 2014

Revit MEP Family Wisdom - Family Origin

Another tip snipped from the Revit Family Editor Tutorial for Revit 2008 as mentioned in the previous post. You can download the PDF copy HERE.

Fittings (duct, pipe, conduit and cable tray fittings) expect the instance origin of the family to be the (projected) intersection of the connectors. In most cases for fittings, there is a point on the fitting where all of the connectors (if extended into the fitting) will collide. Fittings expect this collision to be placed at the original intersection of the Center (Front / Back), Center (Left / Right), and Reference Level work planes. For this reason, it is good practice to pin these reference planes before beginning to build the family.

Friday, March 21, 2014

Revit MEP Family Wisdom - Shape Handles

Another tip snipped from the Revit Family Editor Tutorial for Revit 2008 as mentioned in the previous post. You can download the PDF copy HERE.

Shape handles are not used for Revit MEP system families but they display by default when you create a new family. If shape handles are not hidden and they are inadvertently dragged during your modeling session, the geometry or placement of the family will be adversely affected. This can create unexpected results, especially for duct fittings. This is because, unlike pipe fittings, duct fittings use formulae that reside in the family rather than in an external lookup table file to determine size.

It is highly recommended that you hide all shape handles for Revit MEP families before using them in a project. To hide the shape handles in a system family, you need to open the family in the Family Editor and specify the Is Reference instance parameter as Not a Reference for all reference lines and all reference planes that are used for that family.

Before on the left / After on the right

Thursday, March 20, 2014

Revit MEP Family Wisdom - Connector Arrows

Another tip snipped from the Revit Family Editor Tutorial for Revit 2008 as mentioned in the previous post. You can download the PDF copy HERE.

Connector arrows indicate the direction of a duct or pipe (extrusion) when it is being created to complete a connection. It does not indicate flow direction. In most instances, a connector arrow points outward away from the object to which the connector is associated. Otherwise, the duct or pipe when created will pass through the object geometry instead of away from it. You can modify the connector arrow direction by selecting the connector and clicking the flip arrows.

Wednesday, March 19, 2014

Revit MEP Family Wisdom - Connector Orientation

This is snipped from the Revit Family Editor Tutorial for Revit 2008 as mentioned in yesterday's post. You can download the PDF copy HERE.

Connector rotation is a critical part of connector placement. The connector orientation determines the correct orientation of the objects that are automatically inserted on the part. Although this is not as important for round connectors, it is extremely important for rectangular connectors such as those on rectangular duct fittings. Remember that for rectangular connectors, the rectangular connector must be oriented so that the width is assigned to the face that is on the X and Y axes. The height is not on these axes. If rectangular connectors are not rotated properly, the rectangular duct fitting will be inserted improperly, creating an unexpected result. You may find it easier to rotate connectors in a 3D view, where the part geometry is clearly visible.

Tuesday, March 18, 2014

Revit MEP Family Wisdom - Connector Placement

This is snipped from the Family Editor (Imperial) Tutorial provided with the Revit MEP 2008 release. I don't believe there is a more recent version of it unless they have incorporated some or all of it into the current help documentation online. Some of it certainly was part of the previous WikiHelp site but I haven't checked to see if everything is now part of the new online help yet.

You can download PDF copy of the tutorial HERE.

When you place fitting connectors, the primary connector must be placed on the face that is on the X-axis. You can verify this by viewing the face in a floor plan view. Unexpected behavior can result if the primary connector is not properly placed relative to the other connectors, and that if all connectors are not properly rotated and linked.

The primary connector is the one that has the crosshair or "X" in the connector graphics. You can also Reassign Primary on the ribbon when the connector is selected.


This pearl of wisdom also appears at the beginning of the Creating an Elbow Family topic:

Fittings are among the most complex families to create. It is recommended that you methodically follow the steps and periodically check your work against the exercise. It may take a longer to complete this exercise as compared to other exercises in this tutorial. Even if you have created parametric families before, creating system families typically takes more time to complete.

Monday, March 17, 2014

Revit MEP Annotation Scale

In the settings dialog for duct, pipe, conduit and cable tray Revit provides a parameter called Use Annot. Scale for Single Line Fittings. There is also a second related parameter called "XXX Fitting Annotation Size" where "XXX" is the element involved. As the parameter names suggest they are related to single line views, where the detail level is either assigned to Coarse or Medium for their category (duct/pipe/conduit/cable tray).


When the first parameter (previous image) is checked Revit will check (turn on) the parameter that each fitting or accessory has, called Use Annotation Scale, each time they are placed in your project.


The purpose of these related settings is to provide a consistent symbol size regardless of view scale (in single line views). This way the symbols don't suddenly become much larger or smaller in different scale views than the symbols we show on our legends. When you see this occur you'll need to double check the settings and the individual parameter values for each affected family.

If the option is off in the Settings dialog then every fitting or accessory you place has its own Use Annotation Scale setting unchecked (off). It's a global on/off switch to enable the feature. You can still interact with each fitting or accessory's own parameter to enable the annotation scaling feature or vice versa. When you change the view's scale you'll find that the annotation symbol graphics will not remain the same printed size.

The following image shows one ball valve accessory that has had its Use Annotation Scale turned off. It's larger than the other fittings and accessories in the view, they adjust their symbol size so they are the same size when the views are printed on a sheet. The lower plan view is using 1/4"=1'-0" scale and the upper one is assigned to 1/8"=1'-0" scale instead.


This image is both views placed on a sheet for comparison.

Each of these MEP element has its own settings; Duct, Pipe, Conduit and Cable Tray. I think the most appropriate setting for each is checked (on). The second parameter XXX Fitting Annotation Size is usually 1/8" ( or 3.0 mm) (stock setting in templates) and that's probably a good starting point. You may find it necessary to adjust it slightly by increasing or decreasing the size to get the ideal symbol graphics.

The other thing to keep in mind is that the single line graphics in these families are defined by Model Lines that are set to be visible in Coarse and Medium Detail Level but to not be visible in Fine Detail Level. This makes it possible to generate the single line diagrams in 3D views too, otherwise there would be nothing to see. It also makes it a bit trickier to get the same graphic size when comparing one fitting or accessory with another.

This is quite different from electrical families by comparison because those primarily use nested annotation symbol families for their symbolic graphics. Those already conform to Revit's annotation behavior of maintaining their printed size. It also explains why, for electrical components, 3D views (and elevations/sections) do not show the plan graphic symbols we are accustomed to seeing.

Wednesday, March 05, 2014

Which Phase Filter?

There are several phase filters that stock templates come with. Sometimes people aren't certain which ones to use or why they exist. There are three options that affect how elements are influenced by Phase Filters: By Category, Overridden and Not Displayed.


By Category - Project Object Styles and/or view's Visibility/Graphics Overrides govern.
Overridden - Revit will change the appearance of elements based on the Phase Graphics Overrides settings (see next image). Note that a Filter (View not Phase) applied to a view can still influence an element affected by a Phase Filter.
Not Displayed - Yes, this means elements are not displayed in the view.


What does it take for Revit to regard an element as being New, Existing, Demolished or Temporary? It varies according to the Phase of the view we see it in and which Phase Created and Phase Demolished parameters values are assigned to it. The following conditions define which Phase Status an element belongs to in a given view. For the following images assume this view is assigned to Phase New Construction and that we are looking at the Phasing parameters of four different walls.

New - Element's Phase Created parameter is assigned to the phase of this view and the Phase Demolished parameter is set to None.


Existing - Element's Phase Created parameter is assigned to an earlier phase than the phase of this view and the Phase Demolished parameter is set to None.


Demolished - Element's Phase Created parameter is assigned to an earlier phase than the phase of this view AND its Phase Demolished parameter is assigned to the same Phase as this view.


Temporary - Element's Phase Created parameter is the same phase as this view AND its Phase Demolished parameter is also assigned to the same phase as this view.


Any given element can belong to one of these four Phase Status in any given view according to the Phase parameter of that view AND its own Phase Created and Phased Demolished parameter settings. Phase graphics depend entirely on creating views for each appropriate phase and creating elements so they are assigned to the correct phase and then altered so their Phase Demolished parameters are assigned as required, if required.

Getting to the title of this post finally, each view has a Phase Filter parameter. What follows is my take on why I'd use each of the stock Phase Filters.

None - It's not a Phase Filter in the dialog, it's a choice in the list of Phase Filters within a view's properties. We use this when we don't want any Phase settings to affect the elements in the view. Everything is displayed according to either Object Styles or Visibility/Graphics Overrides.

Show All = This filter can't be altered or deleted. It means show us everything WITH Phase graphic alterations applied. NEW elements are governed by Object Styles (or possibly Visibility Graphics overrides) AND it overrides Existing, Demolished and Temporary elements. Use this filter to help see everything mixed together AND altered so each Phase Status is obvious. It is NOT a typical way of producing traditional documents but it CAN help explain relationships very well.

Show Completed = We're done! We don't want to see any graphical bias toward new or existing work, they should look the same. We don't want to see any demolished or temporary elements. We want to use this to show the finished design after construction is done. We could think of it as a view of "As Built" conditions if the model is kept current through construction.

Show Previous and New = We want to show new construction information in context against existing features but without Demolished or Temporary elements. This is ideal for New Construction views.

Show Previous and Demo = This is the filter to use for typical demolition documentation, existing features altered to show where demolition occurs. New work and Temporary work are not shown.

Show New Only = This is useful when we want to give a hint of future work. We can isolate and override graphics in a view to prepare a view for overlaying over another view on a sheet. When we overlay this on top of a new construction plan we'll see how they relate to each other despite the fact that Revit has no "future" phase.

Don't be fazed by phasing!

Monday, February 10, 2014

View Worksets

View worksets are created by Revit whenever a view is created. We don't need to do anything. When we add annotation to views they are assigned to the view workset. Using the library metaphor they are like shelves for annotation books (dimensions, detail lines and detail components, text, tags and symbols). Building elements like walls, doors and windows are associated with User Created Worksets and we do manage them. We don't manage View Worksets.

We don't have to deliberately borrow a view workset as a separate task either, it just occurs as we do things within an active view or to a view's properties. If we change a view's property, like Detail Level for example, we become a borrower of the view workset. If we move a tag in a view we borrow the annotation from the view workset. Revit evaluates our actions and responds with the necessary element borrowing.

It is reasonable to say that we can ignore View Worksets (also Families and Project Standards Worksets), as seen in the Worksets dialog. It is also technically true that we can make any of them editable deliberately, for example by using the workset dialog, but it isn't necessary because Revit lets us transparently borrow view properties and elements as we interact with them in our project.

It IS important to make sure we relinquish View Worksets (true for all worksets too) when we use Synchronize with central.

Friday, February 07, 2014

Workset Names

Via email I was asked,
"We are probably all familiar with names like Core, Shell; or Core-Wing1, Shell-Wing1 for example. We have been discussing using the Omni-class table 21 with 7 categories and 3 levels. For example a workset name would look like this: 01 10 00 Foundations. Would you agree with taking this approach?"

My fear, whenever we start talking about using coded naming, is that we are going to have too many worksets and create additional bureaucracy. I wrote a post called How Many Worksets do I Need. I described one warning sign as having to scroll the list of worksets.

I don't have any objection to being organized. I do caution against creating extra work for each of us by getting too granular with worksets. Using OmniClass numbering might work well if the highest levels are sufficiently distinct to be useful.

My measure is, "Are we are better off for taking the trouble to do it?" That's a vague answer I suppose. I know enough to know I don't know everything. That means there probably are projects that would benefit from using that approach.

I'd know it is the right choice if we are going to be better off afterward.

Wednesday, February 05, 2014

Open File Project Version Warning

I wrote a post in November that complained about Revit not asking if I really wanted to upgrade a project before going forward. In response Harry Mattison wrote some code (and I wrote another post) and made a solution available through his Udemy API class.

Since then I've used it so much that I've been starting to think it's part of Revit. I was using another computer the other day and was confused for moment when Revit didn't ask first, puzzled until I remembered..."oh, yeah...Harry's app isn't this computer". (sad face)

Well Harry has made a new version of the app available HERE and has decided to use a Pay What you Want approach as a test to see how well that works for him and us. You can read Harry's blog post and explanation of features HERE and here's his YouTube video.


Tuesday, February 04, 2014

Two Minutes with Rolling Offsets

Revit doesn't let us quickly create rolling offsets for piping or conduit, at least not in an uninterrupted process as we are sketching consecutive segments. In the past I wrote about a related concept called a Conduit Kick. It isn't that they don't want us to do it its just that Revit is biased toward creating vertical and horizontal runs. This means sketching a run of pipe and changing elevation usually creates something like this instead. The example on the left is good while the right is bad.


This video shows how to create a rolling offset for both pipe and conduit. The Routing Solutions tool works for pipe (and duct) but not conduit. We can also use the option Ignore Slope to Connect for pipe, duct and conduit. The resulting rolling offset does not abide by any rules for specific angles or slope. It's easy to create a sloping section between two elements as long as they are in the desired location, offset from one another correctly and at the elevations you need. The rolling offset just can't be created as we sketch from segment to segment. We need to place the two lateral runs and then return to create the rolling offset section.



Btw, there have been a few tweets on this subject focused on creating an app to help us cope with rolling offsets. Jeremy Tammik (The Building Coder) has written about it and wrapped up his posts with THIS ONE. Harry Mattison (Boost Your BIM) also inquired about it via Twitter but I don't think he's put anything to code about it yet.

Monday, February 03, 2014

Change a Family's Category

Most of the time we can change a family's category. We can open the family, click Family Category and Parameters and choose a different category.


An exception to the rule is when we attempt this with a family that is already assigned to the Structural Framing category. Revit will let us think we've succeeded until we try to use the family in a project or reload it.


The special Revityness of structural framing prevents this transition. If you've already loaded and created an instance of the family in a project Revit will generate an error and invite you to delete the family type(s). The moral of the story is "don't because you can't".

Saturday, February 01, 2014

Scope Box Issues with Disciplines

When we assign a view to Mechanical, Electrical or Plumbing disciplines a Scope Box gets treated as an underlay element and its graphic display is also affected. This image is of a mechanical view and a scope box, only two sides of the box are visible (it's been like this since 2012 at least). Since it is regarded by Revit as an underlay element if I choose to disable the Select Underlay Elements option (new in 2014) I can't select the Scope Box either.


There isn't much we can do to counteract this graphic quirk except to deal with scope boxes in views where they aren't graphically harmed. Most of the time people want to hide scope boxes faster than a litter box when guest arrive. For offices that don't show a scope box in printed documentation it isn't an issue. If you really want to show it then it might be necessary to create an annotation symbol or detail component that you can use to compliment the Matchlines that are usually associated with scope boxes.

Keep in mind that each Scope Box has a Edit button for Views Visible (button is in the Properties Palette).


This dialog governs which views the scope box will be visible in or not. If you find you can't see a scope box in an elevation for example then double check these settings. You'll probably find that it is set to be invisible in the view.


As mentioned in the first line of the dialog in the image, Scope Boxes are automatically visible in 3D views and in other views where they (the scope box) intersect the view's cut plane. This changes dynamically, if the scope box is altered so it comes into contact with a view's cut plane it will change from Invisible to Visible without any additional effort on our part. We can use the dialog to force either condition to be persistent however.

Wednesday, January 29, 2014

Concrete Railings and a Newel Post

I wrote about some concrete railing and balusters in 2008, maybe you remember seeing this image? It's one of several in that post.


I neglected to post a copy of the newel post family. It was a separate family that I just placed so I could sketch railings between them. Over the years I've been asked to share it but until today I couldn't find it. I stumbled across it while looking for something else I made years ago, they were in the same folder though I'm at a loss for why. Regardless I've added it to the list of samples to download in that post and it can be downloaded right here too.

Download the Newel Post (83.5 KB)

Tuesday, January 28, 2014

A Little Quick Area

If I need to find the area within some sort of boundary the first expectation among AutoCAD users is "Where is the Measure tool in Revit?" There is a Measure tool but it measures distance between a couple points or a chain of points. It doesn't deal with Area.

For that we can use a Region, either Masking or Filled. I sketched a Masking Region using an arbitrary boundary within a plan that isn't already clearly defined as a separate room or space that could easily provide an area to me. I'm imagining a quick draw response to my boss looking over my shoulder and asking, "How much area is there between this, this, that and that?" Start region, sketch with the Chain Option on, Finish Sketch - "There is 375.46 SF sir."


I can just delete the region once I've found the answer. If I create the region in a working view (one that isn't getting printed on a sheet) I can just leave it there for awhile so when the boss comes back and says, "How much area was that again?" I've still got it and only need to look at its Area parameter. A floor could do the same thing, same number of clicks and it also knows perimeter and volume.

No it isn't a tool called Measure Area but the task and click count is at worst an extra click, maybe two compared with the Measure Area in AutoCAD. A keyboard shortcut and it's no more effort at all. It's the same only different.

Edit/added: I mentioned in a comment that the reason Area exists/is a parameter for regions is in response to users requesting the Measure Area tool in AutoCAD.

Tuesday, January 21, 2014

Accuracy

Every now and then we get nervous about the results we see in schedules or in dimensions. I received an email a few months ago asking about an error they observed in the length of a wall. They exported from Revit so they could examine the model against others with Navisworks. They saw a wall that is 10 meters long reported a length of 10.000000000001 meters in Navisworks. That extra one would need a lot of friends to add up to something we could actually see with our eyes. It's still worrying?

A thread at RFO today popped up regarding the accuracy that dimensions were showing. In this case the project units were adjust to 12 decimal places too. The dimension was reporting extra info in the 12th digit too. I replied there that it's a floating point math issue. I also wrote that I believed that Revit only calculates to six digits places but limits displaying values to 12 digits. I was wrong and you'll see what Leonid explains if you follow the link in a moment.

Chris replied with some great links, one of which I remembered reading but couldn't recall where (AUGI naturally) at the time. This is one where Leonid and Irwin weigh in on Accuracy (Revit Founders).

Regarding that thread at AUGI I particularly liked Irwin's explanation of the magnitude of the error being discussed. He wrote:
...The difference you are seeing is approximately one part in 10 to the 14th power -- it is around one ten thousandth of the diameter of a hydrogen atom. Revit uses double precision numbers for all calculations (as do all CAD systems), and they are only good to around 14 or 15 digits.

Regarding your concern about angles, if an error of this magnitude were introduced into the angle between two walls, and the length of the walls was the distance from the Earth to the Sun, then the error in the distance between the ends of the walls would be around 1 mm...
These are the other links that Chris shared:

Lahey - Floating Point
Double Precision floatin Point format - Wikipedia
What Every computer Scientist should Know about Floating-Point Arithmetic. Warning Chris says it may hurt your head!

From the Lahey site I found this snippet interesting (with my added emphasis):
...Floating-point representations and arithmetic are inexact, but I don't believe that is particularly troublesome to most programmers. Many input values are measurements, which are inherently inexact, so the question about the output values isn't whether there is error, but how much error should be expected...
And this (keeping in mind these are written from a programmer's viewpoint):
  1. Only about 7 decimal digits are representable in single-precision IEEE format, and about 16 in double-precision IEEE format.
  2. Every time numbers are transferred from external decimal to internal binary or vice-versa, precision can be lost.
  3. Always use safe comparisons.
  4. Beware of additions and subtractions that can quickly erode the true significance in a result. The computer doesn't know what bits are truely significant.
  5. Conversions between data types can be tricky. Conversions to double-precision don't increase the number of truely significant bits.Conversions to integer always truncate toward zero, even if the floating-point number is printed as a larger integer.
  6. Don't expect identical results from two different floating-point implementations.
My general observation is that it is much more complicated than we think it is to codify the stuff we take for granted, so called simple things like a dimension of 4'-0" or an area value like 12.53 SF.

Monday, January 20, 2014

Watch for Users Overwriting a Central File

Last week I wrote a post about the Create New Local option being disabled and what that can mean. In response Harry of Boost Your BIM wrote an example macro to catch us when we try to overwrite a central file with our local file. Can't help but wonder why Revit doesn't catch this sort of transaction already? I don't know if Harry plans to share this macro. He may offer it as part of his new Part 2 API Class at Udemy?


Friday, January 17, 2014

Revit and Your Computer Network

Is my Network optimized for Revit? Maybe? A real answer is more than a brief post can cover. These are a few things to avoid.

Don't...
  • Put Voice over IP (VOIP)on the same server
  • Put Exchange Server (email services) on the same server
  • Put any other resource hungry applications on the same server
  • Assume that because accessing Word and Excel files work great that Revit will be
  • Buy expensive hardware (like Riverbed equipment) without investing in the implementation of it too
  • Ignore server side patches and updates
  • Trivialize computer networking and technology
For example, I've occasionally run into small offices that are using a workstation as their server (peer to peer). This is usually a bit taxing on its resources and the OS of a workstation is not optimized for concurrent users and sharing data as well as a server OS. It can be even worse if that workstation is expected to run Revit too. If that were the case then I'd expect to run into saving and "access" conflicts quite often.

Assuming we're using a real server for Revit project files we can still benefit from putting Revit projects on a dedicated server. Don't make Revit compete with resource hungry applications or, if using a dedicated server, any other applications. That's a recipe for "muffins that won't rise". Hopefully your firm has a great EyeTee admin looking after your computers and Network. If not, then consider changing your current situation soon.

Thursday, January 16, 2014

Create New Local Option is Disabled

When the Create New Local is disabled one of these four culprits are usually to blame:
  • The file does not use worksets (occasionally to blame)
  • The network connection/resource is busy, or disconnected (likely culprit)
  • Someone is creating a local at the same moment (less often, but happens)
  • Opening a file created in a newer version of Revit (less often) [added per a comment]
  • File is a Local file (user copied a local over a central)
  • The network path at each workstation is not the same as each other (very likely culprit)

This is an earlier post about this issue, it's called Creating a Local File - Clue to a Problem.

These are some other Local File posts.
Local Files - How, How Often and Where
Local Files
Working in the Central File
Why Does my Filename include the word Central?
Local Files - How Often

Wednesday, January 15, 2014

Local File Location

Can a Local File and Central File be in the same folder? Sure.

Revit doesn't really care if a local and central file are in the same folder, as long as Revit doesn't think they are the same file. I do it all the time when I'm doing testing at home. As long as I let Revit create my local file with a unique name it doesn't care where the files are. In a real office setting it doesn't make any sense to put a central file on a workstation. It also doesn't make any sense to put Local files on a server either.

Usually EyeTee wants nothing important on workstation so they can schedule regular backups. The reality is they are getting a backup of the project, the Central File. Local files are nothing more than a "working copy" of the project and they ARE meant to be perishable. If you heed the advice on this blog you are already creating a new local every day or, like me, every time you start work on a project.

Tuesday, January 14, 2014

Visibility Post Summary

This is a collection of posts regarding visibility in a general sense. They are either literally about visibility issues and features or somehow related to "seeing" things.

2015 Temporary View Templates
2013 Stacking Views on Sheets
2013 Elements are not Displayed or Missing (Troubleshooting guide)
2013 Text Editing and Zooming
2013 Workset Visibility and Linked Files
2013 Linked Files and Visibility Graphics
2013 Visibility Graphics Dialog and Using Current View Only
2013 Apply Versus Apply and View Templates
2013 Revit 2014 Schedules Pending Gotcha
2013 Fittings do not Look Right
2013 Why Use So Called Working Views
2013 View Discipline

2012 Applying Visibility Graphics Overrides
2012 Filter Pesky Levels
2012 Linked Files have Instance and Type Parameters
2012 Hide those Connectors
2012 View Range Redux
2012 Visibility Pecking Order
2012 Scope Boxes
2012 Color Fill Legends Mixing with Stairs

2011 Printing with Temporary Hide Isolate
2011 Revit Links as Underlays
2011 Control Visibility of Image via Size Parameters

2010 Managing Visibility of Linked files
2010 Workset Visibility in Linked Files
2010 Guide Grids
2010 Smaller Grids in Large Scale Views

2009 Video Four View Range Top Offset
2009 How View Range Affects Various Views
2009 Where did my Mass Go

2008 OK and Apply
2008 Aaah the old Invisible Line Trick eh 99

2007 Sketch Lines and Visibility Graphics
2007 visibility of Grips
2007 Shaft Opening and View Range
2007 Future Phases

2006 Workplane Visibility Tips
2006 Workset Visibility in Linked Files
2006 View Range and Floors

Friday, January 10, 2014

Schedules can be in a Group


Alex at RFO mentioned in a thread that he has created a Group with schedules on sheets to help manage them when he needed them on more than one sheet. I wouldn't have thought it was even possible and I probably wouldn't have thought to try that even if it occurred to me.

Schedules that are on more than one sheet can end up in different locations so a Groups origin could make it a bit easier to ensure a schedule or schedules are arranged the same way from sheet to sheet.

Something to think about, hat tip to Alex!

Thursday, January 09, 2014

Show History and I am Working in Central

We can use the Show History feature to see the save history of our project. If worksets are enabled we'll be described as Working in Central if we are also using Worksharing Monitor. This happens if we browse to the central file to access the save history. If we do this while working in a local file we'll be listed twice in Worksharing Monitor, once for your local file and another for the central.


No worries, we are not really in the central file, at least not in a position to save or alter anything. Review the history and close it when done, no harm done.

Wednesday, January 08, 2014

Always Unless - Interacting with Dimensions

It is fun to tell someone how to behave with elements and dimensions in a project and then the next day talk about the family editor and contradict that advice.

For example in a project we select an element like a wall and then interact with the dimension value (permanent or temporary) to move it. If we select the dimension first we end up in the Dimension Text dialog instead. Revit thinks we want to override the dimension with text or add a suffix/prefix.

In the family editor however we can select a dimension that has a parameter associated with it and interact with the dimension value directly to change a referenced element's position.

Just remember, It's the same only different or It's always like this except when it isn't.

Tuesday, January 07, 2014

Voids and Material Orientation

When we use a void to cut a solid sweep it will affect the orientation of a material applied to it. Here's a sweep that is not cut and has a wood grain material assigned to it. I've got a void poised to cut it.


Here's the orientation of the material after using Cut Geometry.


This happens to a sweep but not an extrusion. The material sort of flashes when Cut Geometry is used but it doesn't change the orientation of the material.

If we create a Revolve solid and apply a material it will look like this when we use the End Angle setting of 180 degrees (or 360).


When we change the angle to 45 degrees the material orientation changes.


Then this happens when we apply a void using Cut Geometry, it fixes the orientation. Well it fixed the orientation of the "dome", not the "steps".

Quirky squared by subtle

Monday, January 06, 2014

Double Up on Keyboard Shortcuts

This is lifted from the RFO Tips and Tricks forum and a contribution by Mark Balsom. He's reused the same letter combinations to deal with starting and finishing sketch based elements. For those who are unaware (or not) you can assign the same shortcut keys combination to more than one command.

For example, assign EE to EDIT "...x..." as in Edit Boundary and Edit Profile for example. Keep in mind we can just double click on sketch-based elements to accomplish the same thing now (in 2014).


You can do the same with FF for FINISH instead of clicking the Green Check Mark.


You can do the same with CC to CANCEL instead of clicking the Big Red X.


In use it looks like this:
  • Select a floor, type EE (Edit Boundary), type FF when you are finished
  • Select a wall, type EE (Edit Profile), type FF when you are finished
  • Select a roof, type EE (Edit Boundary), type FF when your are finished
  • ...or if you decide to cancel the current sketch based editing session, type CC (Cancel "...x...")

Here's an extra tip
You can also Cycle through (review and select one) all the available commands that are associated with the first letter of a keyboard shortcut. Type a letter and look at the Status Bar. Revit shows the first command associated with that letter. In this image you can see what happened when I type Z.


Use the left/right arrow keys to Cycle through any other commands that also share that first letter. It cycles through (displays the commands) them in alphabetical order.

Saturday, January 04, 2014

Autodesk Robot Structural Analysis Book is Available


Ken Marsh published his first book dedicated to Autodesk' Robot Structural Analysis Professional 2013 (it's also the first book for it). He intends it to be your essential introduction to its features, functions, and workflow. He's confident that you will be able to master the tools you'll need to make Robot work for you.

Some of its highlights include:
  • Demystify the interface
  • Manipulate and manage Robot tables like a pro
  • Learn how to use Robot's modeling tools
  • Master loading techniques
  • Harness Robot automated load combinations
  • Decipher simplified seismic loading
  • Discover workflows for steel and concrete design
  • Gain insights to help troubleshoot issues
He's prepared easy guided exercises to help get you up to speed quickly.

Ken is a structural engineer and was, until recently, the Revit Structure Quality Assurance Analyst at Autodesk. He works hard to be a champion of Building Information Modeling (BIM) technology for the Architecture, Engineering, and Construction industry. In addition to writing this book he is currently working to promote fully integrated structural analysis, design, and documentation by developing custom Revit API add-ons, providing software training, and consulting services for firms as they transition to a more fully BIM-centric process.

I appreciate and admire his willingness to write about a topic, that must be a niche among niches, catering to structural engineers. I was also curious about whether a 2014 edition is going to be available, he replied that he's working on the 2014 edition now.

All the best with the book Ken!

Friday, January 03, 2014

RTC Events Calendar for 2014

The dates and locations for the next three primary conferences and three adjunct events are as follows in the order they will occur in 2014.


RTC DTS FEB 2014 (Design Technology Summit)
(Invitation Only)
Location: Denver, CO, USA
Venue: Westin downtown Denver
Dates: February 5 (Wednesday) - 7 February (Friday), 2014


RTC VisCON 2014
Location: Melbourne, Victoria, Australia
Venue: Pullman Melbourne Albert Park (same as RTCAUS)
Dates: May 26 (Monday) - May 27 (Tuesday), 2014


RTC Australasia 2014
Location: Melbourne, Victoria, Australia
Venue: Pullman Melbourne Albert Park (same as VisCon)
Dates: May 29 (Thursday) - May 31 (Saturday), 2014

RTC DTS JUNE 2014 (Design Technology Summit)
(Invitation Only)
Location: Schaumburg, IL (Greater Chicago)
Venue: Renaissance Schaumburg Convention Center Hotel (same as RTC NA)
Dates: June 16 (Monday) - June 17 (Tuesday), 2014


RTC North America 2014
Location: Schaumburg, IL (Greater Chicago)
Venue: Renaissance Schaumburg Convention Center Hotel (same as RTC DTS June)
Dates: June 19 (Thursday) - June 21 (Saturday), 2014

RTC Europe 2014
Location: Dublin, Ireland
Venue: (a royal venue, tba soon)
Dates: October 30 (Thursday) - November 1 (Saturday), 2014

Please mark your calendars accordingly. Hopefully you will be able to attend one, a couple, several or even all of them. I'm looking forward to seeing old friends and making new ones at these events in 2014!

Thursday, January 02, 2014

Copy Monitor Walls and Openings

I've mentioned in the past that we need to be careful using the Copy/Monitor (C/M) tool on walls when we use the option Copy windows/doors/openings.


When Revit examines the geometry of the family used to create the opening in the C/M'd wall it looks at the overall geometry to define the opening's size. That's usually not good because trim on the face of the wall does not define the opening required. The stock door families (and windows) are good/bad examples of this in action.

This is an opportunity to bring up another advantage of creating doors like described in A Door's Life, they behave when you use C/M. Why do they behave? There isn't any native geometry in the host door family. The frame, door panel, swing and hardware geometry are all based on nested families and the C/M tool doesn't "see" them when it creates the equivalent opening in the C/M'd wall.

Here's a comparison based on stock and not stock doors, in plan view.


The openings created from the stock doors are as large as the trim elements that surround the opening of the door (3" wide trim). The openings for the not stock doors as as large as the opening in the host family and all the nested components are designed to fit inside the opening that's used in the family. The nestedness of all the components prevents them from being detected by C/M.

Here's the elevation of the same doors.