Archives for 2018

You are browsing the site archives by date.

OCR for Construction Documents (part 1)

In this tutorial, we want to explore how to upload Sheets to BIM 360 Docs and extract some data from them by recognizing text within the title block. Extracting data from sheets might help to link our construction documents better. As we know, we could even get that data without printing by just plugging some Dynamo nodes getting parameters of the sheets. However, the intention of this article (and hopefully a series of them) is to explore some OCR tools and computer vision for object detection. We will see how that goes…

In the meantime, we will use BIM 360 Docs and try to get the best of it. The following animation shows the process of uploading a set of documents to Docs.

  1. Upload pdf to a folder inside the “Plans” section because this section breaks down PDF, RVT, and DWG files into views and sheets. On the other hand, the “Project Files” section can take any type of files like BIM 360 Team, but it will not do OCR on sheets. It will serve as a storage hub which includes viewers.
  2. Extract information by using a Layout Template. If this a new set of sheets, the user will have to select the title block area where the information is. Also, the user will have to specifically select the area the sheet number and sheet name is in the title block. The tool is assuming the set of sheets have the same size and the title block is in the same position.
  3. Publish the sheets after reviewing the documents and the data extracted from them.

It will take a couple of minutes to process in the background, but you will also receive an email while is ready to view. After this process, the attributes extracted will show up as columns and also, any view reference will be available as hyperlinks that allow jumping from sheet to sheet as long as they are under the same folder.

 

Add more attributes to your sheets!!!
It is possible to select more fields by adding more attributes. This could serve to sort your sheets by a custom attribute aside from sheet name and number,  but also to extract more important data. See the animation below.

Read More

How to Create a Custom Roof Truss

When creating a roof truss, it is tempting to use the one that Revit has supplied. The problem with that is, that truss does not include the overhang that is needed to make a roof truss. Instead, it is better to create a family in which you can manipulate to meet the needs of the project.

  1. Open up Revit and create a new Structural Framing – Complex and Trusses.
  2. Open up the front elevation and hide the level in visual graphic (VG).
  3. Create two vertical Reference plans on each side of the center axis.
  4. Add a dimension parameter for the overhangs (left and right) and lock the parameter then equal space between the overhangs with a dimension.
  5. Add a dimension parameter for the bottom chord span and lock it, then test to see if reference planes change.
  6. Using a reference line on each side create the slope of the truss and lock them to the reference planes (make sure to uncheck the chain box and align to the center plane and lock).
  7. Then add an angle dimension parameter to each slope and lock it.
  8. Add a reference plan for the top of the bottom chord and add a dimension parameter for the height of the bottom chord.
  9. Test to make sure things are working correctly.
  10. Next, create the web by using two reference planes on each side.
  11. Then create parameters for the location of the web intersections.
  12. Then enter formulas for each parameter to control the web placement.
    • ¼ of Bottom Chord – Bottom Chord Span / 4
    • of bottom Chord – Bottom Chord Span / 3
  13. Test to make sure things are working correctly.
  14. Add reference lines for the webs to each side and lock it to the top and bottom chords. Then test for function.
  15. Now using the extrusion tool create the bottom chord span by using the pick lines and trimming to get the shape, also lock the lines to the reference planes.
  16. Now do the same thing to create the top chord for each side, also add a dimension to control the height of the top chord.
  17. Now using the extrusion tool to create the web of the truss in two separate pieces. Center the web around the reference line and dimension the width of the web.    
  18. Test to make sure everything works accordingly.
  19. Now open up the left elevation and create a reference plane for the thickness of the truss and align extrusions to the reference plane. Then test to make sure it works.     
Read More

Revit Disaster Recovery – How to Minimize Loss of Work

It seems like disaster strikes at the most inopportune time: While working on an important project, right before an important deadline, when you are doing multiple things at once. We have scanned the internet and could not find an up-to-date, article that addresses these issues in one place so here you go. This article will help you minimize wasting time and effort not to mention frustration when Revit crashes occur. We will discuss why Revit crashes in the first place, along with preemptive measure you can take to keep things at bay, and finally what to do when the “blue screen” of death occurs.

