CAD PANACEA HAS MOVED TO http://cadpanacea.com
16 November 2008
AutoCAD 2009 - Bonus Pack 2 - PDF enhancements          
If you have not already heard by now, Autodesk has released "Bonus Pack 2" for AutoCAD 2009. This update includes two PDF enhancements. The first gives you the ability to attach PDF files as underlays. The second includes enhancements to PDF output.

The download is only available for AutoCAD 2009, AutoCAD Revit Architecture Suite 2009, and AutoCAD Revit Structure Suite 2009. Of course it is also only available to subscription customers.

To get this "Bonus Pack", log in to the subscription center and a link should be listed on the front page.

PDF Attach

The new command for attaching a PDF is named PDFATTACH. You can also use the right-click menu in the External References palette. If you attach a vector PDF, you can use object snaps to snap to geometry in the PDF file. This is controlled by the PDFOSNAP system variable. If the PDF contains layer information, use the PDFLAYERS command for on/off control.

You can use the PDFCLIP command to perform clipping operations on the PDF. The frame outline on an attached PDF is controlled by the PDFFRAME system variable. You can adjust the visible properties of the PDF including fade and contrast by using the PDFADJUST command.

PDF Output

A new PC3 file named DWG to PDF Bonus Pack.PC3 is created that includes the enhancements. These enhancements include increased resolution. The readme file recommends a setting of at least 600dpi. TrueType fonts are now embedded instead of converted to graphics. This should reduce file sizes of the PDF files.

Merge control settings are also available in this new driver. This is the "Lines Merge" vs. "Lines Overwrite" setting. You can include layer information in the output PDF now, and automatically display the finished PDF in your PDF viewer when the plot command is finished.

Summary

These are two welcome additions. A quick run through of each feature produced positive results.

It's a shame that this "Bonus Pack" is only for subscription customers. The enhancements to the PDF plot driver should have been included in the initial release in AutoCAD 2007 since these are basic requirements. The PDF attachment feature has been at or near the top of the AUGI wish list for a long time now. Unfortunately, non-subscription users will have to keep wishing for now.

Labels: , , , , , ,


PermaLink       Posted 11/16/2008 06:53:00 AM      Comments (2)
14 November 2008
Availability of DWG Trueconvert          
The capabilities of DWG TrueConvert were added to DWG TrueView starting with DTV2008. However, I have seen a few people still wanting to download the the old standalone DWG TrueConvert

In a previous post from April 2008, I had a link to DWG TrueConvert 2007. That URL actually pointed to DWG Trueconvert 2004. I don't know if Autodesk changed the target of that URL or what. Here are the current links as of today:

Labels: , , , ,


PermaLink       Posted 11/14/2008 06:16:00 AM      Comments (0)
11 November 2008
HTML and Images          
No, this is not CAD related, but I know a lot of CAD users dabble in other things like website creation and maintenance, specifically HTML code.

With regard for the subject, I ran into my #1 pet peeve again today, SCALED DOWN IMAGES. Note: I am not on the fastest broadband connection in the world, but I'm not on the slowest either.

I am not going to mention this particular web site, but on the main page they have a banner image that is displayed at 1038px x 146px, and its file size is 159kb. The actual image is 1920px x 240px. I copied it, scaled it to 1038px x 146px and the image size is now 38K, or about 4X smaller.

Same site, same front page, there is a 374px x 245px, black and white image, and its file size is 51kb. It is also scaled down, to 167px x 125px, and it also happens to be a B/W image (not greyscale) but its color depth is set to 24-bit. If you reduce the color depth to 1-bit, and save it as a .PNG file, the file size is now 1,498 bytes, or about 34X smaller.

One main feature of this particular website is to inform its readers about upcoming events. Do they use a graphical calendar? No. Do they have a paragraph in the middle with a date highlighted in red? No. What do they use? Would you believe MARQUEE text? MARQUEE text was cute in 1995, and it didn't last that long. It is so annoying and worst of all in this case, you have to wait about 45 seconds to read the entire paragraph of information, since it is scrolling by.. Good grief...

So I follow a link on this website and it takes me to another page that contains 54 images. The first one on the top is 798px x 598px, but I notice it is loading REAL slow... I check the properties of this image and of course, its real size is 3264px x 2448px and its file size is a whopping 3.02MB (A scaled down version saved is 145kb). It took 2 minutes and 12 seconds to download and display this page. Nobody is going to wait that long to see your 54 photos.

In summary...

  • Do not use HTML to scale your images down
  • If a photo is B/W, save it as such.
  • Do not use MARQUEE text
  • Do use PNG or JPG depending on the application
  • Do test your webpage from various connections after you are done. Just because it loads fast on your Intranet doesn't mean it is good enough for the average Joe out there on a DSL connection.


One more thing... When I go to bookmark this page, its title is "HOME PAGE". Won't help you much when you are searching bookmarks later that month...

Labels: ,


PermaLink       Posted 11/11/2008 09:22:00 PM      Comments (1)
03 November 2008
Knowledge Base question...          
Here is a new KB article that appeared today.



I just don't understand how you are going to select the Move option using your arrow keys if you can't see the menu. The solution of course is to press "M" on the keyboard after pressing ALT+Spacebar.

