Teardrops: use default zone settings instead of last settings set by the zone dialog.
Fixes #12171 https://gitlab.com/kicad/code/kicad/issues/ Fixes #12172
This commit is contained in:
parent
31fdd9320d
commit
05785ac6b9
|
@ -52,11 +52,17 @@ TEARDROP_MANAGER::TEARDROP_MANAGER( BOARD* aBoard, PCB_EDIT_FRAME* aFrame )
|
||||||
|
|
||||||
|
|
||||||
// Build a zone teardrop
|
// Build a zone teardrop
|
||||||
|
static ZONE_SETTINGS s_default_settings; // Use zone default settings for teardrop
|
||||||
|
|
||||||
ZONE* TEARDROP_MANAGER::createTeardrop( TEARDROP_VARIANT aTeardropVariant,
|
ZONE* TEARDROP_MANAGER::createTeardrop( TEARDROP_VARIANT aTeardropVariant,
|
||||||
std::vector<VECTOR2I>& aPoints, PCB_TRACK* aTrack) const
|
std::vector<VECTOR2I>& aPoints, PCB_TRACK* aTrack) const
|
||||||
{
|
{
|
||||||
ZONE* teardrop = new ZONE( m_board );
|
ZONE* teardrop = new ZONE( m_board );
|
||||||
|
|
||||||
|
// teardrop settings are the last zone settings used by a zone dialog.
|
||||||
|
// override them by default.
|
||||||
|
s_default_settings.ExportSetting( *teardrop, false );
|
||||||
|
|
||||||
// Add zone properties (priority will be fixed later)
|
// Add zone properties (priority will be fixed later)
|
||||||
teardrop->SetTeardropAreaType( aTeardropVariant == TD_TYPE_PADVIA ?
|
teardrop->SetTeardropAreaType( aTeardropVariant == TD_TYPE_PADVIA ?
|
||||||
TEARDROP_TYPE::TD_VIAPAD :
|
TEARDROP_TYPE::TD_VIAPAD :
|
||||||
|
@ -77,7 +83,7 @@ ZONE* TEARDROP_MANAGER::createTeardrop( TEARDROP_VARIANT aTeardropVariant,
|
||||||
for( VECTOR2I pt: aPoints )
|
for( VECTOR2I pt: aPoints )
|
||||||
outline->Append(pt.x, pt.y);
|
outline->Append(pt.x, pt.y);
|
||||||
|
|
||||||
// Can be useful:
|
// Used in priority calculations:
|
||||||
teardrop->CalculateFilledArea();
|
teardrop->CalculateFilledArea();
|
||||||
|
|
||||||
return teardrop;
|
return teardrop;
|
||||||
|
|
Loading…
Reference in New Issue