Support >180 deg arcs in schematic.

This commit is contained in:
Alex Shvartzkop
2023-08-07 14:18:38 +03:00
parent d03c3d0f6d
commit 717ee350c8
16 changed files with 117 additions and 154 deletions
+3 -3
View File
@@ -5,7 +5,7 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2017-2022 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 2017-2023 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -669,8 +669,8 @@ void DXF_PLOTTER::Arc( const VECTOR2D& aCenter, const EDA_ANGLE& aStartAngle,
// In DXF, arcs are drawn CCW.
// If startAngle > endAngle, it is CW. So transform it to CCW
if( startAngle > endAngle )
std::swap( startAngle, endAngle );
while( endAngle < startAngle )
endAngle += ANGLE_360;
VECTOR2D centre_device = userToDeviceCoordinates( aCenter );
double radius_device = userToDeviceSize( aRadius );