Labels: , , ,


PermaLink       Posted 11/03/2008 07:04:00 PM      Comments (0)
21 October 2008
Saving your drawing          
One of the most misunderstood commands in AutoCAD is the SAVE command. Note that SAVE, QSAVE, and SAVEAS all do different things.


  • SAVEAS saves the current drawing to a new file name. Example: If you are working in "A.DWG" and you run the SAVEAS command and specify "B.DWG", then "B.DWG" is created and is now the current drawing in the editor.

  • QSAVE simply saves the current drawing. If the current drawing is unnamed (not yet saved) or it is read-only, then QSAVE behaves like the SAVEAS command and allows you to specify a file name and location.

  • SAVE writes the contents of the editor to disk. It is like SAVEAS in that you get to specify the file name and location, but the currently loaded drawing remains unsaved and unchanged, even though DBMOD is reset to zero in the current drawing. Using the above example, if you are working in "A.DWG" and you run the SAVE command, and specify "B.DWG", then "B.DWG" is created from the contents of the editor, but "A.DWG" remains loaded, unchanged, and unsaved.

    The exception to this rule is that when the SAVE command is executed in an unnamed drawing, it behaves like the SAVEAS command and names the current drawing.


To confuse things even more, the pull-down menu entry titled SAVE, actually executes the QSAVE command. The SAVE command is only available at the command prompt.

Labels: , ,


PermaLink       Posted 10/21/2008 06:22:00 AM      Comments (0)
09 October 2008
DWG Trueview hidden commands          
The Cadforum has published some tips regarding 'hidden commands' in DWG Trueview 2009. Using this, I created this list of all of the available commands. Some of the interesting ones that add a bit of capability to Trueview are...



  • You can use RibbonClose and Menubar to remove the ribbon and restore the normal pull-down menus.
  • You can use the Menu command to load any menu you want, even though it won't help all that much since commands not on this list will not work.
  • The Xref/Image/ExternalReference command (they all do the same thing) opens the palette which is missing the right-click commands, but if you use the -XREF and -IMAGE commands, you can actually attach a drawing or image.
  • The Dsettings command is available.
  • The ClassicLayer command is available.

Here is the complete list.



3DCONFIG
-3DCONFIG
3DORBIT
3DPAN
3DPANTRANSPARENT
ABOUT
AI_EMPTYPRINC
ALLPLAY
AREA
BGPLOTRECEIVE
BROWSER
CAPTURETHUMBNAILS
CLASSICLAYER
CLOSE
CLOSEALL
COMMANDLINE
COMMANDLINEHIDE
DDPLOTSTAMP
DIST
DSETTINGS
+DSETTINGS
DWFCLIP
DWGCONVERT
DWGPROPS
EPLOTEXT
EXTERNALREFERENCES
EXTERNALREFERENCESCLOSE
GRID
HELP
HYPERLINKOPEN
ID
IMAGE
-IMAGE
LAYER
LAYERCLOSE
LAYFRZ
LAYOFF
LIST
MASSPROP
MENU
MENUBAR
MSPACE
NAVSMOTION
-NAVSMOTION
NAVSMOTIONCLOSE
NAVSWHEEL
NAVVCUBE
OPEN
OPTIONS
+OPTIONS
PAGESETUP
PAN
-PAN
PERSPECTIVE
PLOT
PLOTSTAMP
-PLOTSTAMP
PLOTTERMANAGER
PREVIEW
PROXYNOTICE
PSPACE
PUBLISH
-PUBLISH
+PUBLISH
PUBLISHTOWEB
QUIT
QVDRAWING
QVDRAWINGCLOSE
REDRAW
REDRAWALL
REGEN
REGENALL
RIBBON
RIBBONCLOSE
SEQUENCEPLAY
SETVAR
SHADEMODE
SNAP
STEPSIZE
STYLESMANAGER
SYSWINDOWS
TEXTSCR
THUMBSIZE
TOOLBAR
-TOOLBAR
VIEW
-VIEW
VIEWERPREFERENCES
-VIEWERPREFERENCES
VIEWGO
VIEWPLAY
VIEWPLOTDETAILS
VSCURRENT
XREF
-XREF
ZOOM

Labels: , , ,


PermaLink       Posted 10/09/2008 06:48:00 AM      Comments (0)
20 August 2008
Exploring the autolisp SSGET function - part 2          

Ok, getting back to the last (ssget) call in part 1...

(ssget "_W" 
(list 5.0 5.0)(list 8.0 8.0)
'((0 . "CIRCLE")(-4 . "<")(40 . 1.0))
)

The "_W" is the window selection method. Then we are passing it two points (5,5 and 8,8). Then we are telling it to only accept circle entities. The last two pieces tell it to only accept circles whose radius (DXF code 40) is less than 1.0.

So in summary, this bit of code will search the entire database and return only circles whose radius is less than 1.0 who also lie inside a polygon defined by the corners of 5,5 and 8,8.

The -4 group code is a special code that lets you perform relational testing. There are codes for equal, not equal, less than, less than or equal, greater than, greater than or equal, and two bitwise operators.

