Named Cplanes cannot be undo-ed

Perhaps another long known fact, but I consider this an issue.

Any explanation, reason why this is?

1 Like

For this reason I always create a simple square plane object (and placing a point at the new origin) at the moment I create and save a new Cplane, then put it in a dedicated layer named “Cplane origins” that I keep locked locked. This allows me to safely adjust or modify existing custom Cplanes without worrying that I can’t undo the changes.
I also think that Undo/Redo for Cplanes must be a feature by default. If Rhino stores the last 5 states of each Cplane, that should be enough to revert to the desired state in case of accidental deletion or reposition of a given Cplane.

1 Like

hey guys, you dont have view - set cplane - undo/redo Cplane change? or when using the command CPlane next and previous?

but if you are talking about undoing with ctrl Z, that may not make much sense such as view change is being excluded.

For me this makes no sense. The whole essence of undo is getting whatever action you’ve taken, back. Any action. Creating, deleting, making changes, anything. If Rhino supports undo, and it does, then it should affect everything, except for the user-defined “exception list”.

CPlanes, UserText included.

1 Like

i am not sure i would like that. bud undoing redoing cplane works pretty handy via shift Home or shift End at least predefined on my mac. how often would you need to undo an accidental switch to a different cplane anyway? sounds pretty awkward to be honest.

i can remember working on autocad having the freaking mouse wheel zoom changes undoing when all i wanted to undo the last curve. but autocad never managed to enable an option there, that drove me super nuts. but i have left that chapter of software faaaar behind… but i am beginning to imagine your pain now :smiley: :wink:

I don’t find any way in Rhino for Windows to undo a deleted Cplane.

As I am currently prototyping - a lot of times, very often. As many times as I run my scripts.

I think you’ve misunderstood. Not only switching from one cplane to another, creating and deleting them too.

You can add a custom undo event to do this

I know that, but this should be a default OOTB behavior.

1 Like

Personally, I feel that the global Undo is still over-loaded by including layer operations. I am not a fan of the idea of putting more stuff on there.



What difference does it make to put more stuff? To cover everything?

I find it inconvenient, to say the least, to have my layer visibility operations undone when I want to undo my last modeling change. This is why view & cplane changes have their own undo stacks - I assume, but it’s always been that way, and it only makes sense.


Yeah, you’re right about visibility operations regarding layers. It is sometimes a bit annoying. Same goes with undo-ing selections.

But I am mainly talking about the list of named cplanes.
The script I’m currently working on creates 300+ cplanes and while I’m testing the script I constantly have to go to the panel and delete them all before testing the changes I make in the script.

@ivelin.peychev I think I recently gave you a python component which deletes cplanes. If you are scripting the creation of cplanes, why not script the deletion?

@dharman, it’s not about what’s possible or not through scripting.
What is the percentage of the users that create scripts among all Rhino users?
Although some things really don’t make sense to be undo-ed like visible properties of layers as @pascal mentioned. Things like UserText and Creating/Deleting cplanes for sure makes sense to be there.

This is a real annoyance and it gets in the easy of productivity. Adding an UndoLayerEdit command/UI would be better, but will that be discoverable?

Multiple stacks combined are an annoyance not only in undo, but also in the clipboard. There’s no reason that geometry sent to clipboard overrides a text strong in the clipboard. We should be able to paste the last object we copied and/or the last string of text we copied, regardless of which one got copied first.

1 Like

@gustojunk, :slight_smile: a little off-topic but I agree with you. There should be multiple clipboards for 3d objects and text strings. This is worthy of a thread on its own.

1 Like

I understand that.

I was responding to this:

1 Like

yes thats true, there are exceptions in Rhino such as also deleting a layer. but here either, how often would that happen that you have to undo an accidental deleted cPlane? not to talk about redo.

Unfortunately, overriding and deletion of Cplanes happens often enough to force me to use the method I described in my previous post. IVELIN PEYCHEV also noted that issue, so I assume that there are even more Rhino users who would benefit from adding the possibility to undo a deleted Cplane.

It would be also nice if Rhino saves the text in the Notes as 2 separate texts that could be compared to each other at any time, where the older one is used as a backup if necessary. For example, the backup text copy of the Notes could be the version that was available at the time the 3dm file was opened in the current session, while any new changes to the text will result in saving the Notes as a new version. At any moment the user have to be able to access the original text if there is something he or she would like to revert or compare. See how useful that particular functionality is in this forum where the forum members could compare the last with the previous post. That’s just a forum, yet it has the backup option! Why Rhino won’t have the same capability, considering it’s a program for art and manufacturing (assuming that losing the text in Rhino’s Notes is much more important than losing a forum post). Many times, accidental deleting of text in the Notes will force the user to re-open the backup 3dm file or open it in a 2nd instance of Rhino to get access to the original text. But that’s far from the ideal solution, especially if the current 3dm file was already saved and the backup copy is also new enough to override the old version.

1 Like