ZONE_FILLER::buildThermalSpokes() fix incorrect spoke shape for pad shapes with offset.
Fixes #12201 https://gitlab.com/kicad/code/kicad/issues/12201
This commit is contained in:
parent
0040ffc567
commit
5616ef2e7c
|
@ -1413,8 +1413,10 @@ void ZONE_FILLER::buildThermalSpokes( const ZONE* aZone, PCB_LAYER_ID aLayer,
|
||||||
PAD dummy_pad( *pad );
|
PAD dummy_pad( *pad );
|
||||||
dummy_pad.SetOrientation( spokesAngle );
|
dummy_pad.SetOrientation( spokesAngle );
|
||||||
|
|
||||||
// Spokes are from center of pad, not from hole
|
// Spokes are from center of pad shape, not from hole. So the dummy pad
|
||||||
dummy_pad.SetPosition( -1 * pad->GetOffset() );
|
// (the pad shape) has no offset and is at position 0,0
|
||||||
|
dummy_pad.SetPosition( VECTOR2I( 0, 0 ) );
|
||||||
|
dummy_pad.SetOffset( VECTOR2I( 0, 0 ) );
|
||||||
|
|
||||||
BOX2I reliefBB = dummy_pad.GetBoundingBox();
|
BOX2I reliefBB = dummy_pad.GetBoundingBox();
|
||||||
reliefBB.Inflate( thermalReliefGap + epsilon );
|
reliefBB.Inflate( thermalReliefGap + epsilon );
|
||||||
|
|
Loading…
Reference in New Issue