Wednesday, September 5, 2007

Annotation scaling and annotation scale list in AutoCAD 2008

Annotation scaling is one of the greatest news in AutoCAD 2008, AutoCAD 2008 LT and all verticals. Text, Mtext, Dimensions, Leaders, Multileaders (new), Tolerances, Blocks, Attributes, and Hatches can now be presented in different ways depending on the annotation scale.

Things that been quite difficult and error prone before AutoCAD 2008 are now really easy. Typical usages are details in different scales. Room numbers on plans in different scales but with different text size as well as location when needed.

Notice below how the room text is visualized in different sizes and angles and if you make a change to the room description it changes on both views.

image

Heidi Hewett's Blog has a whole series and a white paper on the subject

Lynn Allen also has an article on Cadalyst. Circles and Lines: Awesome Annotation Scaling.

Here are some hints for the AutoLISP programmer or scripter.

The standard scale list in AutoCAD 2008 is unfortunately hard coded so you cannot change that one. You can set up your templates having only the scales you want though.

The scales can be added and deleted using different methods.

One is using the command line (especially useful if limited to AutoCAD 2008 LT) but that has it's problems depending on if they already exist or not exist:
(command "-scalelistedit"
"add" "1:2" "1:2"
"add" "1:5" "1:5"
"exit")

(command "-scalelistedit"
"delete" "1:2"
"delete" "1:5"
"exit")

This can be useful to reset the scale list to default entries:
(command "-scalelistedit" "reset" "yes" "exit")

The scale list is saved in an object dictionary so you can access it using:
(dictsearch (namedobjdict) "ACAD_SCALELIST")

If you want to delete all manually added scales:
(dictremove (namedobjdict) "ACAD_SCALELIST")

Some samples how this is implemented can be found in the newsgroups.
ScaleListDel.lsp here, Here and here.

Other related posts:


Some of the latest blog posts

Subscribe to RSS headline updates from:
Powered by FeedBurner