Saturday, April 20, 2013

Cunning plans: How to get Autocad to work smarter?

One of the frequent insults hurled at Autocad is that it is not an intelligent program.

Problems with Xrefs
I have tried to steer my drafting life clear of xrefs, for the reason that when I'm gone, some IT Preventer of Information technology will rename the main network drive or someone else will rename directories.  All this will cause blank drawings to appear!  Having said that, maybe the idea of "relative paths" is a good approach. Of course, if you have the files all in the same directory, then this is not a problem.

Say you have an item, say a magnet box, and this is to be placed in a layout, then the only way to keep any automatic updating is to use the Xref mechanism in Autocad. This means that the item being xreffed in needs to be "pure", that is, it has to be just a 3d model and no more.

This then means that you cannot have things like section planes in that model, or any other extras like 2D sketches.

Organizing your Assembly to go into  a Layout Drawing

Yes, you can organise your magnet box drawing to be a series of layout tabs for each of the parts.

There are problems with this approach though:  You have to have all your parts with distinct layer names so that you can use freezing and thawing on a per viewport basis, and while this is possible, setting it all up seems time consuming.

I have devised a layering system that copes with multi-level layouts. It makes layers like:

LEVEL 1 - FLOOR
LEVEL 1 - INTERIOR WALLS
LEVEL 1- PIPING
LEVEL 1 - BEAMS
....and so on. This seems to work well, and is heavily reliant on lisp routines to make it go.
The advantage is that there is a structure to the layer naming.
 
To tie this all in with the layer names you have to create for the above system is also a pain.

This can be got around by calling layers names like MAGNET BOX LID LEVEL 1, and when the xref turns up in the layout, then the lisp line becomes (command "-layer" "t" "*LEVEL 1*" "") ie it uses the * as wild cards.

Any Other Options? 

One that might deserve some consideration, is to have a "pure" model, in which every item is on layer 0, so that when it arrives in the xref, it picks up the layer it is to be, and appears in the correct colours for that layer. Simple.

To enable parts drawings, this pure model would have all the individual parts (each a separate drawing file) xreffed into it.
The nice thing about this system is that you could have a separate assembly drawing of the magnet box, and any sub-assemblies could be easily arranged. In the assembly drawing you can go ahead and do sections.
OK, so what is the downside?  A great pile of autocad drawing files is what you would end up with, instead of one drawing with heaps of layout tabs on it. Coping with printing out a drawing set is probably not as bad as it seems, as you can use saved sheet sets to deal with this. Your drawing register then becomes a large clerical pain to fill out, that is if you decide to go down that route. To avoid this bureaucracy, an alternative to listing them in a separate register could be to maybe keep them in a directory, labelled say "150905 Magnet Box".  In the drawing register, all you need is one entry:"150905 - Magnet Box". Only the "pure" model, with a file name of 150905.dwg would appear in the main directory.