diff --git a/eeschema/sch_painter.cpp b/eeschema/sch_painter.cpp index 2b27503569..5592ce0292 100644 --- a/eeschema/sch_painter.cpp +++ b/eeschema/sch_painter.cpp @@ -843,12 +843,9 @@ void SCH_PAINTER::draw( const LIB_SHAPE *aShape, int aLayer, bool aDimmed ) case SHAPE_T::BEZIER: { - std::deque mappedPts; - - for( const VECTOR2I& p : shape->GetBezierPoints() ) - mappedPts.push_back( mapCoords( p ) ); - - m_gal->DrawPolygon( mappedPts ); + m_gal->DrawCurve( + mapCoords( shape->GetStart() ), mapCoords( shape->GetBezierC1() ), + mapCoords( shape->GetBezierC2() ), mapCoords( shape->GetEnd() ) ); } break; @@ -1851,12 +1848,8 @@ void SCH_PAINTER::draw( const SCH_SHAPE* aShape, int aLayer ) case SHAPE_T::BEZIER: { - std::deque pts; - - for( const VECTOR2I &p : shape->GetPolyShape().Outline( 0 ).CPoints() ) - pts.push_back( p ); - - m_gal->DrawPolygon( pts ); + m_gal->DrawCurve( shape->GetStart(), shape->GetBezierC1(), shape->GetBezierC2(), + shape->GetEnd() ); break; }