Router: Do not collide items within a net tie footprint
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13909
(cherry picked from commit 2d7c5c5c0f
)
This commit is contained in:
parent
df0f626283
commit
3dfc502814
|
@ -235,6 +235,17 @@ bool PNS_PCBNEW_RULE_RESOLVER::IsNetTieExclusion( const PNS::ITEM* aItem,
|
|||
std::shared_ptr<DRC_ENGINE> drcEngine = m_board->GetDesignSettings().m_DRCEngine;
|
||||
BOARD_ITEM* collidingItem = aCollidingItem->Parent();
|
||||
|
||||
FOOTPRINT* collidingFp = static_cast<FOOTPRINT*>( collidingItem->GetParentFootprint() );
|
||||
FOOTPRINT* itemFp = aItem->Parent()
|
||||
? static_cast<FOOTPRINT*>( aItem->Parent()->GetParentFootprint() )
|
||||
: nullptr;
|
||||
|
||||
if( collidingFp && itemFp && ( collidingFp == itemFp ) && itemFp->IsNetTie() )
|
||||
{
|
||||
// Two items colliding from the same net tie footprint are not checked
|
||||
return true;
|
||||
}
|
||||
|
||||
if( drcEngine && collidingItem )
|
||||
{
|
||||
return drcEngine->IsNetTieExclusion( aItem->Net(), ToLAYER_ID( aItem->Layer() ),
|
||||
|
|
Loading…
Reference in New Issue