I tried implementing this once, but it slowed down PCB a lot. In my case, it was square pads, and I was trying to squeeze another trace out through the corner. I think I decided to just go with rounded pads instead.
Note that this kind of slowdown would be even worse with layouts with lots of polygons, like yours. The problem is that the various output drivers have primitives for circles and rectangles, but not rounded-corner rectangles. So, we have to do them ourselves with a collection of circles, arcs, lines, and/or polygons.
