Best of Both Worlds5 Jan, 2004 By: Eric Cooper
UNLESS AUTOCAD AND MICROSTATION merge, there will always be times when you must move drawings from one to the other. In the past, if a client wanted drawings in AutoCAD, we had to convert the drawing from MicroStation. At first this was acceptable, but over the years as more of our clients requested that projects be done in AutoCAD, this caused problems. Our staff is made up mainly of MicroStation-trained users, and all of our resources are MicroStation-based. To add to the mix, the office sometimes hires AutoCAD subcontractors for AutoCAD projects, and they have to use MicroStation once in awhile.
With these problems in mind, I began to customize both software programs to create a common feel for both so that existing and new users could move more freely from one to the other.
One of the main stumbling blocks when moving from one package to the other is terminology. For example, if you need to draw a line, you can scroll over the menus and look for a command that contains line, such as Place Line or Polyline. It gets more complicated, though, when you're looking for a certain command or function under a name you're familiar with, such as Layer, and you just can't find it because the other program calls it Level. With all the possible terms it could be called, you don't have much chance of finding it.
To begin, I edited the existing pull-down menus in both software packages and added descriptions to the more common commands. For example, I updated AutoCAD's Layer to Layer (Levels) and MicroStation's Cells to Cells (Blocks) so that users could start to understand the terminology of both packages and how they relate to one another (figures 1 and 2).
Figures 1 and 2. I edited the pull-down menus in both programs so that users could understand the terminology of each package. Here I changed AutoCAD’s Layer to Layer (Levels) and MicroStation’s Cells to Cells (Blocks).
I also moved the MicroStation Key-in window to the bottom of the screen to emulate AutoCAD's Command line and programmed the MicroStation and AutoCAD function keys to be identical. When I press
I then created common main menus and pull-down menus for tasks such as placing symbols, drawing frames, accessing printers, activating linetypes and fonts, and setting scales. I added simple routines behind the menu icons to trim lines, change layers and levels, and set line weights and thickness to meet our company and industry standards.
I created these menus and routines for both programs so that users need only be familiar with that menu to be productive in either one with minimal training. I successfully tested this with MicroStation users with no AutoCAD experience and AutoCAD users with no MicroStation experience. I gave both groups a quick guide to the layout of the new menu system on their particular program by asking them to start to draw a test drawing. I then moved them to the other program. Because they were familiar with the common menu, not only could they use the other package, they could finish the test drawing started by the previous user. When they printed the results, all the drawings were identical (figures 3 and 4).
Figures 3 and 4. I tested my new menus and routines on MicroStation users with no AutoCAD experience and AutoCAD users with no MicroStation experience. Each group successfully completed the drawing on the program they weren’t familiar with.
Another stumbling block when moving from one program to the other is setting up the background for a drawing. A good example of this is an isometric drawing, where the user must be in isometric mode for grids, snaps, and dimensions (figure 5).
To make this simple, I set up working environments, template menus, and the like, and created program start icons for each discipline. This way, a user who needs an isometric drawing can start the program with the appropriate start icon, and everything is set up automatically-isometric grid and snap, dimensions, and fonts. All the user needs to think about is the drawing content.
By using common linetypes and fonts in both packages and using the same dimension styles (figures 6 and 7) and layers/levels, converting drawings from one package to the other is a very simple and accurate task.
Figures 6 and 7. I set up common linetypes and fonts for both AutoCAD and MicroStation so users can easily move from one to the other.
Once again, I tested the setup, and it was difficult to say which drawing was created by which package.
Making sure that both systems use the same company or client symbols is another concern. All of our original symbols were in MicroStation cell library format, but we also had individual client symbols in AutoCAD format that we had to use with both programs. To complicate matters, MicroStation uses cell and block libraries, and AutoCAD doesn't.
To continue to insert symbols by attaching a cell library-which isn't common in AutoCAD-I converted to AutoCAD MicroStation drawings (figure 8) that we maintain as a record of our cell libraries. For libraries that were not recorded in a drawing, I attached the cells and blocks to new drawings and converted those to AutoCAD files.
We then used these new AutoCAD drawings (figure 9) as block libraries accessible through AutoCAD's DesignCenter, where you can drag and drop the symbols into drawings.
Figures 8 and 9. Another big issue is making sure that symbols are consistent. I converted old MicroStation drawings of cell libraries to AutoCAD drawings and used them as block libraries in AutoCAD.
Alternatively, users can insert the drawing containing the blocks into an open AutoCAD drawing so the symbols are then available for insertion. To make this method easier, I wrote all the commands and routines for symbol insertion into a menu icon for that task.
In AutoCAD, when you insert a library drawing and use a symbol, the library drawing and all the blocks with it are removed, except for the block you picked and any others already attached.
In MicroStation, any open drawing that contains cells and blocks has these cells and blocks shown (and therefore available) in the attached library when you activate Use Shared Cells.
VBA for Complex Operations
More complex operations such as inserting 2D and 3D piping fittings require a larger menu system to cover the vast range of sizes and ratings. I wrote a Visual BASIC program to pick and insert 2D and 3D piping fittings, set the layer and level for the required fluid or system, and attach database information in the form of attributes and tags. You can extract this information and add to a database later.
This is a simple program that uses If statements to generate a command string that contains Origin, Main Size, Reducing Size, Fitting Type, View, and Rating. It then sends this string to whichever program is running and loads the appropriate MicroStation cell library or AutoCAD drawing with blocks and inserts the symbol.
The library drawing then closes and all the blocks that accompanied it are also removed-except for the block in use and any previously attached blocks.
I adapted this program to be used as a 3D piping and structural program (figure 10).
By taking the existing 2D cells/blocks and making them into 3D cells/blocks, I developed a very inexpensive 3D package (figure 11).
Ahead of the Curve
This is an ongoing customization program. Every time one program adds new features, I try to incorporate them into the other program.
I hope that one day all this customization will be redundant. AutoCAD and MicroStation are already quite similar. With a little bit of joint cooperation it wouldn't be difficult for Autodesk and Bentley to produce identical menu structures and icons to make life easier for those of us who work with both programs simultaneously.
Eric Cooper is a fluids/mechanical CAD engineer for Aker Kvaerner. He has more than 20 years of drafting, engineering, and computer experience. He first used AutoCAD in 1986 and added MicroStation to his portfolio in 1989. A version of this article appeared at the CADdigest Web site.