← Back to team overview

kicad-developers team mailing list archive

Re: What's the state of the zone outline thickness stuff?

 

I made another optimisation, this time within the Clipper library.  When the offset exceeds the MiterLimit it will perform jtRound instead of jtSquare.  I *think* this makes the zero-width-border algorithm materially indistinguishable from the old algorithm (well, except that several bugs are fixed in the new one and it’s faster).

> On 13 Jul 2019, at 23:05, Jeff Young <jeff@xxxxxxxxx> wrote:
> 
> I found a bug in our interface to the Clipper lib, so the extra plotter smoothing isn’t needed.  (We were passing in delta as the MiterLimit, but Clipper is expecting a scaling to apply to delta, so we were getting a MiterLimit of delta^2 — which results in some rather spiky corners.)
> 
> Before and after shots of John’s test board:
> 
> <PastedGraphic-4.png>
> 
> 
>> On 13 Jul 2019, at 21:04, Jeff Young <jeff@xxxxxxxxx <mailto:jeff@xxxxxxxxx>> wrote:
>> 
>> I did some more research on this.  One issue of the new algorithm is that it produces sharp corners where holes meet.  I could find any others, so hopefully this is the only thing keeping it off.
>> 
>> Along with the adjacent-zones fixes, I’ve buttered up the plotter so that it does some corner smoothing in the no-outline-thickness case.  It does not on screen, because for it to work properly it has to union the same-layer-same-net zones to prevent divots where zones abut (the whole adjacent-zones bug I’m trying to fix).
>> 
>> With this I think it works pretty nicely.  Are there other factors mitigating against its adoption?  If not, do we still want a preference for it, or can we just make it the new algorithm?
>> 
>> Cheers,
>> Jeff.
>> 
>> PS: we’d also need to answer a couple of other details: for instance, do we want the plotter-style smoothing when exporting to other file formats?
>> 
>> 
>>> On 13 Jul 2019, at 01:21, Jeff Young <jeff@xxxxxxxxx <mailto:jeff@xxxxxxxxx>> wrote:
>>> 
>>> I have a fix for adjacent zone fillet suppression, but it requires the newer zero-width-stroked outlines.  Are we going to be turning those on, or is it only for people with performance problems?
>>> 
>>> Cheers,
>>> Jeff.
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
>> 
>> 
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp


Follow ups

References