This type of filtering works great for locating entities on a certain layer, or that have a certain color or linetype.

(ssget "_X" 
'((0 . "LINE")(8 . "TEMP"))
)

The code above will select all LINE entities on the TEMP layer.

(ssget "_X" 
'((8 . "TEMP")(62 . 3))
)

The code above will select all entity types on the TEMP layer whose color is green (3). Be careful when filtering for color, linetype and lineweight. These filters only apply if the particular property is explicitly set. In the example above, if the color of all entities on the TEMP layer is set to BYLAYER, the selection set will be empty, even if the color of layer TEMP is green (3). 


You can use wildcard matching in selection set filtering also.

(ssget "_X" 
'((0 . "DIMENSION")(3 . "DIM##"))
)

The code above will select all dimensions whose dimstyle is DIM## (where the # represents a single numeral). For example, a dimension whose dimstyle is DIM55 or DIM39 will be selected. Dimensions with a dimstyle of DIM4T, DIM777, DIMKK, or DIM are not selected. Other wildcard syntax can be found under the (wcmatch) function in the Autolisp Reference Guide.

You may have figured it out by now, but "AND" is implied when when combining multiple filters such as above. In other words, in the above example, it's going to find entities that have the type dimension AND whose dimension style is DIM##. There may be cases were you want to specify "AND", especially if you are using an "OR" also.

(ssget "X" 
'(
(-4 . "<OR")
(-4 . "<AND")
(0 . "CIRCLE")
(40 . 1.0)
(-4 . "AND<")
(-4 . "<AND")
(0 . "LINE")
(8 . "ABC")
(-4 . "AND<")
(-4 . "OR<")
)
)

The code above is straight out of the Autolisp Developer's Guide. It creates a selection set out of CIRCLE entities that have a radius of exactly 1.0 and LINE entities on the ABC layer. If you did not use the "OR" condition, then the (ssget) function would be trying to find entities that are a CIRCLE and a LINE, which is obviously impossible. Let's look at one more example.