Why Revit crashes?

A bit of history concerning system recommendations. Throw the recommended specs out the window since they do not help (they do not address the types of projects you are working on and your specific demand for resources). Here are some rules of thumb that may help determine if your system is up to snuff:

RAM (File size and compression (20x rule))

You may have heard of the 20x rule: Take your Revit project file size and multiply by 20, this is how much RAM you need just to run the current Revit session (not including all of the other background tasks you may have going on).

i.e. 100mb file x 20 = 2gb of RAM required

And do not forget the Linked File Sizes. You will need to multiply these by 20 as well since they all have to be loaded. It is no wonder you need to max out RAM. We recommend a 16gb minimum.

Hard Drives and Disk Storage (Virtual Memory)

So what happens when your computer runs out of RAM? It starts paging to the hard drive; however, if your computer is set to default settings, it may not meet the demand fast enough and things will come to a screeching halt.

To prepare for this, do not let windows manage your page file size (those settings are for surfing the net and word processing, not demanding BIM Applications such as Revit and Navisworks and 3dsMax and Photoshop and Sketchup… etc.). Consult with IT before making changes to your PC if you are not comfortable doing so.

Set your Cache and Paging Size to three times the RAM (3x RAM)

i.e. 16gb RAM = 48gb page file size. If you do not have this, 32gb may suffice. Otherwise, get a new hard drive, they are cheap these days or opt for a speedier SSD which will improve overall performance as Revit is disk-write happy.

Quit unneeded applications:

Sure it is nice to have that music video streaming in the background while you are working but not while you are opening a 500mb aggregate Revit file(s). Use the windows task manager (right-click on the windows taskbar) to see what is running and quit those other memory / CPU hogs:

Corrupt files or objects

No one knows how this happens, it could be related to a corrupt family (see below) or a hiccup while syncing to central. The next time you open that file, click the “audit” option and be prepared to wait a bit longer than usual, however, it is a good way to identify issues before they get out of hand. That and some good ‘ol weekly Revit maintenance procedures such as purging items and keeping an eye on file size could be in order.

Corrupt family

