From 58532cd8c5c7c95ca32464bd5597a8639c046eb9 Mon Sep 17 00:00:00 2001 From: Marco Mattila Date: Wed, 18 Jul 2012 22:32:47 +0300 Subject: [PATCH] Fix axis offset issue in pcbnew gerber circular interpolation. --- common/common_plotGERBER_functions.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/common_plotGERBER_functions.cpp b/common/common_plotGERBER_functions.cpp index c1995d623b..c5e85fba69 100644 --- a/common/common_plotGERBER_functions.cpp +++ b/common/common_plotGERBER_functions.cpp @@ -293,7 +293,8 @@ void GERBER_PLOTTER::Arc( const wxPoint& aCenter, int aStAngle, int aEndAngle, end.x = aCenter.x + KiROUND( aRadius*cos( DEG2RAD( aEndAngle/10.0 ) ) ); end.y = aCenter.y - KiROUND( aRadius*sin( DEG2RAD( aEndAngle/10.0 ) ) ); DPOINT devEnd = userToDeviceCoordinates( end ); - DPOINT devCenter = userToDeviceCoordinates( aCenter - start ); + DPOINT devCenter = userToDeviceCoordinates( aCenter ) + - userToDeviceCoordinates( start ); fprintf( outputFile, "G75*\n" ); // Multiquadrant mode if( aStAngle < aEndAngle )