Keep courtyard caches alive during move.

Fixes https://gitlab.com/kicad/code/kicad/issues/12999
This commit is contained in:
Jeff Young 2022-11-25 17:19:27 +00:00
parent a48d06c40d
commit 4aff5c7618
3 changed files with 4 additions and 1 deletions

View File

@ -742,6 +742,8 @@ public:
for( auto& arc : m_arcs )
arc.Move( aVector );
m_bbox.Move( aVector );
}
/**

View File

@ -54,7 +54,6 @@ void DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances()
for( FOOTPRINT* fpB : m_FpInMove )
{
fpB->BuildCourtyardCaches();
BOX2I fpBBBox = fpB->GetBoundingBox();
const SHAPE_POLY_SET& frontB = fpB->GetCourtyard( F_CrtYd );
const SHAPE_POLY_SET& backB = fpB->GetCourtyard( B_CrtYd );

View File

@ -1703,6 +1703,8 @@ void FOOTPRINT::SetPosition( const VECTOR2I& aPos )
m_cachedBoundingBox.Move( delta );
m_cachedVisibleBBox.Move( delta );
m_cachedTextExcludedBBox.Move( delta );
m_courtyard_cache_back.Move( delta );
m_courtyard_cache_front.Move( delta );
m_cachedHull.Move( delta );
}