Thanks for the feedback Simon.
The animation helps. But I think it would be better to be able to rotate in real time: while the alt key is pressed the view would rotate following the mouse.
Agreed. I'd briefly considered it before but hadn't really thought of a good way of representing it at the time such that the axis you're drawing makes sense as a line. Your exhortation has encouraged me to think again - while I'm not sure the whole view should rotate, it might make sense to overlay a rotated copy of the world similar to the grey circle/line shown when drawing.
having a x and y axis (or grid) show/hide toggle would help.
I'm reluctant to have these as central elements because they somewhat contradict the freeform nature of traditional compass/straightedge drawing. I might consider adding them later, but I want the system to be solid without them first.
The zoom could also be real time and not in increments
Smooth (high-resolution) zooming would definitely be preferable (is this what you mean?). I first need to work out how to do it! It looks a fair bit more complicated than just taking in the simple WM_SCROLLING
message as I'm currently doing. If you can point me to any useful resources I would be very grateful.
while pressing alt + shift (or another key) the view would zoom in or out.
Do you mean as in holding a button to have a quick temporary overview/detail view?
Another zoom type that I find useful is to draw a rectangle selection around what you want to see better and let the application computes the zoom and pan to view just that.
Good idea, that shouldn't be too difficult if there's a key/mouse combination for that available. I'll have a think.
I got a crash after drawing a lot of random line and circles.
That sounds about right: I've been using fixed-size arrays while I program the main features because I've wanted to change the main data structures about. That's the thing I'll be doing next.