I'd like to use the bucket fill tool to fill shapes based on the color of the layer below. Ideally totally automatically, like filtering the image.

For example: create a new image. Use Filter -> Render -> Noise -> Plasma to generate nice big random splotches of color. Add a layer on top and select it. Use Filter -> Render -> Pattern -> Checkerboard to fill the layer with squares. Here's the output of doing this: https://gist.github.com/pushcx/5d7719674cba12f912367a5db31aa9ed

How would I fill each square based on the color of the layer beneath it? I don't care if it uses the color at the geometric center of the square or some kind of average. I just don't want to have to center the mouse on a square, switch to the color picker, hide the top layer, click, show the top layer, switch to bucket fill, click, repeat several hundred times.

(I know this simple example could use the mosaic filter. My real top layer is more complex.)

  • 2
    Are you aware of layers masks? Because that seems to be what you want to do, but maybe you've already ruled them out for some reason - and they wouldn't be much use if you only want to have a single, random color from that area. Can you provide a sample image which shows what you want to achieve and explain what this will be used for? Jul 7, 2019 at 7:12
  • I'm aware of layer masks, and they don't do what I'm describing, unless I'm missing something. Is the description of how to create a sample image above not clear?
    – pushcx
    Jul 8, 2019 at 16:11
  • I added a link to an example file. If you know how to link it more directly, please do.
    – pushcx
    Jul 8, 2019 at 16:26
  • 1
    That sample file is the simple checkerboard you've already ruled out as not quite what you are asking for. You have an X-Y problem: meta.stackexchange.com/questions/66377/what-is-the-xy-problem - you want to do X, and think Y is the solution, and ask only for how to do Y instead of explaining X to the people who could probably help. Please describe your actual goal, show actual sample files, describe your workflow, ... Jul 8, 2019 at 22:46
  • This is my workflow. The only changes are some color changes to the plasma layer, and differently-shaped polygons instead of all squares. The problem is the same: how to flat-fill the polygons based on the layer below. I don't understand why, after I distilled it to an example and gave you that example you think it might not be an example, but it's an example.
    – pushcx
    Jul 9, 2019 at 2:00

1 Answer 1

  • Create a layer group
  • Add a layer in it, paint it with your color/noise. Set to Multiply mode.
  • Add a 2nd layer under the first, filled with transparency.
  • Make your shapes in white on that layer

enter image description here

  • Yeah, that's how far you get with layer masks or layer multiplication, but what about the "How would I fill each square based on the color of the layer beneath it? I don't care if it uses the color at the geometric center of the square or some kind of average." (think square=shape)? Jul 7, 2019 at 12:52
  • Thanks for taking a shot at it, but this doesn't address my question. The shapes are not filled with a solid color based on the color below.
    – pushcx
    Jul 8, 2019 at 16:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.