Wednesday, January 23, 2008

Maintain FontMap - Multiple Revit Flavor Version

If you read my Maintain Revit Font Map post, you'll like this one too. I modified the original code to provide for multiple versions of Revit. It is, after all, a much bigger BIM world when you include Revit Architecture, Revit Structure, and Revit MEP into the mix. So with that in mind, I rewrote the original code. Now you can update any of the Revit version FontMap files.

Hope you find that useful!


Saturday, January 19, 2008

Quick tip on "No content" build replacement for Revit

If you happen to change paths on subsequent builds of Revit, don't rely on the uninstaller to remove the Revit.ini file. It won't.

Make sure that you script the replacement or simply delete or rename the existing revit.ini to ensure that your new configuration gets installed correctly.

Note: If you choose "skip content creation" the product will automatically set the default paths to the location of the client install or default to program files....

Hint: You can edit the Revit.ini found under the admin image to fix the paths. If you rename the existing revit.ini found on the users harddrive, then your changes will get copied to the client folder install path.

Friday, January 18, 2008

Creating New Build Deployments - Tips

When a new build is available for Revit, you'll probably want to get it installed as quick as possible, but who wants to wait for all the content to be installed? During your client deployment creation select "skip content creation" and create your deployment. Aha...that seemed easy enough but unfortunately, this may result in your new build not finding the various libraries that you intend your users to utilize.

Here is a tip for you: You can predefine all the correct file locations by editing an ini file.

Navigate to your new deployment, find the "Revit Building" folder inside the "Revit Setup" folder within the "Admin Image" folder. There you will find a file named Revit.ini. This file gets copied to your hard drive's program folder when the deployment is run, so make your standard changes to this file prior to pushing your installs.

You can predefine the file locations by adding them to this ini file. Find the strings between [Directories] and [Design Pane] and edit them to point at your company standard folders.


AccuRenderRoot=\\BIM\apps\Data\Office Library\RAC
Library\RAC 2008\Content\Imperial
Templates\default.rteFamilyTemplatePath=\\BIM\apps\Data\Office Library\RAC
2008\Content\Imperial TemplatesDataLibraryLocations=Imperial
Library=\\BIM\apps\Data\Office Library\RAC 2008\Content\Imperial Library, Metric
Library=\\BIM\apps\Data\Office Library\RAC 2008\Content\Metric Library, Imperial
Detail Library=\\Bim\apps\Data\Office Library\RAC 2008\Content\Imperial
Library\Detail Components, Metric Detail Library=\\BIM\apps\Data\Office
Library\RAC 2008\Content\Metric Library\Detail Components, Training
Files=\\Bim\apps\Data\Office Library\RAC 2008\Content\Training, Haskell
Standards=\\Bim\apps\Data\Office Library\Haskell
Library\Haskell Standards\Shared Parameters\Issue_Date.txt

This will keep all your users accessing a consistent set of standard files.

Note: The installer doesn't appear to overwrite an existing Revit.ini file in that same location, so be sure to uninstall the previous build or rename this file prior to running the new deployment.

Labels: , , , ,

Thursday, January 17, 2008

Maintain Revit Font Map Standards - VBScript Function

One of the problems with supporting multiple users of Revit is to ensure that they are all accessing the same consistent set of standard support files. Some of those files are hardcoded and stored on the users local hard drive. One such file is the shxfontmap.txt file that controls how Revit assigns windows fonts to AutoCAD fonts when importing dwg files.

Note: it is critical for all your users on the same project to have the same font map or every save to central (STC) has the potential to remap fonts throught out your linked Acad files.

Here is a VBScript function that will solve the problem for you. Put it inside your "local copy" routine or call it from your startup icon to ensure that all your users always have the latest version of your company standard fontmap file.:

Make sure that you change the path to the local file if you installed into a different diretory or are running MEP or Structures. Also, change the path pointing to the master file to reflect the folder that your master copy is in.

