Wish: Selection History

I think it would be useful for Rhino to have selection history.

What I mean by “Selection History” is the ability to cycle through previously selected objects and reselect them. As an example, let’s say I’m writing a macro where I’d like to grab a drawing, move it to the center of a frame and scale it up to the frame quickly as possible, I might do something like:

  1. Draw a point in the center of the frame
  2. Select my drawing

(Macro begins)
2. Group the lines in the drawing to be scaled
3. Align Concentric
4. Pause (to move the object to the point)
5. Bounding Box (to find the outer edges for scaling)
6. Scale
7. Pause (to scale the lines)
8. Ungroup
(Macro ends)

  1. Delete the bounding box < Selection history would allow this to happen in the context of the macro, you would go “Previous Selection” “Previous Selection” “Delete” and the bounding box would be gone without you having to worry about deleting it when you’re done scaling. (Especially useful if repeating the sequence a number of times) Image below.

This might be useful also for a number of other commands where you are using one or several curves for reference and just want to quickly go back and delete them with a hot key.

I will see if I can write this myself, but for now it is only a wish :slight_smile:

there is namedSelections

at certain amount of complexity the power of macros is limited and you have to use scripting …

EDIT
this might somehow look like this - some fine tuning needed

_selNone
_boundingbox _pause _enterend
_sellast
-_namedSelections _save "tempSel"
_selNone
// special action goes here
-_namedSelections _select "tempSel"
-_namedSelections _delete "tempSel"
_delete

I can give you some pointers on how to track object selection, but first maybe there’s an easier way to get what you want:

Are you familiar with layers? That could be a nice way to track groups of things like that.

Are you using the name property of objects for anything yet? You can name multiple objects when you have them selected. Later, you can select by property → name.