PCB_PARSER::parsePCB_TEXTBOX(): fix bug when a TCB_TEXTBOX was rotated:

the textbox was rotated, but thai is incorrect: the polygon coordinates
are good, and must be not rotated: only the text angle must be set.
This commit is contained in:
jean-pierre charras 2023-08-20 18:34:57 +02:00
parent 4d1f9f6fb9
commit 70c05109a0
2 changed files with 5 additions and 3 deletions

View File

@ -3226,7 +3226,9 @@ PCB_TEXTBOX* PCB_PARSER::parsePCB_TEXTBOX( BOARD_ITEM* aParent )
switch( token ) switch( token )
{ {
case T_angle: case T_angle:
textbox->SetTextAngle( EDA_ANGLE( parseDouble( "text box angle" ), DEGREES_T ) ); // Set the angle of the text only, the coordinates of the box (a polygon) are
// already at the right position, and must not be rotated
textbox->EDA_TEXT::SetTextAngle( EDA_ANGLE( parseDouble( "text box angle" ), DEGREES_T ) );
NeedRIGHT(); NeedRIGHT();
break; break;

View File

@ -1845,8 +1845,8 @@ void PCB_PLUGIN::format( const PCB_TEXTBOX* aTextBox, int aNestLevel ) const
{ {
FOOTPRINT* parentFP = aTextBox->GetParentFootprint(); FOOTPRINT* parentFP = aTextBox->GetParentFootprint();
m_out->Print( aNestLevel, "(%s_text_box%s %s\n", m_out->Print( aNestLevel, "(%s%s %s\n",
parentFP ? "fp" : "gr", parentFP ? "fp_text_box" : "gr_text_box",
aTextBox->IsLocked() ? " locked" : "", aTextBox->IsLocked() ? " locked" : "",
m_out->Quotew( aTextBox->GetText() ).c_str() ); m_out->Quotew( aTextBox->GetText() ).c_str() );