Keep courtyard caches alive during move.
Fixes https://gitlab.com/kicad/code/kicad/issues/12999
This commit is contained in:
parent
a48d06c40d
commit
4aff5c7618
|
@ -742,6 +742,8 @@ public:
|
||||||
|
|
||||||
for( auto& arc : m_arcs )
|
for( auto& arc : m_arcs )
|
||||||
arc.Move( aVector );
|
arc.Move( aVector );
|
||||||
|
|
||||||
|
m_bbox.Move( aVector );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -54,7 +54,6 @@ void DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances()
|
||||||
|
|
||||||
for( FOOTPRINT* fpB : m_FpInMove )
|
for( FOOTPRINT* fpB : m_FpInMove )
|
||||||
{
|
{
|
||||||
fpB->BuildCourtyardCaches();
|
|
||||||
BOX2I fpBBBox = fpB->GetBoundingBox();
|
BOX2I fpBBBox = fpB->GetBoundingBox();
|
||||||
const SHAPE_POLY_SET& frontB = fpB->GetCourtyard( F_CrtYd );
|
const SHAPE_POLY_SET& frontB = fpB->GetCourtyard( F_CrtYd );
|
||||||
const SHAPE_POLY_SET& backB = fpB->GetCourtyard( B_CrtYd );
|
const SHAPE_POLY_SET& backB = fpB->GetCourtyard( B_CrtYd );
|
||||||
|
|
|
@ -1703,6 +1703,8 @@ void FOOTPRINT::SetPosition( const VECTOR2I& aPos )
|
||||||
m_cachedBoundingBox.Move( delta );
|
m_cachedBoundingBox.Move( delta );
|
||||||
m_cachedVisibleBBox.Move( delta );
|
m_cachedVisibleBBox.Move( delta );
|
||||||
m_cachedTextExcludedBBox.Move( delta );
|
m_cachedTextExcludedBBox.Move( delta );
|
||||||
|
m_courtyard_cache_back.Move( delta );
|
||||||
|
m_courtyard_cache_front.Move( delta );
|
||||||
m_cachedHull.Move( delta );
|
m_cachedHull.Move( delta );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue