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 drawing tool suggestions Tremor Wiggle.png

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.

Krita drawing tool suggestions Thinning freehand.png

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.

Krita drawing tool suggestions Map To Path Length.png

(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.

Krita drawing tool suggestions Edit Mode.png

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

Krita drawing tool suggestions Edit Mode Extras.png

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.

Krita drawing tool suggestions New Drawing Modes.png

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.

This page was last edited on 19 March 2013, at 15:32. Content is available under Creative Commons License SA 4.0 unless otherwise noted.