Krita has a framework to allow painting assistant, it is the virtual version of physical tools such as rulers, compass... It allows to restrict the drawing to follow a given shape. It differs from the line/ellipse tools in that those tools gives perfect and regular results, while the assistant allows the artist to have some control on the drawing. The following blog post contains a video that show it in work:
The tool to manipulate painting assistant is limited, it allows creation and edition. But the current method to create assistant is not so good, it currently creates assistants somewhere on the canvas. Instead, the ideal creation mode would be for the user to select which type of assistant in the tool option, and then when the user click on area of the canvas without handles or icons, it would start creating painting assistant. For instance, for the line assistant, the user would click twice and it will create the two end-points.
Extra bonus, if a preview of the assistant is shown, for instance, for the line tool, after the first click a line "follow" the mouse, for the ellipse, after a second click it is possible to show an ellipse that adjust to the mouse, for the spline assistant, after the first click a line "follow" the mouse, then after the second click it is possible to see the curve deformation. For the perspective assistant, it would have to wait until the fourth click.