[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