Tag Archives: Erase

Undo, U, Redo, Erase, Oops differences explained

It’s been a while since I posted any beginners’ tips, so here goes.

There are several commands in AutoCAD to do with reversing things you’ve done. They are in some cases subtly different and this can confuse newcomers. Here’s what they do:

  • U – reverses the last command you used.
  • Redo – reverses the last U or Undo operation you performed, if that’s the last thing you did.
  • Undo – displays a set of command options that allow greater control over undoing things. (This is rarely used directly by a user, and is more of a programmer’s tool, so I won’t be going into any detail).
  • Erase – removes from the drawing an object or set of objects as selected by the user.
  • Oops – reverses the last Erase command, even if you have done other things in the meantime. (It also reverses erasures performed by the Wblock command, but such reversal is rarely needed these days).

Note that many commands also have an Undo subcommand  which is different again from all of the above. For example, start the Line command, pick a few points, then enter Undo while still in the command. Just the last segment will be removed, and you can carry on picking more points. Most subcommands can be abbreviated, and this is true of the Undo subcommand within the Line command. While still in the Line command, enter U and this will have the same effect as entering Undo in full (or the other possible abbreviations Un and Und).

This is not the case when entering full command names; entering U and Undo at the command prompt will do different things, although command line auto-complete can confuse matters further depending on your settings. I’ll ignore that for the sake of brevity.

Let’s go through a command sequence that uses all of these things.

  • Enter the Line command (type LINE and hit [Enter]). Pick 6 points to create 5 lines but don’t hit [Enter] yet. While still in the Line command, enter Undo (UNDO [Enter]). This will use the Undo subcommand of Line to undo the last drawn line segment, leaving 4 lines. Pick another 2 points, leaving a total of 6 lines. While still in the Line command, enter U. This will undo the last drawn line segment, leaving 5 lines. Hit [Enter] to finish the Line command.
  • Enter the Line command, pick 4 points to draw 3 lines and hit Enter to finish the command.
  • Enter the U command. The effects of the last command (Line) will be undone, removing all 3 of the lines created by it.
  • Enter the Redo command. The U command is reversed, restoring the 3 lines.
  • Enter the Undo command. This will give you a few options, but the default is the number of steps to undo. Type 2 [Enter] and the last 2 commands will be undone (ignoring the U/Redo), removing the set of 3 lines and the set of 5 lines.
  • Enter the Redo command. The Undo command is reversed, restoring both the 5 lines and the 3 lines.*
  • Enter the Erase command. Select one line from the first group and two from the second, then hit [Enter] to finish the command and those 3 lines go away.
  • Enter the Move command. Select the remaining 2 lines from the first group, hit [Enter] to finish the selection process and pick two points slightly apart to move the lines a short distance.
  • Enter the Oops command. The 3 lines removed by the Erase command are restored, but note that the effects of the Move command are unaffected. If you had used the U command twice to restore the erased lines, the Move command would also have been reversed.

Clear as mud? There are other possible complications depending on various settings, and there are various user interface options for invoking the commands that I haven’t discussed, but this will do to explain the basics.

* The information in this post applies to any AutoCAD from the last 30 years, but as the command set in BricsCAD is almost identical, it can be used for BricsCAD too. Mostly. There is one exception; if you use Undo to perform several undo steps at once, then follow that with a Redo, only one undo step at a time will be reversed. If you want to redo everything, you will need to hold your finger on the Enter key to repeat the Redo command until it runs out of things to redo. Depending on what you want to do, this can either be very handy or rather inconvenient.

AutoCAD tip – more on the Oops command

In a comment on my Five More Simple Tips for AutoCAD post, Jeremy had some questions about the Oops command. I thought I would explain the command in more detail in another post so more people will see it.

The first thing to understand is that Oops varies from Undo/U in that it only reverses those commands that erase objects. The Erase command is obvious, and the same applies to pre-selecting objects and hitting the Delete key, but the Block and Wblock commands can also erase the objects that go to make up the block. In such cases Oops can be used to restore those objects without undoing the block creation step.

Another difference is that unlike Undo, you can only go back one step with Oops. If you erase one set of objects and later erase another set, issuing two Oops commands will not restore the first set of objects. Where Oops has the advantage is that it can unerase something that you erased 100 commands ago, without undoing the intervening 99 commands.

What happens if you use Oops when there is nothing to unerase? Nothing. Oops simply returns to the Command prompt. Also, there is no short form of the Oops command in standard AutoCAD. O invokes Offset, OO does nothing and OP invokes Options.

Finally, the U and Undo commands interfere with Oops. I suspect this is what Jeremy was seeing when the command wasn’t working for him. To see what I mean, select and right-click > Copy the following commands. In an empty drawing, right-click > Paste them into the Command prompt area:

_.Zoom _Win 0,0 10,5
_.Line 1,0 1,2

_.Line 2,0 2,2

_.Line 3,0 3,2

_.Line 4,0 4,2

_.Erase 1,1 2,1

_.Line 5,0 5,2

_.Line 6,0 6,2

_.Move 5,1 6,1  5,3 7,3

This command sequence zooms to a suitable area, draws four lines, erases the first two, draws another two and then moves them to the right. If you use Oops immediately after that, the first two lines will return. However, if instead of doing that you first undo the Move command and then use Oops, the lines will not return.