This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Feature: Array System for Krita

Tags: None
(comma "," separated)
User avatar
tushantin
Registered Member
Posts
33
Karma
0
OS

Feature: Array System for Krita

Mon Oct 12, 2020 11:47 am
Hi. While doing Inktober doodles a while back (particularly cross-hatching, and trying to decorate things that have nothing to do with crosshatching), I found myself feeling a need for a feature that I don't think exists yet for a drawing-program (besides Blender, maybe). And that's the Array system.

Krita already has a Clone Layer tool, which is great but I rarely use it because it's sort of restrictive in the sense -- you can't transform it, mirror it, distribute it equally, etc. Which is why I wondered if it could be extended with an Array system.

To put simply, what the Array system would do is do exactly what the Clone Layer does, but allow you to (much like with Blender's Array modifier) create multiple clones in an array non-destructively. But unlike with Blender's Array modifier, you can use the full extent of the 2D space -- such as array the clones not just in a line or in a circular path, but perhaps even in a custom path that can be defined on the canvas itself, or even mirror it, rotate it (or give you the option to "not" mirror or rotate it while on a path), scaling, randomizing, etc. Perhaps, later down the line, it may even be possible to alter colors for each of those clones in the array, non-destructively.

This could have a lot of potential uses. For example, if extended even further, it could make non-destructive decoration-design much easier too, like Celtic Knots, or Baroque patterns. It would also make painting easier, such as quickly duplicating repetitive painted objects in one go.

What do you guys think?
User avatar
TheraHedwig
KDE Developer
Posts
1794
Karma
10
OS

Re: Feature: Array System for Krita

Mon Oct 12, 2020 11:55 am
<quote>you can't transform it, mirror it, distribute it equally, etc. Which is why I wondered if it could be extended with an Array system.</quote>

You can use a transform mask?

Also...

https://docs.krita.org/en/reference_man ... array.html
User avatar
tushantin
Registered Member
Posts
33
Karma
0
OS

Re: Feature: Array System for Krita

Mon Oct 12, 2020 12:04 pm
TheraHedwig wrote:<quote>you can't transform it, mirror it, distribute it equally, etc. Which is why I wondered if it could be extended with an Array system.</quote>

You can use a transform mask?

Also...

https://docs.krita.org/en/reference_man ... array.html

Okay, I just now confirmed that the Transform Masks work. This is great. Thanks!

That said, I'm not sure if I understand the manual on how to actually use clone-array. Can it be explained how I could go about achieving it?
User avatar
TheraHedwig
KDE Developer
Posts
1794
Karma
10
OS

Re: Feature: Array System for Krita

Mon Oct 12, 2020 12:19 pm
It's under layers->split->clones array.
User avatar
tushantin
Registered Member
Posts
33
Karma
0
OS

Re: Feature: Array System for Krita

Mon Oct 12, 2020 12:34 pm
TheraHedwig wrote:It's under layers->split->clones array.

Got it. I never really knew this feature existed. That's a nice surprise. xD

But yeah, once the precise coordinates are set at the get go, can I automatically edit them with the same kind of precision? For instance, adding and removing new clones on the fly, or adjusting their rotations on the fly, or mirroring them in exactness without too much distortion, etc. I'm trying to find options, but all it gives me the same option to redo cloning, and not edit the existing ones.

What I'm looking for is a bit more parametric and user-friendly than that -- something that can do the same things, and more, by just clicking and dragging for speed and efficiency. For example, a system (or script, maybe) that can attach to the group that's automatically created by the Clones Array, that will give you the option to change the number or co-ordinates of the clones, perhaps with a canvas widget that can intuitively let you move and rotate with either precision or, if need be, by the eye. It just becomes much faster to use it and paint stuff, eliminating guess-work or having to redo the arrays.

I generally do this for modelling, where I set up controllers with empties so that I can intuitively modify arrays in Blender, and I sometimes use Grease Pencil to draw in the same fashion. So I was wondering what's stopping a painting application from employing similar kinds of easy-to-use / faster-to-use tools, but in its own different ways.


Bookmarks



Who is online

Registered users: Bing [Bot], claydoh, Evergrowing, Google [Bot], rblackwell