My experience with the current perspective mode has been one of quite a bit of confusion.
A summary of my thoughts when I’ve been using the perspective mode:
“Alright! A working perspective mode! I got three vanishing points in a row? Ok… let’s draw a horizon line… that went well. I have to move one of the points so that I can try making some three point perspective drawing… whoa! The point on the other side is mirroring every move I make! So… how do I get this point up and make the other point stay put…? I can’t? Ok… let’s try adding a new point then. Click click click on the add button… nothing seems to happen. Ok, let’s try drawing a bit with the points that are already there. Ok, I can draw lines towards the three vanishing points. Wait a minute! There’s a fourth vanishing point! Where did that come from?? Oh, I can move that one freely! Alright, so now I can try the three point perspective! Yeah, this works, but it’s hard to tell which point the line is going to. Sometimes it jumps between two angles that are almost the same and I’m not sure why. I wish I only had three points that I could place wherever I wanted instead of these that are spinning around the center point when I try to move one of them. I can hardly get them back to what I have drawn already. And I can’t make horizontal or vertical lines any more. They are almost horizontal/vertical, but they are slightly off. I don’t understand why.”
I guess those three points that you get when you activate perspective mode are a sort of invisible horizon line? In that case I would prefer if it was visible, like the axis I made in the images above. I don’t really see why there has to be three points for that, One default point and one handle point should be enough. The default and handle points don’t have to be vanishing point (and should have another appearance so that no-one confuses them for a vanishing points). Then you could place points of your own that won’t spin around like a simulated planetary system.
For horizontal and vertical lines I’d wish that they worked the same as they do in MyPaint’s other modes: hold ctrl to make a horizontal or vertical line.
Altogether I’d say it’s a good beginning, but the interface needs a lot of work.
What do you think of my ideas above? Can they be merged with what you are doing? For example I think that the pivot point (see the third picture) and your “default” point can be one and the same. I guess that would make the horizon line obligatory, but that should be ok. Especially if it can be hidden using the eye symbol.