Yes, that is the answer. You have to completely enclose the center of a pad or a via within the copper fill. Once I did this, everything worked out as expected.
Excellent example. I wasn’t aware that an overlapping track segment, by itself, wouldn’t cause a zone fill. (I guess all of my zones must have qualified under one of the other cases.) That illustration needs to find its way into the User’s Manual.
A trace is enough. But one endpoint of it needs to be strictly within the zone. (if it is on the outline of the zone it is not enough.) I tested it in kicad 4.0.6 under fedora.
You were faster with your edit than i was with my tests.
And i must say your testcase pcb looks very nice. Could be included as is in the documentation.
[quote=“Rene_Poschl, post:10, topic:8401”]
Could be included as is in the documentation.
[/quote]I’ve been thinking recently that perhaps we as a help forum community should look into helping with the documentation. That would certainly give us a stable reference to direct folks too.
@bobc
I have not tested it, but at the moment I suspect that in the “end” example on the right, that the center of the trace is not “in” the zone. This may be nice to see by showing the traces in outline mode.
This is a really massive problem for a project I’m working on right now. Why oh why would a polygon stop filling if it does not contain a certain feature? How can one ‘force fill’ a polygon? For me this is a massive bug that is killing my project.
You specified your zone to be part of a net. Free floating copper is a bad idea from an EMI point of view. This is why only the parts of the fill that can be connected to the specified net are filled.
This doubles as a way to tell you that something is wrong with your connections as it is very clear if a zone does not fill. (The zone filling is not a guarantee that everything is connected properly. Use DRC for that. And even DRC does not check if you have a low impedance connection. It only checks if you have any connection.)
Thanks for the feedback, I’m using scripts to create boards, so I’m not particularly interested in being nannied by DRC for this particular project, but I need a predictable way of making copper areas, so is there a way to override the system?
You could have explained your special needs right from the beginning.
Maybe you can use graphic polygons, not zones. KiCad UI doesn’t let you draw graphics directly in a copper layer but you can draw to another layer and change the layer in its properties. If you use scripts you can naturally set the layer directly.
But polygons don’t take any DRC into consideration, i.e. they don’t give way to any other copper features and don’t know about any clearances.
If you want isolated copper areas you could also try zones with no net set.
Hi, bobc,
Sorry for bothering you with the same problem after 5 years.
I tried your methods but still cannot get my zone filled.
Do you have a clue about this?