Krita/Drawing Tool Ideas
These are just a number of personal ideas for the drawing tools
Tremor and wiggle for the freehand tool
Krita offers a variety of smoothing methods. What about the other way round? Two possibilities include the Tremor and Wiggle options in Inkscape:
Krita offers position jitters, however the resulting output is not continuous. In Inkscape, Tremor also affects the width of the calligraphic stroke, but Tremor in Krita could just affect the stroke position. Users could get additional effect with size and other jitters.
"finish stroke" for the freehand and dynamic drawing tools
This was first proposed by Animtim in Bug 312437 : Add a switch to activate "finish stroke" with weighted smoothing
I suggest having this feature for both the freehand and dynamic drawing tools. The options would be:
- no stroke finish at all
- finish stroke without thinning (keep width of the stroke end along line finish)
- finish stroke with thinning
Also, instead of drawing a line straight to the cursor, the "finishing stroke" should follow the cursor path, progressively thinning until where the cursor was released.
This will enable the users to draw smooth thinning lines in a controlled manner.
Map distance to path option for path and freehand path
Currently, you have to set an absolute distance in pixels for the Distance or Fade. What if you want to map the dynamic precisely onto the length of a drawn path, though? Hence, a "map to path length" option in the dynamics section. With this on:
- First Krita checks if the path is being drawn freehand or with a path tool.
- If so, it calculates the length of the path.
- Then it sets the value of the dynamic to the path.
There could also be an option to subdivide.
(it doesn't need to be just size being mapped, it can be anything)
Edit mode for drawing tools
Krita allows you to stroke any vector object with a brush. There are just a few issues:
- You need to create a vector layer
- You need to select the object and choose the stroke command (though you can assign a shortcut to the second)
- You need to merge the resulting layer (which can be tedious if you need to repeat the operation over and over)
- Then you need to delect the vector object/layer
Just because it's possible, it doesn't mean it's pleasant to do. What I like about Krita's interface philosophy is that it tries to help you focus on the drawing, not on the menus. You can draw rectangles in Gimp, too, but you need to go find "stroke selection" in the interface.
For this reason, I suggest we combine the best of both worlds through an extra mode: Edit mode. This creates a temporary ghost assistant (which is really just the corresponding vector shape), and allows you to stroke and automatically get rid of it when you're done. So how does this work?
For most drawing tools, you'll get two modes:
- Simple mode: the existing mode
- Edit mode: which shows a temporary, editable vector object on canvas. Mouseover shows "Alt to trace, Enter to finish, Space to stamp, Del to cancel."
- Switching tools will also cause it to disappear.
For example, you use the Rectangle tool. You draw out a rectangle, that you can now rotate, skew and make rounded corners (tab to toggle shape specific edit mode?). When you're happy, you can either:
- By holding down Alt, you can trace part of the shape.
- Press Enter, which will cause the whole rectangle to be stroked and the vector to disappear.
- Press Space to stroke, without causing the vector to disappear. I am borrowing this from Inkscape, where using Spacebar allows you to "stamp", i.e. drop copies of your object.
It would also make using the path tool a lot easier. I have trouble getting used to drawing a path exactly like I want right now. This allows me to just go back and edit it like a vector object.
This should be useful for artists to more quickly place the elements for background objects and architecture, land and space vehicles, jewelry and steampunk designs, allowing them to focus on the designs, rather than on getting the lines right (especially arcs, ugh).
A few additional features could also be introduced:
- Rounded lines: when you're drawing pipings and such, the rounded corners are a pain to draw. There could be control points for rounding just like with rectangles.
- Regular Polygons/Stars: Inkscape has this, it's missing in Krita.
- It'd be nice if it were possible to modify perspectives this way as well by Ctrl+Alt+dragging corners for example
New drawing modes for drawing tools
I like the way you can use the Ellipse tool to draw ellipses at any angle. Deevad even explained how you can draw circles in perspective correctly using this tool! Why can't we can't we have it as a drawing mode? More generally, I am hoping for the following extra drawing modes:
- Rectangle: 3 point parallelogram, perspective box?
- Ellipse: ellipse assistant type, 3 point circle drawing mode, perspective box (because drawing ellipses in perspective are a pain)
- Polyline: paraxial mode, "alignment snap" option (snap to the horizontal or vertical alignment of previously placed points)
- Polygon: the current mode would become the "freehand" polygon. Then Polygon and Star could be added.
Notice that I proposed "perspective boxes" at several occasions. This feature could integrate with Deevad's perspective grid proposal, with the corners being drawn snapping as they approach the direction of the vanishing points. In my proposal for Edit mode, I suggest perspective capabilities there, too, but basically users will be able to choose the option that works best for them.
Other drawing tools that could be created
Spiral and Grid, basically. They're both a pain to draw manually.