(ssget '((0 . "POLYLINE,LWPOLYLINE")(-4 . "&")(70 . 1)))

Last, but not least... The code above uses a "bitwise AND" to filter on a bit coded DXF code. In this case, DXF code 70 on a POLYLINE and/or LWPOLYLINE. The goal here is to create a selection set of closed polylines. If DXF code 70 has the "1" bit set, this indicates a closed polyline. However, we cannot simply filter for DXF code 70 = 1, because this is a bit coded field. If LTGEN is turned on and it's a closed polyline, then DXF code 70 will equal 129, not 1. This is why you must use the "&" (Bitwise AND) special filter.

There is much more information in the Autolisp Developer's Guide on advanced selection set handling. Good luck and post some of your examples in the comments section if you want.

Labels: , ,


PermaLink       Posted 8/20/2008 08:59:00 PM      Comments (1)
Exploring the autolisp SSGET function - part 1          

If you have written routines with Autolisp, then you have probably used the (ssget) function to select entities on the screen, either automatically or by prompting the user.

(ssget) is a powerful function that can do more than you probably realize. Let's look at a simple example.

(ssget '((0 . "TEXT")))

This prompts the user for a general selection set, but only TEXT entities are added to the resulting selection set.

(ssget '((0 . "*TEXT")))

Notice the wild card that was added. This is the same as above, except now any entity type that ends in TEXT is added to the selection set. At first, this looks like a good way to select TEXT and MTEXT, and it is. However, you have to be careful because this will also select RTEXT entities, and if your code is not equipped to deal with RTEXT, it may fail.

(ssget '((0 . "MTEXT,TEXT")))

This is a better way to select MTEXT and TEXT entities. But what if you don't want to bother the user to select entities, you just want to select ALL the MTEXT and TEXT entities in the drawing?

(ssget "_X" '((0 . "MTEXT,TEXT")))

Notice the "_X" that was added. This tells the (ssget) function to evaluate every entity in the drawing and then the filtering mechanism will filter out everything except MTEXT and TEXT. Entities on frozen layers are included when using the "_X" selection method.


Let's look at some other selection methods.

(ssget "_W" (list 5.0 5.0)(list 8.0 8.0))

Above is an example that will select objects inside a window from 5,5 to 8,8.

(ssget "_CP" (list (list 5.0 5.0)(list 8.0 8.0)(list 8.0 3.0)))

The line above will select all entities inside or touching a triangle defined by the points 5,5; 8,8; and 8,3. The CP is for crossing polygon.


The power of (ssget) comes from the incredibly fast filtering that it performs. Can you imagine having to evaluate an entire database of entities and manually filter out all the circles whose radius is less than 1.0 that fall inside a particular polygon? (ssget) can do this very fast. Example below.

(ssget "_W" 
(list 5.0 5.0)(list 8.0 8.0)
'((0 . "CIRCLE")(-4 . "<")(40 . 1.0))
)

More details on this code and other examples in part 2.

Labels: , ,


PermaLink       Posted 8/20/2008 07:10:00 AM      Comments (1)
18 August 2008
S::STARTUP Function          
In the previous post about Startup Lisp Functions, the special (S::STARTUP) function was mentioned. Startup lisp code is loaded before the drawing is initialized, but you cannot call the (COMMAND) function until after the drawing is initialized. The solution is to place your (COMMAND) calls inside the (S::STARTUP) function. For example, if you want to reset the scale list and purge out regapps each time a drawing is opened, you could use something like this:
(defun-q mystartup ()
(command "._purge" "_R" "*" "_N")
(command "._-scalelistedit" "_R" "_Y" "_E")
)
(setq S::STARTUP (append S::STARTUP mystartup))

Notice that we did not directly define (S::STARTUP). Because this function can be defined in other places, it is best to append to it rather than overwrite it. Use (defun-q) to create a function defined as a list, so it can be appended. To finish the example from the previous post...

;;; acaddoc.lsp
(load "mylisp")
(load "another_lisp")
(load "\\\\server\\share\\a_lisp_and_specify_the_path")
(setvar "blipmode" 0)
(setvar "highlight" 1)
(defun-q mystartup ()
(command "._purge" "_R" "*" "_N")
(command "-scalelistedit" "_R" "_Y" "_E")
)
(setq S::STARTUP (append S::STARTUP mystartup))
;;; end acaddoc.lsp

Labels: , ,


PermaLink       Posted 8/18/2008 08:10:00 PM      Comments (4)
11 August 2008
Startup Lisp Functions          

If you have lisp routines that you want to make available in each drawing session, forget the "Startup Suite" and load them using the "acaddoc.lsp" file. "acaddoc.lsp" is not included with AutoCAD, you create it yourself. But it is nothing more than a plain lisp file, except that the first one found at drawing startup (just put it in your support file search path), is loaded automatically each time a drawing is opened.

Why use this approach instead of the "Startup Suite"? Ease of migration for one thing. When you upgrade from your current version of AutoCAD to the next version, simple add the path of your "acaddoc.lsp" file to the support file search path and your done. More details about this can be found here in a earlier article.

The second reason is that if you have more than one AutoCAD install to manage, using a networked copy of "acaddoc.lsp" means that you can control each machine using a single file as opposed to using the "Startup Suite" where your startup routines would have to be updated one machine at a time.

Remember that the file "acad.lsp" can contain startup code also, but "acad.lsp" is only loaded once per session of AutoCAD (assuming that the system variable ACADLSPASDOC is set to it's default value of zero). Each drawing has it's own lisp environment so it's necessary to load your startup lisp routines using "acaddoc.lsp" so that they will be loaded for each drawing.

Since "acaddoc.lsp" is like any other lisp file, it can contain functions and/or lisp code itself. Be careful when including lisp code because the (command) function should not be called until after AutoCAD initializes. You can do this safely by using the (s::startup) function. More on that next time.

Here is a sample "acaddoc.lsp" file.

;;; acaddoc.lsp
(load "mylisp")
(load "another_lisp")
(load "\\\\server\\share\\a_lisp_and_specify_the_path")
(setvar "blipmode" 0)
(setvar "highlight" 1)
;;; end acaddoc.lsp

Labels: , ,


PermaLink       Posted 8/11/2008 12:59:00 PM      Comments (1)
13 July 2008
Reading a TXT file using LISP          

Here is a simple example of how to read a TXT file into lisp and then do something with the contents. In this example, the TXT file contains coordinates, and the code will draw either points or lines.

One thing to keep in mind. Most times when you open a file for read or write, you should open the file, perform the entire operation, then close the file. Keep the code to a minimum while the file is open. This way if you run into an unhandled error, the file isn't stuck open, and in the case of shared files, you are not locking the file for an extended amount if time.

Here is a sample of the TXT file we are reading with the code. It contains X and Y values, separated by commas.

3121284.38296466,882181.92380207
3121277.99413417,882267.69275572
3121275.35443066,882375.23306138
3121272.51513517,882482.87407333
3121262.35874024,882580.84966059
3121233.10972356,883133.60346681
3121224.47339393,883240.46739907

Here is the code. Keep in mind that this code was left in a simple form to help show the steps involved. It is not optimized and there is no error checking and/or restoring of changed sysvars. These are topics for a different tutorial.

 

(defun c:foo ( / fn fp lst l)
;; Prompt the user to select a .TXT file.
(setq fn (getfiled "Select ASCII file" "" "txt" 4))

;; Prompt the user for what type of entity to draw
(initget "L P")
(setq e (getkword "\nWhat type of entity [Line/] "))

;; Open the file and create an empty list
(setq fp (open fn "r") lst '())

;; Iterate the file, writing each line to
;; the list

(while (setq l (read-line fp))
(setq lst (cons l lst))
)

;; Close the file.
(close fp)

;; Reverse the list
(setq lst (reverse lst))

;; At this point, the data is stored in
;; a variable and the file is closed.

;; Turn off OSMODE

(setvar "osmode" 0)

;; Draw the requested entity type
(cond ((eq e "L")
;; iterate the list and create lines
(command "._line")
(foreach item lst
(command item)
)
(command "")
)
         ;; --or-- 
	(t	 
;; Set a couple of variables
(setvar "pdmode" 34)
(setvar "pdsize" -1.0)

;; Iterate the list and draw a point
;; entity at each coordinate

(foreach item lst
(command "._point" item)
)
)
)

;; Close quietly
(princ)

)

Labels: , ,


PermaLink       Posted 7/13/2008 07:24:00 PM      Comments (0)
03 July 2008
Quick access to layer states manager          

Starting with AutoCAD 2008, you now have direct access to the Layer States Manager, without opening the LAYER dialog first.

In AutoCAD 2008, click the button on the far right of the LAYERS toolbar.

2008lsm

In AutoCAD 2009, click the button shown below:

2009lsm

Once you get the Layer States Manager dialog open, don't forget to click the lsm4 button to expand the dialog and reveal more options.

Labels: , , ,


PermaLink       Posted 7/03/2008 06:05:00 AM      Comments (0)
06 June 2008
Land Desktop Service Pack Level          

In certain situations, you can install SP2 for Land Desktop 2008, and the program will report that SP2 is installed, but in fact it is not really installed. I have confirmed this with Autodesk support. However, the exact circumstances regarding how this occurred has not been determined.

So how can you check to see if SP2 has really been applied? According to Autodesk support, you can test for SP2 by looking at the version of this file:
C:\Program Files\AutoCAD Civil 3D Land Desktop Companion
2008\AeccAlnSvrLoader.dll.  (Your path may vary)

If you have SP2, this file version will be 17.1.396.0

This is for Land Desktop Companion 2008. I do not know if the same rules apply for plain Land Desktop, but I suspect it would be the same.

aecc

Labels: ,


PermaLink       Posted 6/06/2008 12:38:00 PM      Comments (0)
20 May 2008
Dialogs that appear off screen          

If you try to open a dialog in AutoCAD but nothing happens, there is a chance that the dialog is open, but it's just "off your screen".  You can use a windows trick to move it back.

When the dialog is supposed to be visible, but you can't see it, press ALT+Space, then "M", then use the arrow keys to move the dialog.


Click on image below to see full size.


Labels:


PermaLink       Posted 5/20/2008 06:30:00 AM      Comments (4)
07 May 2008
AutoCAD 2009 vs. AutoCAD LT 2009          

I frequently see the question "What is the difference between AutoCAD and AutoCAD LT?" Autodesk provides a comparison matrix that highlights some of the differences. (That particular document compares the 2008 versions).

But there really doesn't seem to be a comprehensive comparison of what the actual differences are. I imagine many new LT users figure out a command is missing when they go to use a familiar command and it tells them...

Command: XCLIP

Unknown Command "XCLIP". Press F1 for HELP.

Below I have listed a quick summary of major differences, a quick summary of the new features in LT, and then a list of 323 commands and 175 system variables that are available in AutoCAD, but not available in AutoCAD LT 2009.

 

General list of what is missing in LT...

Here is a summary of the major features that are not included in LT 2009.

  • Sheet Set Manager
  • Network licensing
  • CAD standards management
  • Most 3D tools and commands
  • Express tools
  • Action recorder
  • Support for Autolisp, VBA, .NET and other programming languages.

New for LT 2009...

Besides the normal UI upgrade to match AutoCAD, the following previously unavailable features have been added to LT 2009.

  • Image referencing
  • Non-rectangular viewports
  • Truecolor
  • Fields
  • 64-bit support

List of unavailable commands in LT 2009

Below is a list of 323 commands that are available in AutoCAD 2009, but not available in AutoCAD LT 2009.

*SCROLL
-3DCONFIG
-ACTSTOP
-ACTUSERMESSAGE
-ARCHIVE
-DWFADJUST
-EATTEXT
-INTERFERE
-MLEDIT
-OPENSHEETSET
-PARTIALLOAD
-PARTIALOPEN
-PUBLISH
-REFEDIT
-SHADEMODE
-VBALOAD
-VBARUN
-VISUALSTYLES
..ACADSTATUS
3D
3DALIGN
3DARRAY
3DCLIP
3DCONFIG
3DCORBIT
3DDISTANCE
3DDWF
3DDWFPUBLISH
3DFACE
3DFLY
3DFORBIT
3DMESH
3DORBIT
3DORBITCTR
3DRENDER
3DROTATE
3DSIN
3DSOUT
3DSWIVEL
3DWALK
ACISIN
ADCCUSTOMNAVIGATE
ACTRECORD
ACTSTOP
ACTUSERINPUT
ACTUSERMESSAGE
AI_BOX
AI_CIRCTAN
AI_CONE
AI_CUSTOM_SAFE
AI_DIM_TEXTABOVE
AI_DIM_TEXTCENTER
AI_DIM_TEXTHOME
AI_DISH
AI_DOME
AI_FMS
AI_INVOKENFW
AI_MOLC
AI_PRODUCT_SUPPORT
AI_PRODUCT_SUPPORT_SAFE
AI_PSPACE
AI_PYRAMID
AI_SELALL
AI_SPHERE
AI_TORUS
AI_TRAINING_SAFE
AI_WEDGE
ALIASEDIT
ALIGN
ALIGNSPACE
ALLPLAY
AMECONVERT
ANIPATH
APPLOAD
ARCHIVE
ARCTEXT
ARX
ASSIST
ASSISTCLOSE
ATTIN
ATTOUT
ATTREDEF
ATTSYNC
BACKGROUND
BATTMAN
BCOUNT
BEXTEND
BLOCK?
BLOCKREPLACE
BLOCKTOXREF
BORROWLICENSE
BOX
BREAKLINE
BREP
BROWSER2
BSCALE
BTRIM
BURST
CAMERA
CDORDER
CHECKSTANDARDS
CHURLS
CLIPIT
COMPILE
CONE
CONVERTOLDLIGHTS
CONVERTOLDMATERIALS
CONVTOSOLID
CONVTOSURFACE
COPYM
CYLINDER
DATAEXTRACTION
'DBCCLOSE
'DBCONNECT
DBLIST
'DDGRIPS
'DDSELECT
DIMEX
DIMIM
DIMREASSOC
DISTANTLIGHT
DVIEW
DXBIN
EATTEDIT
EATTEXT
EATTEXTEDIT
EATTEXTUPDATE
EDGE
EDGESURF
EDITTIME
EDITSHOT
EXOFFSET
EXPLAN
EXPRESSMENU
EXPRESSTOOLS
EXTRIM
EXTRUDE
FILTERS
FINISH
FLATSHOT
FLATTEN
FOG
FREESPOT
FREEWEB
FS
FSMODE
GATTE
GETSEL
GIFIN
GRADIENT
HELIX
HYPERLINKOPEN
IMAGEAPP
IMAGEEDIT
IMPRESSION
IMPRINT
INTERFERE
JOGSECTION
LAYERP
LAYERPMODE
LAYOUTMERGE
LAYTRANS
LAYVPMODE
LIGHT
LIGHTLIST
LIGHTLISTCLOSE
LIVESECTION
LOAD
LOFT
LSP
LSPSURF
MATERIALASSIGN
MATERIALATTACH
MATERIALMAP
MATERIALS
MATERIALSCLOSE
MENU
MINSERT
MIRROR3D
MKLTYPE
MKSHAPE
MLEDIT
MLINE
MLSTYLE
MOCORO
MOVEBAK
MPEDIT
MSTRETCH
MVSETUP
NAVSMOTION
NAVSMOTIONCLOSE
NAVVCUBE
NCOPY
NETLOAD
NEWSHEETSET
NEWSHOT
NEWVIEW
OLDMTPROP
OLELINKS
OPENSHEETSET
OVERKILL
PAINTPROP
PARTIALOAD
PARTIALOPEN
PFACE
PLANESURF
PLJOIN
PLT2DWG
POINTLIGHT
POLYSOLID
PRESSPULL
PROPULATE
PSBSCALE
PSELECT
PSFILL
PSTSCALE
PYRAMID
QDIM
QLATTACH
QLATTACHSET
QLDETACHSET
QQUIT
REDEFINE
REDIR
REFCLOSE
REFEDIT
REFSET
RENDER
RENDERCROP
RENDERENVIRONMENT
RENDEREXPOSURE
RENDERUNLOAD
RENDERUPDATE
RENDERWIN
RENDSCR
REPLAY
REPURLS
RETURNLICENSE
REVERT
REVOLVE
REVSURF
ROTATE3D
RPREF
RPREFCLOSE
RTEDIT
RTEXT
RTUCS
RULESURF
SAVEALL
SAVEIMG
SECTION
SECTIONPLANE
SEQUENCEPLAY
SETIDROPHANDLER
SHAPE
SHEETSET
SHEETSETHIDE
SHELL
SHOWURLS
SHP2BLK
SKETCH
SLICE
SOLDRAW
SOLIDEDIT
SOLPROF
SOLVIEW
SPHERE
SPOTLIGHT
SSX
STANDARDS
STATS
'STATUS
STLOUT
SUNPROPERTIES
SUNPROPERTIESCLOSE
SUPERHATCH
SWEEP
SYSVDLG
TABSURF
TARGETPOINT
TBCONFIG
TCASE
TCIRCLE
TCOUNT
TEXTFIT
TEXTMASK
TEXTUNMASK
TFRAMES
THICKEN
TJUST
TORIENT
TORUS
TRACE
'TREESTAT
TSCALE
TUTCLEAR
TUTDEMO
TXT2MTXT
UNDEFINE
VBAIDE
VBALOAD
VBAMAN
VBARUN
VBASTMT
VIEWPLAY
VISUALSTYLES
VISUALSTYLESCLOSE
VLIDE
VLISP
VPSCALE
VPSYNC
VSCURRENT
VSSAVE
WALKFLYSETTINGS
WEBLIGHT
WEDGE
XCLIP
XDATA
XDLIST
XEDGES
XLIST
XOPEN
XREFCLIP

List of unavailable system variables in AutoCAD LT 2009

Below is a list of 175 system variables that are available in AutoCAD 2009, but not available in AutoCAD LT 2009.

*_TOOLPALETTEPATH
_LINFO
_SERVER
3DCONVERSIONMODE
3DDWFPREC
ACADPREFIX
ACADVER
ACIS15
ACISOUTVER
APSTATE
ASSISTSTATE
AXISMODE
AXISUNIT
BINDTYPE
CAMERADISPLAY
CAMERAHEIGHT
CMATERIAL
CMLJUST
CMLSCALE
CMLSTYLE
COMPASS
CPROFILE
CPUTICKS
CSHADOW
CURRENTPROFILE
DBCSTATE
DBGLISTALL
DEFAULTLIGHTING
DEFAULTLIGHTINGTYPE
DEMANDLOAD
DRAGVS
DWGWRITE
DXEVAL
ENTERPRISEMENU
FACETRATIO
FFLIMIT
FLATLAND
FULLOPEN
GFANG
GFCLR1
GFCLR2
GFCLRLUM
GFCLRSTATE
GFNAME
GFSHIFT
GTAUTO
GTDEFAULT
GTLOCATION
HPASSOC
IMPLIEDFACE
INTERFERECOLOR
INTERFEREOBJVS
INTERFEREVPVS
LASTPROMPT
LAYOUTREGENCTL
LAZYLOAD
LEGACYCTRLPICK
LIGHTGLYPHDISPLAY
LIGHTINGUNITS
LIGHTLISTSTATE
LIGHTSINBLOCKS
LINEARBRIGHTNESS
LINEARCONTRAST
LISPINIT
LOFTANG1
LOFTANG2
LOFTMAG1
LOFTMAG2
LOFTNORMALS
LOFTPARAM
LOGEXPBRIGHTNESS
LOGEXPCONTRAST
LOGEXPDAYLIGHT
LOGEXPMIDTONES
LOGEXPPHYSICALSCALE
LOGINNAME
LONGFNAME
MATSTATE
MENUCTL
MENUNAME
NOMUTT
OFFSETGAPTYPE
OSNAPZ
PFACEVMAX
PLOTID
PLOTTER
PLQUIET
POPUPS
PROJECTNAME
PSOLHEIGHT
PSOLWIDTH
PSQUALITY
PSVPSCALE
PUBLISHCOLLATE
QAUCSLOCK
QUEUEDREGENMAX
RE-INIT
REFEDITNAME
RENDERPREFSSTATE
RENDERUSERLIGHTS
RIASPECT
RIBACKG
RIEDGE
RIGAMUT
RIGREY
RITHRESH
SAVEIMAGES
SCREENBOXES
SCREENMODE
SHADOWPLANELOCATION
SHOWHIST
SHPNAME
SKETCHINC
SKPOLY
SOLIDCHECK
SOLIDHIST
SPACESWITCH
SSFOUND
SSLOCATE
SSMAUTOOPEN
SSMPOLLTIME
SSMSHEETSTATUS
SSMSTATE
STANDARDSVIOLATION
STARTUPTODAY
STEPSIZE
STEPSPERSEC
SUNPROPERTIESSTATE
SUNSTATUS
SURFTAB1
SURFTAB2
SURFTYPE
SURFU
SURFV
TBCUSTOMIZE
TEMPPREFIX
TEXTOUTPUTFILEFORMAT
UCSDETECT
UCSVP
UNDOONDISK
USERS1
USERS2
USERS3
USERS4
USERS5
VSBACKGROUNDS
VSEDGECOLOR
VSEDGEJITTER
VSEDGEOVERHANG
VSEDGES
VSEDGESMOOTH
VSFACECOLORMODE
VSFACEHIGHLIGHT
VSFACEOPACITY
VSFACESTYLE
VSHALOGAP
VSHIDEPRECISION
VSINTERSECTIONCOLOR
VSINTERSECTIONEDGES
VSINTERSECTIONLTYPE
VSISOONTOP
VSLIGHTINGQUALITY
VSMATERIALMODE
VSMONOCOLOR
VSOBSCUREDCOLOR
VSOBSCUREDEDGES
VSOBSCUREDLTYPE
VSSHADOWS
VSSILHEDGES
VSSILHWIDTH
VSSTATE
WHIPTHREAD
WRITESTAT
XFADECTL
XREFNOTIFY

If you spot a mistake or would like to add something, leave a comment please. Thanks.

Labels: , , ,


PermaLink       Posted 5/07/2008 11:57:00 AM      Comments (11)
29 April 2008
Scale List Fix          

So you have installed SP1 and you know how to fix drawings with a bloated scale list. But what if you have dozens or hundreds or thousands of "infected" drawings each containing hundreds of scale list entries?

Autodesk has released a tool to fix these bloated drawings. You can select any number of drawings and batch process them.

image

You have heard about this tool, haven't you? If not, that means you are not reading Shaan Hurley's Between the Lines blog. Here is the link to the Scale List Cleanup Utility. While you are there, I suggest subscribing to this blog to keep up to date with the latest happenings at Autodesk.

Labels: , , , , , ,


PermaLink       Posted 4/29/2008 06:58:00 AM      Comments (1)
01 April 2008
AutoCAD 2009 Drawing Tool Buttons          

New to 2009 is the default icon mode for the drawing tool buttons. You know what these are, the SNAP GRID ORTHO POLAR OSNAP, etc. buttons down in the status bar. They take up less room as icons, but you will need to figure out what each one does.

Out of the box, they look like this:

 Drawing Tools as Icons

If you right click on any button, you will get this menu:

Context menu for drawing tools

Uncheck the Use Icons item to restore the previous TEXT buttons, like this:

status2

Polar Tracking, Object Snap, and Object Tracking include a context menu to quickly change settings without having to open a dialog.

New to this bunch of tools is the QP, or Quick Properties button. Heidi Hewett has put together a nice article on Quick Properties.

Labels: , , ,


PermaLink       Posted 4/01/2008 05:30:00 PM      Comments (2)
25 March 2008
New Features Workshop          

AutoCAD 2009 is now out. If you are interested in the Autodesk version of the new features, look below. If you are on an older release and only considering making the move to AutoCAD 2007 or 2008 and you want a summary of the changes, take a look at the NFW for these releases.


Labels: , , ,


PermaLink       Posted 3/25/2008 12:16:00 PM      Comments (0)
05 February 2008
Setting system variables at startup          

How do you set system variables at drawing startup in AutoCAD? This can be answered in a variety of ways, some right and others wrong. I'm going to explain the right way based on Autodesk recommendations.

First off, what do you want to set and where is this setting stored? Look up the system variable in HELP and find out if it's stored in the drawing, or the registry or not at all.

If it's stored in the drawing, then consider whether or not you really want to change this at startup. While you are thinking about that, open you template drawing(s) and make the change there. Now at least your new drawings will be set the way you want.

Now why would you not want to change a drawing-saved system variable at startup? Have you ever opened a drawing, and not changed anything, then tried to close it and you were prompted to save? This is why. If you have startup code that changes a drawing saved system variable, the drawing database is modified and you will be prompted to save the drawing, even if you have not changed it in any other way.

NOTE: DBMOD is a system variable that is set to zero (0) each time a drawing is opened. If anything is changed, the value of DBMOD is not zero (0) any longer. When you go to close the drawing, if the value of DBMOD is not zero (0), then AutoCAD will prompt you to save.

Before we get started, let's cover a couple of "rules".

  1. Make sure ACADLSPASDOC is set to 0. This is the default setting.
  2. A file called "ACAD.LSP" is loaded once when AutoCAD starts. Any lisp code in this file is loaded into memory or executed at this time.
  3. A file called "ACADDOC.LSP" is loaded each time a drawing is loaded, including when AutoCAD is first started. Lisp code from this file is loaded each time a drawing is loaded.
  4. For either file above, AutoCAD will load the first file it finds and only the first one.
  5. AutoCAD will search the support file search path, in the order of the paths.

Things you might want to put in "acad.lsp" include system variables that are not saved or saved in the registry such as "expert", "isavebak", "and savetime"

Things you might want to put in "acaddoc.lsp" include drawing saved system variables (although I personally avoid this), and other lisp code that need to be defined in each drawing

Once you have determined which file to edit/create, here is how to do it.

  1. Open AutoCAD.
  2. Paste one of the following lisp functions (in blue) to the command line and press enter
  3. (findfile "acad.lsp") -or- (findfile "acaddoc.lsp")
  4. If a filename is returned, open this file in Notepad or use the VLIDE (Visual Lisp interactive development environment) to open this file. Go to step 5.
  5. If nil is returned, open a new file in Notepad or the VLIDE. Save the file using the correct name and make sure you save it to a directory that is in your support file search path. Close this file, and repeat step 2 and 3 to make sure AutoCAD can find this new file.

Now you have the right file open. You just need to add a bit of lisp code to set the variables to your liking, using the (setvar) function. Here is a few examples:

(setvar "EXPERT" 3)

(setvar "EDGEMODE" 1)

(setvar "OSMODE" 20)

The case of the letters is not important. But the value(s) that you are trying to set are important. In the first example, we are trying to set the system variable EXPERT to 3, which is valid. But if we try to set it to 8, it will fail.

Valid settings for each system variable are found in HELP.

Many system variables are stored as a bitcode using the sum of individual values. OSMODE is one of these. If you look in HELP, you will see that the setting for QUA object snap is 16 and the setting for NOD object snap is 4. If you add these two together, you get 20. If you wanted to set END and MID you would add 3 more and make the setting 23.

Remember, this is only addressing the changing of system variables. Next time, we'll cover adding more sophisticated lisp code to the startup files.


Note: Do not modify the files named "acad200?.lsp" or "acad200?doc.lsp". These files are located in the stock AutoCAD support directory, but these files are used by AutoCAD. If you place your startup code in these files it will work, but these files may be overwritten by a repair, reinstall, or application of a service pack. There is NO reason to use these files. Use "acad.lsp" and/or "acaddoc.lsp". These are user defined and controlled files.

Reference Links:

http://usa.autodesk.com/getdoc/id=TS28079

http://usa.autodesk.com/getdoc/id=TS21336

http://usa.autodesk.com/getdoc/id=TS43235

Labels: ,


PermaLink       Posted 2/05/2008 12:45:00 PM      Comments (0)
09 January 2008
Windows Automatic Updates          
If you want to disable the annoying Restart Now or Restart Later dialog that pops up every 10 minutes after Windows automatic updates downloads and installs an update.... take a look at this post



Labels: , ,


PermaLink       Posted 1/09/2008 07:08:00 AM      Comments (0)