‘‘‘ FILENAME:Update_FontMap.vbs
‘‘‘ AUTHOR: Richard Binning
‘‘‘ DATE: 01/16/2008
‘‘‘ DEVNOTE: Initial Build for 2008 products
‘‘‘ Permission to use, copy, modify, and distribute this software
‘‘‘ for any purpose and without fee is hereby granted, provided
‘‘‘ that the above copyright notice appears in all copies and that
‘‘‘ both that copyright notice and this permission notice appear in
‘‘‘ all supporting documentation.
‘‘‘ DESCRIPTION: Update_FontMap.vbs – Routine compares local fontmap with
‘‘‘ Office master fontmap file of same name
‘‘‘ USAGE: 1.) Ensure Place this function in scripted startup routine.
‘‘‘ PREREQ: None.
‘‘‘ VERSION: This version hard coded for Revit Architecture, modify product
‘‘‘ for MEP or Structures See “strClientFontMap” variable
Sub Update_Fontmap()
Dim fs, objMasterFolder, objMasterFiles, objMasterFile
Dim strClientFontMap, objClientFile

Set fs = CreateObject("Scripting.FileSystemObject")
Set objMasterFolder = fs.GetFolder("x:\RevitStds")
Set colFiles = objMasterFolder.Files

For Each objMasterFile in colFiles
strClientFontMap = _
"C:\Program Files\Revit Architecture 2008\Data\shxfontmap.txt"
Set objClientFile = fs.GetFile(strClientFontMap)
If objMasterFile.Name = objClientFile.Name then
' Got Match
If objClientFile.DateLastModified<objMasterFile.DateLastModified Then
'copy standard fontmap to local client because Master File os newer
' do nothing because Local File Newer
End If
End If
Set objClientFile = Nothing

Set colFiles = Nothing
Set objMasterFolder = Nothing
Set fs = Nothing
end sub

Thursday, January 10, 2008

Under the Radar indeed...isn't this SP4?

Don't get me wrong, I'm happy that the "January incident" is fixed, but giving this latest build the identity of SP3 leaves the original SP3 build of 20071109_2345 lost to history. I celebrated that build because of the things it fixed and because it was the first time that I didn't have to wait for the MEP release to be posted. If you saw my blog on November 19th, you'll remember the party that was thrown!

Nevertheless, the "Failed to open document" error is no more with the latest release, so create your deployments and announce them to your users. Now get back to work!

Labels: , , , , ,

Wednesday, January 09, 2008

The January Fix for REVIT Products is In...under the radar!

Looks like the fix for problems associated with the Jan 2008 bug are now available. Had problems recently opening older files? Trouble editing schedules or groups?...Install the latest build 20080101_2345 to fix these problems and more! It is definitely time to upgrade and install the latest Revit Builds! Learn about and download the latest builds using the links below.

Click on the Web Update Enhancement List links below to read about the changes and fixes provided in the latest builds.

Want to download the latest English builds directly? Get it/them at Autodesk by clicking on these links:

Don't forget to read up on the content changes. I'll include this important reminder until the next full release.

Thank You Autodesk for understanding the need to release all the disciplines tools at the same time!...

Labels: , , , , , , , ,

Tuesday, January 08, 2008

Stagger your STCs, use High Speed LAN, Face Based Families and more

Fifo - (First in First Out) -Here is an example of what the user sees when attempting to work with others connected to the central file who beat them to the punch.

It is the primary reason for the following recommendations:

  1. High Speed LAN Required - 100mbs is just not enough...standardize on 1GB LAN...Anyone working with black fiber?

  2. Stagger STC for Teams - Ensure that Save to Centrals are done on set intervals at different times for each team member.

  3. Provide Dedicated Server for BIM/Revit Projects

  4. When using multiple disciplines in a single model, ensure that hosted families are used only where necessary...otherwise Face based is the choice du jour.

Labels: , ,

Monday, January 07, 2008

Layer Set by Pick Lisp

Looking for a quick way to set a layer active? Why not pick an object that already exists on that layer! The following lisp code does just that!

