System Variables

When making entity selections in AutoCAD, sometimes the results can be unexpected. You may select a hatch object and move it its associative boundary stays put, or you may erase a line and other geometry disappears with it. Situations like this can be controlled by a system varible named PICKSTYLE.

PICKSTYLE controls two things, how associative hatches and their boundaries behave and how grouped objects behave. Let's take a look. Read more about Controlling AutoCAD selections with PICKSTYLE

Many moons ago in the AutoCAD world, when you received a command prompt instead of an expected dialog box, you could check the system variables FILEDIA and CMDDIA and make sure they were set to 1. Over the years, CMDDIA has all but been phased out in AutoCAD, although FILEDIA (for FILE DIAlogs) does still apply. Here is a related post on this.

In AutoCAD MAP (and for MAP commands in Civil 3D) however, CMDDIA does still have an effect on many commands. If you run a MAP command and do not get an expected dialog box, check to make sure CMDDIA = 1. This includes command such as MAPCSCREATE, ADEDEFDATA, ADEQUERY, etc. Some other MAP commands such as MAPCLEAN, do not honor this variable and will always display the dialog box. Read more about Missing MAP Dialog Boxes in AutoCAD Map or Civil 3D?

PICKADD is one of those system variables that you see mentioned a lot, usually in a negative light. Somehow it gets set to 0 and then you can only select one object at a time. Who would ever want to do this, right? Although 99% of the time, you probably keep PICKADD set to 1, there is a useful reason to set it to 0. If you are editing or viewing properties of multiple entities one at a time, this can be helpful.

If PICKADD = 1 and you select one entity to view its properties in the Properties window, no problem. But what happens when you select a second entity? Of course, Properties displays the properties for both entities. You won’t get much useful info if you select say a SPLINE and an MTEXT entity. To avoid this, you have to press ESCAPE to cancel the previous selection each time.

Now, set PICKADD to 0 and then each time you pick an entity, only that one entity is selected and you can edit or view its properties.

If this is something you think might help you, consider using the following lisp code to toggle the value of PICKADD from 1 to 0 to 1 and so on.

(setvar "PICKADD" (abs (- (getvar "PICKADD") 1))) Read more about Why you might want PICKADD set to 0

The system variable PICKADD has been changed for 2011. Most people probably will not notice, but I like it. Previously, there were 2 choices for this variable, 0 and 1. A setting of 2 was added. See the summary below.

  • 0 - means that only your last selection is valid. In other words, if you select a entity, then select another entity, the first one becomes unselected.
  • 1 - is what most people use. This allows you to continue to add entities to a selection set.
  • 2 - works just like 1, expect that when using the ._Select command, the entities remain selected when the command is over. Previously when you used the ._Select command then executed a command, you had to use _P to refer to the previous selection set. Now you can use the ._Select command, create a selection and then launch the desired command with the selected objects pre-selected.

For more details, see: PICKADD - AutoCAD 2011 Documentation

Read more about AutoCAD 2011 - Pickadd has changed

Have you ever set a system variable and then you are working along and that sysvar is changed to a different value? Many people will ask how or why it "changed itself", which obviously it can't do. Of course what is really going on is a program, whether it be an internally defined command, or a lisp/VBA/ARX routine, has changed it. Read more about System Variables changing on their own?


All content is copyright © CAD PANACEA 2005-2013 unless otherwise noted and may not be reproduced. All comments posted to this blog are the sole responsibility of the person making the comment.

Google, as a third party vendor, uses cookies to serve ads on this site. Google's use of their cookies enables it to serve ads to users based on their visit to your sites and other sites on the Internet. You may opt out of the use of these cookies by visiting the Google ad and content network privacy policy.

Powered by Drupal