Two questions about filled zones on PCB

I have two questions about filled zones:

  1. Looks like zones assigned for different nets could intersect and zone only respect clearance to tracks/pads and not other zones. Maybe, I do something wrong? Now I need to add tracks (with same net as zone) inside zones to achieve proper clearance between zones in complex situations.

  2. Why zones have such high drawing priority? For example, silk screen text goes OVER copper tracks but UNDER copper zones. I understand, that I could turn off zone filling, but still it is very inconvenient. Maybe, I do something wrong? I’ve though, that zones should have same drawing priority as tracks on same level, or even less (to show tracks OVER zones).

Thank you.

KiCad draws the active layer as the top layer. You can use transparency for layers to see what is below and you can view zones in outline mode via the buttons in the left toolbar.

To be honest the kicad original colour scheme is not really good for the current feature set. Better ones are found here

1 Like

PCB’s are crowded places, and coming up with a good algorithm to clearly show what you want to see, but also see other stuff to keep orientation can be an extensive study in GUI design.

I had some trouble adjusting from the old “xor” drawing to the way it works now. Back then I thought the “viewability” of the old way was better, maybe I just thought it was better because I was used to it. The “xor” way was dropped because it had to be handled by the CPU, while transparency is done by you video hardware.

KiCad’s current algorithm is pretty basic. It just draws the active layer on top of the others, and it groups top and bottom layers.
If Top copper is active, then Top Silkscreen is drawn over Bottom Silkscreen and vice versa.

The High Contrast mode is also very simple, It just turns all the other layers grey.

This can be improved a lot, and sometimes I try to think how.
How about this: What if you split the “Layer Manager” horizontally in 2. If you then drag a layer to the “manual” area, then those layers are always drawn on top, and in the order they are in the “manual” box. With this, you can for example always put SilkScreen on top, but with a high transparency.

Another simple algorithm would be to draw the current layer on the bottom, but with 100% opacity, and draw other layers over them with high transparency values.

“Stuff” could be done with dual transparency settings, depending on whether a certain layer is active or not. Now I find that I never set opacity of a layer below 70% because then they become to vague to work on them, because all contrast goes down with opacity. Changing opacity manually with each layer change is annoying, so I just set it once

Adjusting transparency could also be made much easier. For example with a slider bar under the text of each layer name, or with the scrollwheel when hovering over a layer name.

Viewability of layers has been discussed before on this forum. And as with lots of other enhancements in KiCad. There are plenty of idea’s and not enough developers to implement them.

Have you ever experimented with opacity settings?
You can access it by double clicking on the colored square before a layer name. As a starter, begin with setting the opacity of all your copper layers (at least the layers with zones) to around 80% and see how that works for you.

Edit: Just had a look at the github link Rene posted. I don’t care much for these “themes”, and:

An automatic patch script can be used to transfer a colour scheme into your KiCad settings files. Make sure KiCad is closed before using it.

Having some presets, and being able to change them on the fly and automatically, for example depending on what is the active layer could be useful.

In the Layers Manager, there are also a bunch of presets by right clicking in that area:

Adding some custom settings to this list would be useful. Then you can make settings depending on the task you are doing, For example laying tracks (on different layer pairs) or fixing the silk screen or placing components.

A good start for what you would like?

1 Like

Nope, not even close.
I do not care about the colors in Eeschema, with 4 execptions:

  1. Background must be white.
  2. Everything must be viewable, high enough contrast.
  3. No idiot colors.
  4. Schematic must be printable in Black & White.

The default settings in Eeschema are just fine for me, though I had to get used to the bright green wires and soft yellow component background.

What I care about is usability, and the colors are mostly irrelevant to that, and only apply to the PCB part. My whole post was about layer transparency and drawing order of the layers in Pcbnew.

This though does have potential:
If it’s in Eeschema V6, then it’s likely to also get into Pcbnew V7. But having to open the preferences to change the theme is useless to me, as such settings are designed to be used once.
I was writing about automatic changes of opacity and layer drawing order whenever a layer change is made in Pcbnew.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.