ThisIsNotRocketScience / GerberTools

Tools to load/edit/create/panelizer sets of gerber files
MIT License
725 stars 144 forks source link

Copper fills not filling #108

Open bzroom opened 4 years ago

bzroom commented 4 years ago

It appears that some kind of polygonal area (copper fills) are not properly filling. On the first instance it's just not filled, on the remaining instances there is a thick border.

Gerber_Inner1 Gtl Gerber_Inner2 gbl

Here are the inputs and outputs:

Originally these were inner layers, but i moved them to the top and bottom layers for debugging: [panelizer-fill-bug.zip] (https://github.com/ThisIsNotRocketScience/GerberTools/files/4550243/panelizer-fill-bug.zip)

I briefly familiarized myself with the code but I can't tell exactly where these fills would be happening or what might cause this. If you can point me in the right direction I'll be happy to help debug it or run some tests/hit some breakpoints for you.

I have some ideas to contribute to this project maybe some day. :)

bzroom commented 3 years ago

@StijnKuipers I added an updated test gerber that i tested with the latest version of the panelizer: test.zip

Expect: expect

Actual: result

I retried with my new board and the latest version of Panelizer. The result was different but still broken. It seems like copper fill areas do not respect if there is a hole inside the copper fill. In my example gebers, there is a drill hole in the board outline, but the copper area fills over the whole area. The copper area also fills over traces that are inside the area. It's not subtracting islands for board holes or even internal traces within the profile.

Thank you!