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() );
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;
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() );
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 )
{
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_prefix = m_prefix;
member->m_local_name = vector_member;
@ -167,7 +168,7 @@ void SCH_CONNECTION::ConfigureFromLabel( const wxString& aLabel )
member->m_vector_index = i++;
member->SetName( vector_member );
member->SetGraph( m_graph );
m_members.push_back( member );
m_members.push_back( std::move( member ) );
}
}
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() )
{
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->SetGraph( m_graph );
member->ConfigureFromLabel( EscapeString( alias_member, CTX_NETNAME ) );
m_members.push_back( member );
m_members.push_back( std::move( member ) );
}
}
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->SetGraph( m_graph );
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_PageNumber = path.GetPageNumber();
retval.push_back( instance );
retval.push_back( std::move( instance ) );
}
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,
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 );
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 );
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;

View File

@ -238,11 +238,11 @@ bool SHAPE_POLY_SET::GetGlobalIndex( SHAPE_POLY_SET::VERTEX_INDEX aRelativeIndic
int SHAPE_POLY_SET::NewOutline()
{
SHAPE_LINE_CHAIN empty_path;
POLYGON poly;
POLYGON poly;
empty_path.SetClosed( true );
poly.push_back( empty_path );
m_polys.push_back( poly );
m_polys.push_back( std::move( poly ) );
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++ )
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.Execute( Clipper2Lib::ClipType::Union, aEvenOdd ? Clipper2Lib::FillRule::EvenOdd
: Clipper2Lib::FillRule::NonZero, tree );
: Clipper2Lib::FillRule::NonZero, tree );
std::vector<CLIPPER_Z_VALUE> zValues;
std::vector<SHAPE_ARC> arcBuffer;