Slight performance improvements.

This commit is contained in:
Jeff Young 2025-05-25 20:01:02 +01:00
parent 7605bb7586
commit ef395d3957
5 changed files with 17 additions and 16 deletions

View File

@ -423,7 +423,7 @@ VECTOR2I OUTLINE_FONT::getTextAsGlyphsUnlocked( BOX2I* aBBox,
outline.m_Points.push_back( { tofuBox.GetSize().x, tofuBox.GetPosition().y } ); outline.m_Points.push_back( { tofuBox.GetSize().x, tofuBox.GetPosition().y } );
outline.m_Points.push_back( tofuBox.GetSize() ); outline.m_Points.push_back( tofuBox.GetSize() );
outline.m_Points.push_back( { tofuBox.GetPosition().x, tofuBox.GetSize().y } ); outline.m_Points.push_back( { tofuBox.GetPosition().x, tofuBox.GetSize().y } );
glyphData.m_Contours.push_back( outline ); glyphData.m_Contours.push_back( std::move( outline ) );
CONTOUR hole; CONTOUR hole;
tofuBox.Move( { scaler * 0.06, scaler * 0.06 } ); tofuBox.Move( { scaler * 0.06, scaler * 0.06 } );
@ -435,7 +435,7 @@ VECTOR2I OUTLINE_FONT::getTextAsGlyphsUnlocked( BOX2I* aBBox,
hole.m_Points.push_back( { tofuBox.GetSize().x, tofuBox.GetPosition().y } ); hole.m_Points.push_back( { tofuBox.GetSize().x, tofuBox.GetPosition().y } );
hole.m_Points.push_back( tofuBox.GetSize() ); hole.m_Points.push_back( tofuBox.GetSize() );
hole.m_Points.push_back( { tofuBox.GetPosition().x, tofuBox.GetSize().y } ); hole.m_Points.push_back( { tofuBox.GetPosition().x, tofuBox.GetSize().y } );
glyphData.m_Contours.push_back( hole ); glyphData.m_Contours.push_back( std::move( hole ) );
} }
} }

View File

@ -159,7 +159,8 @@ void SCH_CONNECTION::ConfigureFromLabel( const wxString& aLabel )
for( const wxString& vector_member : members ) for( const wxString& vector_member : members )
{ {
auto member = std::make_shared<SCH_CONNECTION>( m_parent, m_sheet ); std::shared_ptr<SCH_CONNECTION> member = std::make_shared<SCH_CONNECTION>( m_parent, m_sheet );
member->m_type = CONNECTION_TYPE::NET; member->m_type = CONNECTION_TYPE::NET;
member->m_prefix = m_prefix; member->m_prefix = m_prefix;
member->m_local_name = vector_member; member->m_local_name = vector_member;
@ -167,7 +168,7 @@ void SCH_CONNECTION::ConfigureFromLabel( const wxString& aLabel )
member->m_vector_index = i++; member->m_vector_index = i++;
member->SetName( vector_member ); member->SetName( vector_member );
member->SetGraph( m_graph ); member->SetGraph( m_graph );
m_members.push_back( member ); m_members.push_back( std::move( member ) );
} }
} }
else if( NET_SETTINGS::ParseBusGroup( unescaped, &prefix, &members ) ) else if( NET_SETTINGS::ParseBusGroup( unescaped, &prefix, &members ) )
@ -186,20 +187,20 @@ void SCH_CONNECTION::ConfigureFromLabel( const wxString& aLabel )
{ {
for( const wxString& alias_member : alias->Members() ) for( const wxString& alias_member : alias->Members() )
{ {
auto member = std::make_shared< SCH_CONNECTION >( m_parent, m_sheet ); std::shared_ptr<SCH_CONNECTION> member = std::make_shared<SCH_CONNECTION>( m_parent, m_sheet );
member->SetPrefix( prefix ); member->SetPrefix( prefix );
member->SetGraph( m_graph ); member->SetGraph( m_graph );
member->ConfigureFromLabel( EscapeString( alias_member, CTX_NETNAME ) ); member->ConfigureFromLabel( EscapeString( alias_member, CTX_NETNAME ) );
m_members.push_back( member ); m_members.push_back( std::move( member ) );
} }
} }
else else
{ {
auto member = std::make_shared< SCH_CONNECTION >( m_parent, m_sheet ); std::shared_ptr<SCH_CONNECTION> member = std::make_shared<SCH_CONNECTION>( m_parent, m_sheet );
member->SetPrefix( prefix ); member->SetPrefix( prefix );
member->SetGraph( m_graph ); member->SetGraph( m_graph );
member->ConfigureFromLabel( group_member ); member->ConfigureFromLabel( group_member );
m_members.push_back( member ); m_members.push_back( std::move( member ) );
} }
} }
} }