(defun c:ls ()

(while (not e) (setq e (entsel))) ;get layer of item picked

(setq lyr (cdr (assoc 8 (entget (car e)))))

(command "-LAYER" "set" lyr "") (setq e nil)


Labels: , , , ,

Friday, January 04, 2008

Revit and January aren't getting along - The Fix

Follow up Instructions for resetting PC date.

You might run into problems editing groups and schedules from the project browser or opening old files. This occurs in Revit 2008, 9.1, Structures 4, etc. If you encounter a "failed to open" or "unspecified error encountered" message than set your pc clock to a month other than January and perform the same task.

Watch the following video or scroll down for the step by step how to:

  1. Double click on the system time shown in the system tray located at the lower right corner of your windows desktop.

  2. When the system date and Time Properties dialog box is displayed change the Month to anything other than January

  3. Click the Apply button then click "OK"

  4. Open your legacy file or perform your edit within Revit as necessary

  5. The system clock may set it self back automatically if you are controlled by group policy otherwise follow these steps in reverse to reset the date manually.

Revit and January aren't getting along

Heads up!

You may run into problems doing certain actions inside Revit during the month of January. You may be unable to open files saved from older releases. You may have trouble editing groups, schedules, interacting with the project browser....

Temporary Workaround: Set system time to any other month than January.

Permanent Workaround: Autodesk is working on it. I hope it gets completed prior to February when the need is moot.


Discussion at AUGI
Autodesk Support Services

Thursday, January 03, 2008

Use VBA to detach unloaded External References (XREFs)

Often when archiving or sending files to consultants, it is desireable to do some house cleaning prior to transmitting them. A common practice in cases like these would be to detach any unnecessary XRefs. And what is more unnecessary than a previously unloaded xref?

Public Sub DetachUnloadedXrefs()
Dim o_Blk As AcadBlock
For Each o_Blk In ThisDrawing.Blocks
If o_Blk.IsXRef And o_Blk.Count = 0 Then
ThisDrawing.Utility.Prompt o_Blk.Name & _
" is an unloaded xref and has been detached." & vbCrLf
End If
End Sub

Hope you find that useful.

Labels: , , ,

Wednesday, January 02, 2008

Kudo's to Haskell Gingerbread House Team

The Haskell Company's entrance into this seasons Gingerbread House Extravaganza won the Fantasy Gingerbread Category for a design titled: "The Three Little Pigs". The winning entry was built by the following talented Haskell employees: Dominique Caldreon, Loraine Rice, Barbara Fair, Jennifer Statlick, Jonathan Essa and Raegan Huntley (shown below)

In November, 2007 a group of Haskell employees created an entry for the charity fundraiser Rotary Gingerbread House Extravaganza 2007. It was decided to choose a popular children's book this year "Three Little Pigs." Our display consisted of gingerbread, marshmallows, M&M's, fruity pebbles, candy corns and pumpkins, sugar babies, chocolate cookie wafers, twislers, pretzels, coconut, shreaded wheat, big red gum, Hershey bars, (1) ice cream cone, graham crackers, Oreo cookies, necco wafers, lifesavers, fruit roll ups, dots, tree lollipops, marzapan, food coloring and long lasting icing to hold it all together like glue.

The Gingerbread House Extravaganza is a holiday tradition started in 2002 by the Rotary Club of South Jacksonville. Over the years more than $325,000 has been raised to assist charities such as the Ronald McDonald House of Jacksonville, HabiJax and the club's own charities. For more info see this article in the Times Union.

Tuesday, January 01, 2008

Open Explorer using current drawing as root.

Here is a short snippet of code to help you open a windows explorer window (for file management) using the currently active drawing in AutoCAD as the current folder. It is a nice shortcut to allow you to quickly find other project related files.

(defun c:this () ;Open Explorer in Current folder (command "shell"
(strcat "explorer \"" (getvar "dwgprefix") "\"")
) (princ))

To use this, make sure that you have it loaded before you call it. Then at the command line you can simply type the word "this" to launch an explorer window. Hope you find it as useful as I have.


Happy New Year - Blog back from blogspot

Happy New Year to All.

Problems have been resolved with posting to IPower based domain, so Beside the Cursor is back from blogspot. Those of you who didn't follow can resume reading here on Beside the Cursor, those of you who did follow, I thank you for your patience.

This year will find more posts and more goodies here on Beside the Cursor. Happy New Year to all!