Category: Tip

Software and technology related pointers and help for end users and support teams.

  • Wow. A Whole Year. And Patterns

    A year since I’ve written anything.  Nuts.  I’m not one for resolutions… so I’ll just leave it at that.

    I was struggling trying to make some fill patterns manually today.  Have you ever tried to do those by hand?  Yeah, I think Rainman worked up the syntax for those files.  So, making them by hand is obnoxious.

    Quick Google search found a piece of software that I could buy for around $180 to make the pat files.  Come on!  There has to be something free!

    Then I came across this post.  The post is old, and it forces you to use ACAD, but it gets the job done very nicely.  I had to remember how to draw a line, but once I did I made some pattern files to pull into good old Revit.  And it was MUCH faster than doing it by hand.

    Ideally, I would think that the geniuses at Autodesk Labs would make some online HTML5 application that lets you draw and save a pat file right in your browser, but that’s me dreaming again.

    Hey!  I’ve dipped my to into C# and done some coding for Revit!  I’ll try to share that fun soon!

  • This… Is My BIM Stick!

    Every so often it’s important to pull out the big guns.  I have always said that any kind of graphics or documenting standards are written in mud.  Almost stone, but changeable when necessary.

    There are some things that we do, and I bet there are some things that you do, that should NOT be done differently.  Default materials should not be changed, default annotation should not be messed with, most anything in the Object Styles in a project shouldn’t be touched.  This is just bad for other users on a project and can get annoying and waste time.  There are some things that just shouldn’t be messed with for other reasons; dimensions come to mind here.

    There are ways to override or fudge your dimensions in Revit, and I’ll outline the two most common here.  NOT so you do it, simply so you know what to look for.  There should be NO REASON to override dimensions, and I will arm wrestle anyone who disagrees.  I may lose the arm wrestle match, but I am right.  If you place a dimension string and it says 5′ 2 1/32″, and it’s supposed to be 5′ 2″, DON’T change the dimension… FIX THE MODEL.  Always always always fix the model.  Always.  Got it?  Great.

    The first way to fudge your dimension is to override the accuracy on it.  By default, it’s going to take your project settings, but you can get into a dimension type and change that accuracy.  I’ve seen several times when someone has a 1/32″ (that’s our default project accuracy) show up in a dimension string, they don’t bother fixing it, they override they change the ROUNDING under UNITS FORMAT to something lower.

    CHEATERS!!!  What happens?  The rounding gets confusing, sometimes rounding up when it should go down.  And then an overall dimension string won’t add up.  And you will look like you don’t know how to simple arithmetic.  And I don’t need to tell you what happens when a contractor finds dimension strings to not add up…

    The second, far more devious, way of fudging a dimension string is to override the text.  For the last few versions of Revit, you could double-click on the dimension and add some text as a prefix or suffix, or even replace the dimension value with a piece of text.  Revit is mostly smart and will not allow you to replace the value with another number.  See?  Revit doesn’t want you to cheat!  But there is a way…

    Let’s say your dimension value is 8′-6 1/16″.  You want it to be 8′-6″.  Double-click on the text and you will see the value in there.

    Here’s where the CHEATERS come in.  If you toggle “Replace With Text”, and type in 8′-6″. (see that little period after the text?), Revit will allow it.  You will have a tiny dot on your dimension string, but it’s changed.  Congratulations, you have figured out a way to keep your sloppy modelling skills intact and not bother to make anything accurate.  Good job!

    Not much infuriates me (that’s not true at all – I’m a pretty bitter person… and Crocs… MAN how I hate those shoes…) but there is no excuse for this sloppiness.  This is absurd.  Model it right, and if it’s not modeled right, fix it.

    So, how do you police this kind of thing?  First of all, whenever you see it, point it out to everyone on the project team.  Don’t outright mock them for cheating, but come close.  And bring up that you know another firm that is still dealing with litigation from a job where they cheated on the dimensions.  Even if you don’t.

    What I like to do (with apologies to Bruce Campbell) is pull out my BIM Stick.  I keep it for special occasions.

    Seriously, this is my BIM Stick

    We have a weekly Revit meeting where we discuss issues and problems.  I have only pulled out my BIM Stick once, and it was to discuss this issue.  Will it change the cheaters?  I hope so.  I also hope it stresses to the interns and younger designers how important this is.  I know, I’m so sweet passing on my knowledge to future generations of bitter BIM Monkeys.

    So, get yourself a BIM Stick and wave it around only for the big topics.  Hopefully it will change the minds of some folks, but it will definitely make you feel better.

  • Underlay Action – Slice, Slice, Baby

    So, I’ve found myself with some lovely time spent working through the joys of Underlays.  We just had some confusing goings ons, and I thought I would try to get to the bottom of it.

    Underlays can be very useful for figuring out what is going on above and below.  And on top of that, any Linework tweak you do to an element in an Underlay, will stay on when you turn the Underlay off!  That’s the kind of thing that gets a geek excited!

    From a previous event, I decided I should spend more time in the Help docs, to see if that could lead me the right way.  This was the most important thing the Help File had about how they work:

    Displays another slice of the model under the current plan view. That slice of the model can be from above or below the current level. The underlay appears dimmed and is visible even in hidden line. The underlay is useful to understand the relation of components on different floors. Normally, you would turn off the underlay before exporting or printing the view. You set an underlay by specifying a level. The slice of the model between that level and the next level up displays. Three of the underlay options (Current Level, Level Above, and Level Below) are relative to the current level. All other choices are absolute. See Halftone/Underlay.

    So not much.  Had to crack open Revit and play for a while.

    I would like to preface, this is all based on minutes and minutes of vast experimentaiton.  If someone can point me out as wrong, PLEASE DO.  I would love to know this stuff.

    First off – Underlays don’t show linked models.  I tried copy/monitor levels, tried messing with Visibility Graphics, no way could I get a linked model elements to show in an Underlay.  It just didn’t exist as far as the Gods of the Underlay were concerned (Hades, Pluto, Osiris).

    Next up is a clarification of the Help File.  Both setting the Underlay and the Underlay’s own view range are dependent on levels… but they MUST be levels that have a floor plan or RCP associated with it.  I’ll clarify.

    When you go to select what Level you want for the Underlay, only levels with plan views will show in the list.  In the below snapshot, you see the dropdown for Underlay only showing “Level “1 and “Level 2” (and “None”), when clearly the elevation indicates Level 4, Level 5 and Roof.  Level 4, Level 5 and Roof have no plan or RCP associate with them.  If I were to create a plan, then that level would show up in the list.

    The Help File also indicates that the “slice” of what the Underlay shows is from the level you select to the level above that level.  The Help File does NOT indicate that the “level above” must have a plan associated with it.

    So, in the example above, if “Level 1” is selected as the Underlay, the “slice” will go from Level 1 to Level 2.

    If “Level 2” is selected, then the “slice” will go from Level 2 to… infinity… or wherever Revit decides to stop the model.  I didn’t test this.  I simply put a wall 100′ above Level 2 and it did indeed show up when the Underlay was set to “Level 2”.

    As soon as a plan or RCP are created for a level above Level 2, then the “slice” will shrink.  If that plan or RCP is deleted, then the “slice” will grow again.

    So, I would propse the Help File be tweaked.  First of all, get rid of that line about “Three of the underlay options (Current Level, Level Above, and Level Below) are relative to the current level.”  I don’t even think that’s an option.  Beyond that:

    The slice of the model between that level and the next level up, with an associated plan view, displays.

    And maybe add a picture of me giving someone a high five while actually drinking Slice.  That would be cool.  Does that drink even exist anymore?  Now I’m thirsty…

  • Font Mishaps – or – Where is that crazy BOX key

    Our good buddy Revit uses the Windows installed fonts for all of its font needs.  This isn’t just for fonts used in your text and dimensions, but also fonts that the ribbon and help files and other “software-y” stuff needs.

    A former co-worker sent me an email recently with an odd problem that he was having on a PC in Revit Arch 2010.  The ribbon, the drop downs, even the search text in the help search box was showing up as a bunch of boxes:

    Box menu items

    What the what?

    Having spent some time in the Windows Character Map program (don’t ask – I don’t like to relive those days) I recognized those boxes as characters that a font didn’t have access to.  Except in this case, it was ALL the characters.

    Must be a bad font, or missing font in Windows.  But what font was Windows trying to use to fill out the Revit interface?  Time for some digital sleuthing…

    • A quick Google search turned up nothing worthwhile. 
    • A fast check in the help file brought up nothing as well.
    • I did a screen capture of my non-boxey interface and uploaded it to http://new.myfonts.com/WhatTheFont/ to see if the “magical cloud” could figure it out.

    My searches turned up nothing.  So I made a guess.

    When we deployed Office 2007 in our firm, I remember reading about Microsoft getting hooked on Calibri for the new default.  So, I wrote my coworker back and told him to see if Calibri was installed on that PC; if it wasn’t install it… if it was, delete it and install it again.

    That was the trick!  Calibri is the magic font that will allow you to actually read your Revit interface.  Once he installed the font and restarted Revit, everything showed up fine.

  • Quick Tip – Your Model Looks Great

    We sometimes (all the time) find ourselves needing to adjust the appearance of our model elements in a view to get stuff to look… well, just plain right.  And then there are the times when we cut a detail view and frankly, the model just isn’t looking too good at that scale and we just want to hide it all and draft over top of it.  Heartbreaking, but it happens.

    You can open Visibility Graphics and select all your families and change the appearance right there, but Revit does offer up a quicker way to make some very basic wholesale changes to your model elements in your view.  Under View Properties, there is a parameter called “Display Model”, and frankly, it’s one of those parameter names that scares people.  Normally, I’d say it’s good to follow that gut feeling and NOT push the button, but this button is benign.  At least, it’s easy to undo.

    Hitting the dropdown will show three options, each one hopefully self-explanatory.

    • “Normal” will not make any changes to your model elements in this view.  It will look “normal”
    • “As underlay” applies your project’s underlay appearance override to every model element in the current view
    • “Do not display” just turns off every single model element in the view

    A very simple function, but very powerful when you need to make this kind of change.

    Display Model parameter

  • Quick Tip – Dangerous Duplicate Views

    This is a nasty one.  We have a lot of users that will duplicate a view to save time.  We’ve actually been endorsing a course of action of NOT duplicating views.  We’ve found too many things that folks forget about tweaking on a new view (this of course, does not go for Duplicate as Dependent) that was duplicated from another view.  Categories turned off, elements hidden, etc.

    But here’s the nastiest.

    We had a batch of section tags that looked like they were being censored.  The detail number and sheet in the tag had lines through them.

    Lines through tag

    That’s not good.  It looks like the world’s worst censor got their hands on our drawings.  And it just looks plain dumb.

    Turns out what happened is that the view was duplicated, for one reason or another.  WHEN A VIEW IS DUPLICATED THE VIEW TAG IS DUPLICATED AS WELL.  The second view was never put on a sheet.  So we had two section tags on top of each other.  One that was on a sheet and one that wasn’t.

    If you duplicate views, pay extra attention to the tag for the original view.  Scoot it out of the way to find the duplicated tag and hide it.

    Before anyone speaks up, yes we could just not print unreferenced views, and we often do this, but the above is still sloppy, and we are always trying to keep our Revit model clean.  Because a clean model is a happy model.

  • Quick Tip – Smile for the Camera!

    I am always surprised when I find a very experienced Revit user unaware of some feature or function in the software.  I shouldn’t be surprised, because I’m often finding new things and a piece of software like Revit is amazingly complex, and knowing every single facet has to be a Herculean effort.

    In this light, I teach a class for our firm called “The Top 10 Things All Revit Users Should Know” where I spend a couple hours going over some tips and tricks that can get forgotten or overlooked.  Can you guess how many tips and tricks?  That’s right!  64!  Why that many?  Why not 10?  Because there are WAY more than 10 tips and tricks that I expect all our users to know.

    I am going to drop a handful of those tips throughout some upcoming blog posts.  There’s a good chance you know the tip.  If you do, don’t roll your eyes and make rude noises, just let the rest of the folks out there go “huh, I didn’t realize that.”  Hopefully, everyone will learn something and we will (checking business-speak manual) “raise all the boats together.”

    (Just shut up and get to the tip)

    You place a camera view in your model.  It’s just slightly off kilter, maybe not looking far enough up, or maybe not looking enough to one side or another.  You could select the view, click SHOW CAMERA, go back to the plan view, spin it, change the properties to adjust the height, etc etc.  But it would be a lot easier if you could just pivot that camera on its tripod while you are in the view.  I’ll break the tension.  You can.

    Here’s the trick.  To simply “pivot” and “rotate” the camera on its tripod, you need to select the CROP REGION BOUNDARY for the camera view (so it’s highlighted), then in the view, use your SHIFT-middle-button pan and rotate to simply look around.  If the crop region is NOT selected, then you will just be doing a typical rotate where you move around the model.  This will work for any 3D view, not just a camera view (it’s just more impressive in a camera view).  Give it a spin to see how it works.

    Get it?  Give it a “spin”?

    Sorry.  Next post I’ll try to be pun-free.

  • Our Mama Bear Size Revit 2011 Deployment

    Heads up!  This post is kinda heavy on the IT end of things.  EDIT: Code snippets included at bottom… You’ve been warned.

    Just this week I finally got around to pulling the trigger on our 2011 installation of Revit Architecture, MEP, and Structure.  This goes to about 120 PCs over six offices in the firm. 

    We aren’t the big boys with 1,000 designers and a team of 20 people on our IT staff, one whose specific job is to figure out how to deploy software.  Neither are we the little guys with only five employees and you can carry a CD to each desk to install new software in the course of an afternoon.  We’re right in the middle.  We’re the warm porridge of firms, which offers some interesting “opportunities” when trying to deploy and manage software.  (You like that?  I pulled out my business speak thesaurus and got the word “opportunity” in place of the word I wanted to use!) 

    The question then is, how to deploy software to over 100 desktops without having to walk/drive to each one.  That might take some time.  We’re going to walk through how we overcame some of these hurdles and hopefully you can learn from our mistakes or maybe pick up a tip or two. 

    First up, simply make the deployment.  Using the deployment wizard, we tweaked the install and set file locations and other wonderful settings and saved it all to a central location (we call it our “Library” server).  This Library drive gets replicated over the WAN to each office every night.  This was a lot of data, so we made the deployment on a Friday to copy over the weekend.  Pushing three different installs of Revit to five remote offices wrapped up the following Thursday. 

    Then it was onto a test.  We had a spare PC in the “lab” (this term is used loosely).  Remember all those file locations and other great settings tweaked in the wizard?  Turns out Revit decides to ignore a lot of them during the actual install.  Hooray!  This write-up on the AU Website gave us a hint to tweak an install, then copy the Revit.ini file around AFTER installation.  Good tip.  I also like how at the bottom he says that “Installing Revit is a three-part process”, then lists 5 steps.  But I digress.  And seriously, we got some good tips here.  Be sure to read it if you are prepping your own deployment.  EDIT: Matt Stachoni sent a note to let me know that there is another location for the above mentioned deployment article here.  This one is better and has not been edited.  And five does equal five. 

    So.  We now will need to copy the Revit.ini file over to the PCs after the install, if we want to get the most customized bang for our buck – file locations, template locations, etc.  Great.  Let’s tackle that later. 

    Aside from the ini file, the install goes fine.  How are we going to get it on everyone’s machine?  In the past, we tried to use the msi files, and push the deployment through Active Directory to the PCs.  We ended up with many failures due to some missing prerequisites.  Then trying to push the prerequisites before the install got difficult. 

    At the completion of the creation of the deployment with the wizard, you get a nice shortcut that you run that points to the install executable with all the tweaks that Revit will try to ignore later.  This is the most solid way to get the deployment out there, because the install executable includes the prerequisites.  So we really just want to copy this process. 

    However, we couldn’t just have people double-click the shortcut because
    1) our users are not admins on their PCs
    2) I still want to PUSH this out as much as I can, so everyone gets it.  If I ask folks to double-click on something, it won’t happen on probably 30% of the machines, then I’m back to what would be a manual install 

    We looked at RUN AS batch scripts, but anyone could open a .bat file and see the login credentials of an admin user pretty easily.  We needed something that could build a RUN AS wrapper to allow us to assign a login script that would give users temporary admin rights to install the software. 

    Enter one of my favorite tools, AutoIt

    If you do any IT management or work, you should download this now and look through some examples.  It’s a scripting platform that can do many things and will compile a nice little .exe file when you’re done.  Oh, and it’s freeware. 

    Writing an AutoIt solved all four problems – .exe file that we could assign as a login script, allow to run with different credentials, run the install exe and arguments exactly like the wizard shortcut, and at the end of it all we copy over the tweaked Revit.ini file. 

    Using a script wrapper is how we are making the majority of our installs now, and we have a nice generic script that we just tweak for each one.  There are actually two scripts, one local and one network due to an odd issue with Vista and Windows 7 UAC, but it works.  The network file is run first, which copies the local file over to the PCs C: drive.  Then the network file runs the local file under admin credentials.  The local file actually runs the install exe.  When it’s all done, we write a little text file to a folder on the C: drive, this way the network file has something to check to see if the software has installed, otherwise it will just run every time the user logs in. 

    That’s the basics of it.  We’re happy with what we’ve worked out and have had several successful deployments using the above method.  If there’s some interest, I’ll post the actual script files up here later (EDIT: I’ve posted them below in this article), just let me know via comments or email.  But right now, this post is getting pretty long, and I’m getting kinda tired.  That bed looks good.  No not that one, that one’s too hard.  No, that other one looks too soft.  I’m talking about the one in the middle there. 

    Yeah, that one looks just right.


    OK, so here’s the code I mentioned above, with some notes in there and the fie locations genericized.  Watch out for line-wrapping and weird HTML format crap if you copy and paste.  As always, this is provided as-is and I would strongly recommending testing before throwing into a production environment.

    The first is the network script which is the actual file that gets assigned as a login script.

    Local $TxtFileName
    Local $TxtFileName2
    Local $LauncherFilePath
    Local $LauncherFileName
    Local $LocPath
    Local $LocLauncher 
    Local $SoftPath

    ;create a temp folder to copy the local wrapper to – make sure that people have execute rights to it
    DirCreate(“c:\temp_wrapper”)

    ;the next location is where we write/check for the text file to see if the script should run completely
    $SoftPath = “C:\WINDOWS\OurSoft\”
    $LauncherFilePath = “(network path of the local wrapper file, not including the filename, ending with a \)”
    $LocPath = “c:\temp_wrapper”

    $TxtFileName = “(name of text file to see if the wrappers have already run”
    $LauncherFileName = “(name of local wrapper file)”
     
    ;checks to see if the text file exists and if it does, it does nothing – if it doesn’t it runs the else
    If FileExists($SoftPath & $TxtFileName) Then
     
    Else 
     $LocLauncher = $LocPath & “\” & $LauncherFileName
    ;copies the local wrapper from the network location to the location folder – needed to get around UAC issues with Vista and 7
     FileCopy($LauncherFilePath & $LauncherFileName, $LocLauncher)
    ;runs the local file as admin
     RunAsWait(“(admin login)”, “(domain)”, “(password”, 0, $LocLauncher)
    EndIf

    Next is the local file that gets copied over and run with the RunAsWait.  Some of these strings I just copied directly from the shortcut that gets created by the deployment wizard.

    ;UAC prompt
    #RequireAdmin

    ;name of the text file to create when local wrapper has run
    Local $TxtFileName
    $TxtFileName = “C:\WINDOWS\OurSoft\(name of textfile from network wrapper)”

    ;belts and suspenders – warms up the network location before the install
    DriveMapAdd(“”, \\server\share)

    Local $ProgramFile, $argFile, $command
    ;location to the setup.exe file copied from the shortcut
    ;does NOT include arguments
    ;filename shortened to 8.3 filename
    $ProgramFile = FileGetShortName(“\\server\share\path to install\AdminImage\Setup.exe”)
    ;location to the ini file from the shortcut
    ;does NOT include /qb /I etc, ONLY the ini file
    ;filename shortened to 8.3 filename
    $argFile = FileGetShortName(“\\server\share\path to install\AdminImage\install.ini”)
    ;the following string rebuilds the link from the wizard created shortcut with all arugments
    $command = $ProgramFile & ” /qb /I ” & $argFile
     
    RunWait($command)

    ;checks for the revit.ini file to exist
    ;if not, loop until it is installed
    ;was necessary to wait until AFTER install was complete before copying final revit.ini file
    While FileExists(“C:\Program Files\Autodesk\(Revit flavor)\Program\Revit.ini”) = 0
     Sleep(30000)
    WEnd

    ;once revit.ini exists locally, copy our tweaked one over top of it
    FileCopy(“\\server\share\tweaked-revit.ini”, “C:\Program Files\Autodesk\(Revit flavor)\Program\Revit.ini”, 1)

    ;creates and writes a note in the text file stating that the install is done 
    FileOpen($TxtFileName, 1)
    FileWriteLine($TxtFileName, “Revit 2011 installed.”)
    FileClose($TxtFileName)

    Hope this helps as a jumping off point for everyone.

  • Gridline Gridlock

    A question I find myself answering a fair amount is “Who put the cat in there?!”; more Revit related, I get asked “what the heck does that little ‘3D’ by my grid bubble mean?” a lot.

    Gridline bubble with 3D toggle
    What the heck IS that?

    The “3D/2D” button by gridline heads is often a source of confusion, partially, I think, because of the nomenclature they used for the system.  It’s a good system, but really has nothing to do with the traditional definition of 3D and 2D.  Semantics has often been an issue in Revit (looking at you, “Save to Central”) that often the team does a good job of fixing (looking at you, “Synchronize with Central”).  So far, the 3D/2D toggle is not one of them.

    So, if you click a gridline, you will see a tiny “3D” up by the grid bubble.  The terminology is flawed.  Essentially, what the “3D” means is that this grid bubble position is shared throughout the project, and if you move it, you will move it in other views as well, and wherever you put it, that’s where it will show up in any view where that grid bubble is marked “3D”, or just outside the annotation region, depending on which is shorter. 

    When you click it, it changes to “2D”.  This basically means “View Specific”.  So, if you move the grid end now, it won’t affect any other views.  This view is it.  You will see a ghost grip where the “3D” of the gridlines is.  Dragging the head back to this will reset it to “3D”. 

    Now, let’s say you click the 2D on for some of your grid bubbles and you move them and you really like the positioning in this view, so you want to copy it to other views.  That’s where the “Propagate Extents” button comes in to play. 

    Propagate Extents button

    Select the gridlines you want to copy and click “Propagate Extents”.  You will be prompted with a list of parallel views.  Select the views you want to copy to and then the gridlines position settings will be copied onto those views.  It’s a one-time thing for the “2D” gridlines, so if you were to tweak the position after propagating, you would need to re-propagate to get those new settings pushed over.

    Do I have a solution for the 3D/2D terminology fiasco?  Not really.  The only better icon I could think of would be a little chain to replace the current “3D” and a broken chain or chain with a slash through for “2D”… for “linked” and “unlinked”, get it?  Is it better?  Who knows.  Will it ever change?  Who knows that either.  But hopefully the above clears it up.

  • Help Your Project Manager – Before He Kills you

    To our chagrin, we have discovered that our number one hurdle with transitioning to Revit is not the software learning curve, it’s not the user’s need to shift to a new workflow mindset, it’s not even convincing PICs or the board that it’s time to buy new licenses.  It’s the Project Managers.

    You need to be sure you fully educate your non-production PMs about how a Revit project will go.  Best bet is to have someone on the team who has already gone through a Revit project.  Someone who is willing to gently, or not so gently, let the PM know what is possible, what isn’t possible and most importantly what makes sense.

    Your typical PM of this nature simply knows that they usually get plans at this week of the project, elevations here, and then sections here.  With Revit, the workflow and document production is shuffled all around, and that’s a good thing!

    We have had more than one Revit models that were on the edge of failure because a PM demanded X, Y, and Z at very specific times.  Why?  Because it’s what he always had gotten before.  He didn’t want to hear about what made sense.  The team was too new to Revit to argue, so they built the model to support X, Y, and Z.  Unforunately, in Revit, they should have been focusing on A, B, and C at that time.  So the model suffered, and the team spent more time picking up pieces later on simply to accomodate this PM’s backward demands.

    Every firm has at least one PM like this.  There is no easy way to deal with him or her.  Just keep a close eye on the model and work hard to make sure that there are no drastic flaws in the workflow that can bite you down the road.

Design a site like this with WordPress.com
Get started