mitxela / kicad-round-tracks

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Need better detection for fixed intersections

mitxela opened this issue · comments

If multiple tracks join at a pad that's part of a footprint they can get rounded away from it.

image

I'll fix this the same way vias are handled, just need to iterate over all possible fixed intersections.

In the mean time, you can move the endpoints of the tracks slightly, so they're still within the pad but not actually touching.

This is fixed now I think, I'll close this when I do the next release.

It's a bit annoying that we have to explicitly check for SMD pads. I've no idea if this would ever turn up on a real PCB, but technically there's an edge case where a surface mount pad is on the opposite side of the board to a track of the same net that you do want to round. Thankfully this doesn't seem to have added much overhead.

image
now correctly becomes:
image

Probably overthinking this, but...

I found on a few of my designs the tracks didn't perfectly intersect the centre of the pad. Probably because I'd moved the component slightly afterwards. Really this should only melt if the intersection is not within the pad, but there are so many varieties of pad shapes, including custom polygons, that exact checking would be too expensive.

Even with the pad shapes where we can check exactly without too much trouble (circles and rectangles) I found sometimes tracks didn't get rounded when they should do: when just one track is approaching a pad, but has a bend as it enters the pad.

Now updated it to avoid rounding if the intersection is within the bounding box of a pad, but only if the remaining track ends are outside of the bounding box.

So this:
image
does get rounded:
image
But this:
image
doesn't, as it would break connection to the pad:
image