[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Dead Copper



joeft wrote:
Dan McMahill wrote:

kmk wrote:

ST de Feber wrote:


Can PCB remove dead copper ?




No.
This is a feature still missing in pcb.


If anyone wants to contribute this, I'm sure it would be welcomed. I'd recommend having an option that sets some area threshold so the user can specify "remove islands less than X mil^2 in area".


I think the challenge is going to be that the copper fill is implemented as a polygon with clearances drawn on top of it so island removal will entail drawing more clears. This is as opposed to a fill which is done with lots of line segments where you simply delete those which don't connect anywhere.

It may be useful to look into the ability to specify that a copper fill is done with lines vs a polygon, but I haven't really put much thought into that.



Dan,

Please don't do it with lines! Every implementation I've seen where the fill was done with lines was very error prone. The current implementation is much better.

hmm. I had pretty good luck back in cadnetix days.

If lines are used:
The line width used for filling must be user controllable to get good results on complicated fill/plane boundaries. It is hard for the user to specify an exact width for fill copper or cutouts.
"Healing" around a fill intrusion ("plow") can be tricky.
The ends of the lines leave a lot of "bumps".

agreed.

Calculating connectivity can get very tricky.

well... we get it wrong right now :(

I've attached a png export which shows my main complaints with how we do it right now.

My complaints are (in no particular order)

- thermal spoke width is tied to the annular ring of the pad. I think it is done to avoid funny bumps inside the drill area. But the effect is the thermals on the top left via are not so hot when compared to the lower left via

- We don't deal well with pins/vias near the edge of a polygon. Take the lower right via. I'd rather not see those acute angles in copper. Also the upper right via has 2 spokes going basically nowhere. On that one you might argue that the copper polygon should be extended to go around it, but the other case is a perfectly reasonable thing, I just wish the result got cleaned up a bit. This is the once case where you'd probably do better with filling with lines because you couldn't get that sharp point (without using a very small aperture).

- Last, and clearly the most important, in this layout, the isolated rectangle of copper at the lower right is still considered to be electrically connected to the rest of the copper polygon. In other words this represents a situation where the tool might tell you that you have connected up everything but you might not have in reality.

This last point I think relates to the island removal because in both cases we need to determine that a particular area is unconnected.

If anyone cares to try and code up something to address these, I'd welcome the help.

-Dan


PNG image