← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] Multilayer keepout zones

 

Oliver,

Thanks for making the changes.

JP,

Would you please take a look at this patch set when you get a chance.
You are more familiar with the board zone code than I am so you may find
issues that I may have missed.

Thanks,

Wayne

On 9/26/2017 7:09 AM, Oliver Walters wrote:
> I have found and fixed a couple of bugs, and now also improved the layer
> selector for keepout areas. There is now a checkbox next to each layer
> to convey that multiple layers can be selected.
> 
> Updated patch set attached.
> 
> Jon, I think this should fix the deleted keepout issue you were seeing -
> the zones not filling to the edge isn't me, I think.
> 
> Wayne, the load/save issues are now cleaned up too.
> 
> Please let me know if there is anything else you spot.
> 
> Oliver
> 
> On Tue, Sep 26, 2017 at 6:48 AM, Oliver Walters
> <oliver.henry.walters@xxxxxxxxx <mailto:oliver.henry.walters@xxxxxxxxx>>
> wrote:
> 
>     Wayne,
> 
>     I was initially thinking that multilayer only made sense for
>     keepouts and that check was simply a guard. 
> 
>     Now I think it is a good idea for copper too. I can remove that
>     check in the file parser. 
> 
>     Oliver
> 
> 
>     On 26 Sep 2017 05:32, "Wayne Stambaugh" <stambaughw@xxxxxxxxx
>     <mailto:stambaughw@xxxxxxxxx>> wrote:
> 
>         Oliver,
> 
>         I have a minor issue with your patch set.  What is your
>         rationale for
>         assuming if a zone is on more than one layer that it is a
>         keepout zone?
>         I'm not sure that this would always be valid.  There is already a
>         "keepout" keyword in the list of board file keywords for just
>         such an
>         occasion.  Wouldn't it be better to use the "keepout" keyword rather
>         than make assumptions about zones based on what layers they are on.
>         This is also not very human readable without some serious
>         knowledge of
>         the pcb file parser.
> 
>         Cheers,
> 
>         Wayne
> 
>         On 9/25/2017 9:09 AM, Oliver Walters wrote:
>         > Attached is a patchset that allows keepout zones to "exist" on
>         multiple
>         > copper layers. This means you can specify a keepout zone for
>         the entire
>         > copper stack (or parts thereof).
>         >
>         >
>         > Features:
>         >
>         > If a keepout zone is specified as multiple layers, the
>         .kicad_mod file
>         > output is adjusted slightly, it will write "(layers F.Cu
>         In1.Cu B.Cu)"
>         > e.g. instead of "(layer F.Cu"). If a single layer is selected,
>         it saves
>         > as it would have previously.
>         >
>         > Rendering is working in legacy and GAL and seems to work as
>         expected for
>         > various combinations of layer visibility.
>         >
>         > Zone cutout (where it intersects the keepout) occurs on for
>         each layer
>         > that the keepout intersects a copper plane.
>         >
>         > DRC violations (pads and tracks inside keepout) work for all
>         layers on
>         > which the keepout exists.
>         >
>         > Screenshot:
>         >
>         > https://i.imgur.com/0JHt3S8.png <https://i.imgur.com/0JHt3S8.png>
>         >
>         > As this patch set touches a lot of files, I'd appreciate some
>         feedback!
>         >
>         > My longer term idea is to integrate keepout zones into module
>         > (footprint) files, with the ability to select from a
>         combination of
>         >
>         > a) F.Cu
>         > b) Inner.Cu (all internal copper)
>         > c) B.Cu
>         >
>         > Let me know if you spot any bugs or glitches!
>         >
>         > Oliver
>         >
>         >
>         > _______________________________________________
>         > 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>
> 
> 
> 


Follow ups

References