Just downloaded that awesome Revit family? It’s not so awesome now that it’s making things crash left and right. It could be that there are too many formulas or the hyperlinks exceed 256 characters or a number of items. When this happens, see if you can single out the culprit via element ID and modify it or get rid of it altogether (Oh and choose a more worthy source of downloading Revit families will ya? 🙂

Revit bugs

I know, I know.. Software is perfect and shipped bug-free right? In the “unlikely” event that you’ve come across a bug, I’m sure the software mfg would like for you to report it however if you are going to call support, you had better be on the latest version as that is the first question that the telephone operator is trained to ask. Identify your version by going to the help menu.. About; and/or check the InfoCenter to see if there are updates (it’s that satellite icon thingy, however, you may want to go directly to the Autodesk site just to make sure, and download other goodies while you’re at it).

 

How to avoid it?

Minimize data loss (Preventative measures)

As mentioned earlier, quit out of unneeded applications, set your page file sizes and heed the Autosave warnings:

We know by now that there is technically NO AUTOSAVE in Revit (however perusing the Autodesk app store we did stumble across a promising autosave solution), always save/synchronize when prompted (you will be glad you did) or modify the notifications (every 30 minutes for saving reminder and 60 minutes for synchronizing).

When disaster strikes

When things go awry, stay calm and Revit on…If you are one of the lucky few that are asked to “Save the recovery file?”, promptly hit “Yes” please. Then go look for a file with the suffix “_Recovery File” which should be in the same location as your original file.

The next best thing is to salvage those saves if you followed our advice earlier, or refer to a backup if your file is corrupt. (FYI the number of backups for non workshared projects can be accessed through the options button located in the bottom right of the Save as dialog).

For Workshared or Central files, first, try to access your local file which may be more recent than the central file (especially if you followed our tip earlier regarding save reminders). Local files by default are in “my documents” or check the “default path for user files” in your Revit options:

Both the local files and the central files backups are in the “<project name>_backup folder” and can be accessed from the collaborate tab using the “Restore Backup” command however never, I mean never “roll back” your project, unless you want to find a new career, instead, do a Save as and once the backup project has been analyzed, you can just make it the new central:

If you are using Collaboration for Revit (a.k.a. C4R), you can try to recover the local file referred to as the “local cache” file in the “collaboration cache folder”:

C:\Users\%username%\AppData\Local\Autodesk\Revit\<Autodesk Revit Version>\CollaborationCache

The filename, however, may be a bit cryptic so just sort by date and start by grabbing the latest one. This technique is especially helpful when you experience internet connectivity issues or when the C4R servers are down.

Journal File Location

Another place to look for backup files is in the elusive Journal file location. Sometimes, Revit dumps data here, including a partial version of your file/family that may be open at the time. Journal files and their backups may be accessed at the default location:

C:\Users\<user>\Appdata\Local\Autodesk\Revit\Autodesk Revit (VersionYear)\Journals

Or

%LOCALAPPDATA%\Autodesk\Revit\Autodesk Revit (VersionYear)\Journals

What’s in the journal file?

The journal file contains much useful information which is the reason why support personnel may ask for your journal file to make sure you are on the latest build, you have the right hardware and resources and a clue as to what happened before the crash.

Revit Build

Hardware

Memory

Errors

Recreate your last session on the fly via journal file.

Many caveats here as you may have better luck getting Congress to pass a law or to agree on a new bill, however it is worth noting that you might be able to get Revit to repeat the last session by dragging the journal file onto your Revit icon. Before you rush-out and proclaim this as the new godsend, follow some of these steps to increase your chances of getting a journal file that will play all the way through (or at least as long as possible).

  1. First, follow the Autodesk article on Revit – Creating a Playable Journal File included here for your reference.
  2. Second, as finicky as the journal file is, make sure to:
    1. not switch tasks while in Revit and
    2. avoid moving windows around or
    3. resizing windows within a session.
  3. The fewer error pop-ups you have, the more success you may have at journal file playback.  
  4. Use keyboard shortcuts whenever possible (not only is this more efficient, but will rely less on mouse pointer positions and clicks)

 

Nothing ruins your day faster than crashing and losing a bunch of work. We hope you find some value in the tips and techniques to help ease the pain, if not, just an ample reminder for all the Revit folks from time to time is sufficient. Got a disaster recovery method that we didn’t mention? We would like to hear (and so does the rest of the world), so feel free to share!

Shoutouts:

@TheRevitGeek (Brian Mackey) for his awesome journal file class and insights at http://www.rtcevents.com/bilt/na18/

@revitclinic for the multi-part journal file story on http://revitclinic.typepad.com/my_weblog/2009/03/a-journal-file-story-part-1.html

Autodesk support and knowledge base https://knowledge.autodesk.com/support/revit-products/troubleshooting/caas/sfdcarticles/sfdcarticles/Revit-Creating-a-Playable-Journal-File.html

and the numerous folks who posted questions regarding Revit’s file recovery process.

Read More

Enscape Color Bleed Tweaks

Physics-based lighting engines have been the defacto go-to for renderings in recent times because of their jaw-dropping results and ease of use.  Enscape is one of these amazing engines and is quickly becoming the visualization plugin of choice for Revit due to the real-time feedback interchange between Revit and Enscape.  One of the hurdles of dealing with any physics-based lighting engine is the issue of color bleeding.  This can happen with scenes where a strong primary color, such as red/blue/green, bleeds onto neutral color surfaces resulting in unwanted color bleed.  This article will go over ways to overcome this issue using only Enscape setting sliders.


To open the setting sliders, click on the settings button under the Enscape tab.


The general tab should present itself when opening settings. Below is a side by side comparison between the settings for the before/after images. 

Uncheck Auto Exposure
By default, Enscape will try to adjust the light exposure of the scene based on dark/light levels. Because of the settings being made later in the article will affect this automation, it is best to uncheck and manually adjust as needed.


Image settings contain the most important tweaks when dealing with lighting, color, and effects.

  1. Raise Contrast
    This setting should boost the color output which is important to do because lowering the saturation will drown out the colors.
  2. Lowering Saturation
    This will help remove some of the color bleedings from walls and ceilings but will need contrast to help bring back color to elements that fade.
  3. Raise Color Temperature
    Color temperature will either make the scene (lower) warmer or (higher) cooler. In this case, the color red is bleeding, by moving the slider to the right it helps negate the red color by balancing out the image with cooler (blue).
  4. Lower Bloom
    This setting does not impact color bleeding but due to the changes to the default lighting settings. This may be adjusted so bloom doesn’t overpower the scene and make the lit areas too fuzzy.
  5. Lower Ambient Brightness
    Ambient brightness helps provide a scene with additional lighting when the natural or artificial light is lacking.  Normally this is a great way to increase lighting but because of the color bleeding issue increasing this setting will exacerbate the red color being bounced by the lighting engine.  Lowering this slider will help prevent color bounces and reducing color bleed overall.
  6. Reduce Lens Flare
    Similar to the bloom setting, adjusting the lighting settings will have an effect on lens flare. In this scene reducing lens flare helped with the scene but it may vary depending.
  7. Chromatic Aberration
    This setting doesn’t affect color bleeding, but it does improve the believability of the scene.

The atmosphere tab allows the scene to adopt lighting based on an external scene.

  1. Horizon Preset
    This setting has an incredible effect on the color bleeding issue.  By simply switching from “Clear” to “White Ground” the scene is provided with more neutral natural light to be bounced into interiors and reduces the color bouncing by a huge margin.  This setting may be the most important setting to negate color bleeding.
  2. Reducing Fog
    This has no bearing on color bleeding but helps with being able to see the cloud because of the lighting settings.
  3. Clouds
    Again, no bearing on color bleeding, but do adjust so clouds are visible in windows, etc…
  4. Sun orb brightness
    The sun setting controls how intense the sunlight source is, reducing/increasing the slider will depend on your scene’s needs. For the article’s example, reducing sun intensity decreased the overall brightness and prevents the image from being washed out with too much brightness.

Hopefully going over these settings will provide a deeper understanding of how they impact scenes and what to do to handle future color bleeding.


Download the Revit (2016) Scene & Materials and follow along with the article.
Enscape 2.1 required

Read More

How to Add Rowlock Brick Sill to Window Family

When creating rowlocks bricks underneath windows, it is tempting to simply draw in sweeps and call it a day.  The problem with this technique is, if window moved or changes shape, those sweeps will not update which will require manual intervention. Instead, the better way of creating rowlock bricks at the window sill is within the window family. By building the rowlocks in with the windows, the rowlock will update automatically. 

  1. Select the window in the project to begin.

  1. Click edit family to edit the window family. Go to Elevations Exterior view and draw a new reference plane 3-5/8” away from the sill for the depth of the brick. Lock the Reference Plane.

  1. In the create tab select Sweep and sketch the path of the rowlock.

  1. But before drawing the path the work plane will need to be picked to draw off of. In this case, pick the new reference plane that was created.    

  2. Sketch a line and lock the line to the reference planes that encompass the window frame. Click Finish Edit Mode once done.

  3. Click “Edit Profile” under “Profile” to draw the profile of the rowlock brick. Go to the “Left Elevation” view to sketch the profile.

  4. Draw the brick sill to the preferred dimension and lock the profile to the reference plane. Draw another reference plane and lock the new reference plane to the inside face of window’s reference plane. Go back to the sweep and lock the last face to the reference plan.


  5. To test if the rowlock works correctly, go into a 3D View and it should show the brick sill. The brick sill should stretch with the width of the window.

  6. Change the material of the rowlock by clicking Material to open the Material Browser. Create a new material and call it Brick Soldier Course. In the “Surface Pattern” area in the graphics tab, click on “surface pattern”. Click Model and New to bring up the Add Surface Pattern. Rename the pattern, change the line angle to 90 degrees, change line spacing 1 to 2- 85/128” and hit OK to get out of the Material Browser.

  7. The final result after reloading the window family into the project. 

Congratulations! Now the brick rowlocks update dynamically. This method requires a bit of work to setup, but will undoubtedly save much more time down the road.

Read More

How to Batch Download RVT Models from UNIFI

UNIFI just improved the tool for batch downloading RVT models, today!
In addition to the steps to batch download, we will use “Bulk Rename Utility” to move the RVT files from the UNIFI download directory to a different folder.

Let’s start!

The next window works for .rfa files. It will not download the files in the version selected, but the base version.

Save the zip files to the desired directory.

Extract the zip files.

The image below shows UNIFI’s folder structure for Batch Downloading files.

Now, let’s use Bulk Rename Utility dig in the previous directory and move only the RVT files to a new location.

Finally, we are done!

Note: UNIFI is working on giving us more options to download our data!

Read More

Scheduling Beam Connections Using Shared Parameters

This workflow was created from a project for RM Rodgers, Inc., a subcontractor who specializes in wood beam systems with over 50 years of experience. This was one of the first projects where 3D modeling was required for coordination purposes. This article will cover how to schedule out beam connection components. Here’s a look at the schedule.

 

 

This schedule needs to reflect the everchanging conditions of the project and update dynamically. For example, if an existing connection is altered, the bolt counts and other parts change. In addition to the connection changes, the elevation sheets and B.O.M schedule must be updated.

This is your typical workflow when it comes to producing cut sheets for any manufacturer.

 

 

Manually updating every sheet in the project is tedious and time-consuming.  To avoid this manual rework, a shared parameter will provide automation. 

  1. Create family parameters for each connection in the Other category (Structural Stiffener category).
  2. Create shared parameters required for each family.
  3. Generate structural stiffener schedules for the connections.

Once you have all this information preloaded in the connection families, updates to scheduling are automated. Making it simple for the user to keep accurate counts on every component dynamically.

Read More

Workflow to Set Default 3D View for BIM 360 Team

The problem
Currently, it is only possible to control views and sheets to be published to BIM 360 Team. However, there is no way to set a 3D view as default when opening the model in BIM 360 Team. For example, in the “rac_basic_sample_project.rvt”, there are seven (7) 3D views that I selected to publish to BIM 360 Team using the tool Publish Settings in Revit (See Image below).

In this case, the default 3D in BIM 360 Team was “Kitchen” (See image below).

Background analysis
After testing on a couple of Revit files on how BIM 360 Team determines which 3D view to be set as default for the web viewer, I inferred that BIM 360 is selecting the default 3D view based on the element Id, the 3D view with the lowest Id number or the oldest view because Revit always increments the Ids before assigning them to new elements. Read more about element Ids from Jeremy’s post.

To confirm this hypothesis, a Dynamo script collected the element Ids and the 3D view names. The kitchen view has the lowest Id number from the list. See image below.

Approach to the problem
Knowing the above, the idea is to identify the 3D view we want to set as default and duplicate the rest of them so, its element Ids increment. Using Dynamo, these are the steps followed to set a new default 3d view for BIM 360 Team.

  1. Collect 3D view from model
  2. Filter the “future default 3D view”
  3. Set a new name for the rest of the 3D views only if its element Id is less than the “future default 3D view” element Id number (to avoid duplicating unnecessary elements)
  4. Rename the views that its Id numbers were less than the “future default 3D view” using a special string to further identify and remove it
  5. Duplicate the renamed views
  6. Delete renamed views
  7. Remove the special string from the name of the duplicated views
  8. Update Sheet Set including duplicated views then check publish settings
  9. Reupload the Revit model to BIM 360 Team


Download this Dynamo Script!


Disclaimer
This approach is not considering if there is a 3D view placed on a sheet. If that is the case, the 3D view will be removed from the sheet. Run in manual mode.

Results
BIM 360 Team default view was updated.

Read More

Getting Center Points of a Model or Detail Line Grid

This article comes from a question in the Dynamo Forum on how to calculate the center point of each square in a grid pattern.  

The solution is to get intersection points of the grid and triangulate them as a topo mesh. Thus, collecting the inclined curves and its mid-points. See image below.

There are a couple of python scripts in the graph to facilitate list management. Download the script here:

Or take a look at the dynamo script to adapt it to your needs.

Feel free to comment if you have any questions!

Read More