← Back to team overview

kicad-developers team mailing list archive

Re: [RFC] new connectivity algorithm - testers needed

 

BOARD_CONNECTED_ITEM::GetNet()?

On 11/14/2017 5:50 AM, miles mccoo wrote:
> 
> 
> old thread, but I think it's relevant to my issue. My interest is mostly
> in the python interface to pcbnew.[0]
> 
> 
> With the new connectivity stuff, what's the proper way to ask a net what
> pads belong to it?
> 
> In python, I used to be able to do net.Pads() [1]
> 
> I tried adding connectivity.h[2] to boards.i via a new connectivity.i
> but then I realized that GetConnectedPads can't take a net. net is not a
> board_connected_item
> 
> I could iterate through all pads and compare each one's net. Seems like
> a not so good way to do it.
> 
> I do see that the implementation of GetPadCount(aNet) does just that.[3]
> Also, in that implementation, it's referencing connAlgo's padList. Is
> this better than asking board for its pads? I'm thinking the whole
> "don't repeat yourself" thing [4]
> 
> So, what is the recommended way to get a net's list of pads?
> 
> Miles
> 
> 
> 
> [0] my tutorials are referenced from kicad's tutorials list
> http://kicad-pcb.org/help/tutorials/
> -> https://kicad.mmccoo.com/kicad-scripting-table-of-contents/
> 
> 
> [1]: removed with this checkin:
> 
>  Author: Tomasz Włostowski <tomasz.wlostowski@xxxxxxx
> <mailto:tomasz.wlostowski@xxxxxxx>>  2017-03-22 14:51:07
> Committer: Tomasz Włostowski <tomasz.wlostowski@xxxxxxx
> <mailto:tomasz.wlostowski@xxxxxxx>>  2017-06-23 11:12:37
> Parent: 8b59350e44a9894f02977ae26da166b239ef7da3 (Pcbnew: fix override
> release build error.)
> Child:  75cda5021d72011f2de54cadbca32581a5319fa9 (Assure that
> NETINFO_ITEMs have a NETCLASS object assigned)
> Branches: master, remotes/origin/master
> Follows: 4.0.0-rc2
> Precedes: 
> 
>     Removed legacy connectivity/ratsnest algorithm, replaced with the
> new one. No legacy autorouting for the moment
> 
> 
> [2]: shouldn't this be called class_connectivity_data.h?
> 
> 
> [3] here's GetPadCount
> unsigned int CONNECTIVITY_DATA::GetPadCount( int aNet ) const
> {
>     int n = 0;
> 
>     for( auto pad : m_connAlgo->PadList() )
>     {
>         if( !pad->Valid() )
>             continue;
> 
>         auto dpad = static_cast<D_PAD*>( pad->Parent() );
> 
>         if( aNet < 0 || aNet == dpad->GetNetCode() )
>         {
>             n++;
>         }
>     }
> 
>     return n;
> }
> 
> 
> [4] https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
> <https://en.wikipedia.org/wiki/Don%27t_repeat_yourself>
> 
> 
> On Mon, Jul 3, 2017 at 11:47 AM, Kristoffer Ödmark
> <kristofferodmark90@xxxxxxxxx <mailto:kristofferodmark90@xxxxxxxxx>> wrote:
> 
>     Hey Tom!
> 
>     Any ETA for the new Via tool dialog? It's some solid work you have
>     done, thanks!
> 
>     - Kristoffer
> 
> 
>     On 2017-06-27 21:54, Tomasz Wlostowski wrote:
> 
>         On 27.06.2017 21 <tel:27.06.2017%2021>:24, Simon Küppers wrote:
> 
>             Small Bump.
> 
>             Can anyone shed some light on the new Via Tool? Is it
>             supposed to be not
>             ready yet? The Track & Via Properties Dialog looks really
>             unfinished and
>             I cannot modify anything beside Position and Via Size there.
>             Is it
>             because I am using the Cairo Canvas?
> 
>         Sorry, I forgot that I left the dialog unfinished. Will fix in a
>         couple
>         of days...
> 
>         Tom
> 
>         _______________________________________________
>         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
> 


References