Corel Draw has a feature for duplicating elements that remembers the last set of operations you do on a duplicated element and it does those again on the next duplicated element. In other words, if you press Ctrl-D and then move the duplicate item, you can press Ctrl-D again and the new duplicate moves that same amount. I’m thinking about adding this to the Linkage program. Up until a few days ago, I never did the same thing more than twice so this would not have been so useful. But copying and pasting connectors to form a hexagon was a little more work that I liked.
I don’t recall how much Corel Draw would remember. I used it to move duplicate and sometimes to rotate duplicate around a common point but I never did both at the same time. I’m thinking of saving all move operations or all rotate operations but saving nothing it anything else besides a move or a rate happen.
The good thing about this sort of feature is that there is no user interface change. I will need to save away the combined distance or angle of the operations that follow the duplication and then play them back. I will also need to clear the saved information if almost anything else happens – that’s going to be tricky because there are a lot of places where the code does other operations. At a minimum, testing everything is going to be painful. More likely, adding the code to clear the saved data will be more than painful. But it will be worth it if I want to make a radial engine with 83 pistons!