View File

@ -1367,7 +1367,7 @@ std::vector<SCH_SHEET_INSTANCE> SCH_SHEET_LIST::GetSheetInstances() const
instance.m_Path = tmpPath.Path(); instance.m_Path = tmpPath.Path();
instance.m_PageNumber = path.GetPageNumber(); instance.m_PageNumber = path.GetPageNumber();
retval.push_back( instance ); retval.push_back( std::move( instance ) );
} }
return retval; return retval;

View File

@ -905,7 +905,8 @@ bool SYMBOL_LIBRARY_MANAGER::UpdateLibraryBuffer( const wxString& aLibrary )
SYMBOL_BUFFER::SYMBOL_BUFFER( std::unique_ptr<LIB_SYMBOL> aSymbol, SYMBOL_BUFFER::SYMBOL_BUFFER( std::unique_ptr<LIB_SYMBOL> aSymbol,
std::unique_ptr<SCH_SCREEN> aScreen ) : std::unique_ptr<SCH_SCREEN> aScreen ) :
m_screen( std::move( aScreen ) ), m_symbol( std::move( aSymbol ) ) m_screen( std::move( aScreen ) ),
m_symbol( std::move( aSymbol ) )
{ {
wxASSERT( m_symbol ); wxASSERT( m_symbol );
m_original = std::make_unique<LIB_SYMBOL>( *m_symbol ); m_original = std::make_unique<LIB_SYMBOL>( *m_symbol );
@ -979,7 +980,7 @@ bool LIB_BUFFER::CreateBuffer( std::unique_ptr<LIB_SYMBOL> aCopy,
aCopy->SetLibId( libId ); aCopy->SetLibId( libId );
auto symbolBuf = std::make_shared<SYMBOL_BUFFER>( std::move( aCopy ), std::move( aScreen ) ); auto symbolBuf = std::make_shared<SYMBOL_BUFFER>( std::move( aCopy ), std::move( aScreen ) );
m_symbols.push_back( symbolBuf ); m_symbols.push_back( std::move( symbolBuf ) );
++m_hash; ++m_hash;

View File

@ -238,11 +238,11 @@ bool SHAPE_POLY_SET::GetGlobalIndex( SHAPE_POLY_SET::VERTEX_INDEX aRelativeIndic
int SHAPE_POLY_SET::NewOutline() int SHAPE_POLY_SET::NewOutline()
{ {
SHAPE_LINE_CHAIN empty_path; SHAPE_LINE_CHAIN empty_path;
POLYGON poly; POLYGON poly;
empty_path.SetClosed( true ); empty_path.SetClosed( true );
poly.push_back( empty_path ); poly.push_back( empty_path );
m_polys.push_back( poly ); m_polys.push_back( std::move( poly ) );
return m_polys.size() - 1; return m_polys.size() - 1;
} }
@ -3118,13 +3118,12 @@ SHAPE_POLY_SET::BuildPolysetFromOrientedPaths( const std::vector<SHAPE_LINE_CHAI
for( int i = 0; i < path.PointCount(); i++ ) for( int i = 0; i < path.PointCount(); i++ )
lc.emplace_back( path.CPoint( i ).x, path.CPoint( i ).y ); lc.emplace_back( path.CPoint( i ).x, path.CPoint( i ).y );
paths.push_back( lc ); paths.push_back( std::move( lc ) );
} }
clipper.AddSubject( paths ); clipper.AddSubject( paths );
clipper.Execute( Clipper2Lib::ClipType::Union, aEvenOdd ? Clipper2Lib::FillRule::EvenOdd clipper.Execute( Clipper2Lib::ClipType::Union, aEvenOdd ? Clipper2Lib::FillRule::EvenOdd
: Clipper2Lib::FillRule::NonZero, tree ); : Clipper2Lib::FillRule::NonZero, tree );
std::vector<CLIPPER_Z_VALUE> zValues; std::vector<CLIPPER_Z_VALUE> zValues;
std::vector<SHAPE_ARC> arcBuffer; std::vector<SHAPE_ARC> arcBuffer;