Fix broken logic for hidden pins.

Fixes https://gitlab.com/kicad/code/kicad/issues/11771

(cherry picked from commit b710982875)
This commit is contained in:
Jeff Young 2022-06-09 00:04:49 +01:00
parent 41a9293106
commit bb5fd5a2ec
1 changed files with 9 additions and 6 deletions

View File

@ -932,13 +932,16 @@ const EDA_RECT LIB_SYMBOL::GetBodyBoundingBox( int aUnit, int aConvert, bool aIn
{
const LIB_PIN& pin = static_cast<const LIB_PIN&>( item );
// Note: the roots of the pins are always included for symbols that don't have a
// well-defined body.
if( pin.IsVisible() )
{
// Note: the roots of the pins are always included for symbols that don't have
// a well-defined body.
if( aIncludePins && pin.IsVisible() )
bbox.Merge( pin.GetBoundingBox( false, true ) );
else
bbox.Merge( pin.GetPinRoot() );
if( aIncludePins )
bbox.Merge( pin.GetBoundingBox( false, true ) );
else
bbox.Merge( pin.GetPinRoot() );
}
}
else
{