From 737ef50cc08bf70883a1e21d168bf3310f5d86f6 Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Tue, 10 Jun 2014 18:21:38 +0200 Subject: [PATCH] Plot SVG: fix issue with arcs (bug #1328155 ) both in Pcbnew and Eeschema. --- common/common_plotSVG_functions.cpp | 2 +- pcbnew/plot_brditems_plotter.cpp | 8 +------- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/common/common_plotSVG_functions.cpp b/common/common_plotSVG_functions.cpp index e5d00a63e5..b90481eea9 100644 --- a/common/common_plotSVG_functions.cpp +++ b/common/common_plotSVG_functions.cpp @@ -346,7 +346,7 @@ void SVG_PLOTTER::Arc( const wxPoint& centre, double StAngle, double EndAngle, i DPOINT centre_dev = userToDeviceCoordinates( centre ); double radius_dev = userToDeviceSize( radius ); - if( m_yaxisReversed ) // Should be always the case + if( !m_yaxisReversed ) // Should be never the case { double tmp = StAngle; StAngle = -EndAngle; diff --git a/pcbnew/plot_brditems_plotter.cpp b/pcbnew/plot_brditems_plotter.cpp index 7413da3cbc..41f8574cd9 100644 --- a/pcbnew/plot_brditems_plotter.cpp +++ b/pcbnew/plot_brditems_plotter.cpp @@ -394,16 +394,10 @@ void BRDITEMS_PLOTTER::Plot_1_EdgeModule( EDGE_MODULE* aEdge ) case S_ARC: { radius = KiROUND( GetLineLength( end, pos ) ); - double startAngle = ArcTangente( end.y - pos.y, end.x - pos.x ); - double endAngle = startAngle + aEdge->GetAngle(); - if ( ( GetFormat() == PLOT_FORMAT_DXF ) && - ( m_layerMask & ( SILKSCREEN_LAYER_BACK | DRAW_LAYER | COMMENT_LAYER ) ) ) - m_plotter->ThickArc( pos, -startAngle, -endAngle, radius, thickness, GetMode() ); - else - m_plotter->ThickArc( pos, -endAngle, -startAngle, radius, thickness, GetMode() ); + m_plotter->ThickArc( pos, -endAngle, -startAngle, radius, thickness, GetMode() ); } break;