mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 02:03:12 +02:00
Be more diligent about checking for zone file deps
The outline collision is relatively cheap (especially after filtering bbox collisions) so check if a zone REALLY depends on another zone before making it wait. Waiting for zones can really increase the total fill time
This commit is contained in:
parent
e0a6ff3f14
commit
8e361e8a15
@ -210,7 +210,10 @@ bool ZONE_FILLER::Fill( std::vector<ZONE*>& aZones, bool aCheck, wxWindow* aPare
|
||||
BOX2I inflatedBBox = aZone->GetCachedBoundingBox();
|
||||
inflatedBBox.Inflate( m_worstClearance );
|
||||
|
||||
return inflatedBBox.Intersects( aOtherZone->GetCachedBoundingBox() );
|
||||
if( !inflatedBBox.Intersects( aOtherZone->GetCachedBoundingBox() ) )
|
||||
return false;
|
||||
|
||||
return aZone->Outline()->Collide( aOtherZone->Outline(), m_worstClearance );
|
||||
};
|
||||
|
||||
auto fill_lambda =
|
||||
|
Loading…
x
Reference in New Issue
Block a user