kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #15259
Re: Possible 4.6 gerber issue?
-
To:
kicad-developers@xxxxxxxxxxxxxxxxxxx
-
From:
jp charras <jp.charras@xxxxxxxxxx>
-
Date:
Fri, 17 Oct 2014 14:44:58 +0200
-
In-reply-to:
<CAJjB1qLacX7_q6My0=OnwGAJO2=x=0amWM3nKH1dNc1SfuH1TQ@mail.gmail.com>
-
User-agent:
Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
Le 17/10/2014 14:22, Mark Roszko a écrit :
> Alright, I've played around. It appears there is many CAM/gerber
> software that cannot handle G75 arcs that are full 360 degrees. I
> tested this with the board from Jon and the 1 pin test board from
> Nick. If I generate 359 degree arcs, the 3d viewer is happy and draws
> good circles. If I generate 360 degrees then the arcs disappear/screw
> up.
> As far as I can tell, the math is right for the arcs regardless of 360
> or 359. I think it's because the start point == end point for a 360
> degree arc, that some viewers may break down due to their graphics
> libraries.
>
> I modified KiCAD to generate the circles as two arcs and the same
> viewers seem happy.
>
> i.e. I made
>
> void GERBER_PLOTTER::Circle( const wxPoint& aCenter, int aDiameter,
> FILL_T aFill,
> int aWidth )
> {
> Arc( aCenter, 0, 3600, aDiameter / 2, aFill, aWidth );
> }
>
> into
>
> void GERBER_PLOTTER::Circle( const wxPoint& aCenter, int aDiameter,
> FILL_T aFill,
> int aWidth )
> {
> Arc( aCenter, 0, 1800, aDiameter / 2, aFill, aWidth );
> Arc( aCenter, 1800, 3600, aDiameter / 2, aFill, aWidth );
> }
>
> Many other CAD software also generate circles as multiple arcs instead
> of a full g75.
>
> Attached are my generated gerbers, 360 won't work, but 270, 359 and
> split arcs will work I believe.
OK.
However, the Gerber specification says:
"Under G75, if the start point of the arc is equal to the end point, the
arc is a full circle of 360°"
See
http://www.ucamco.com/files/downloads/file/81/the_gerber_file_format_specification.pdf?46dfe8d5c8aee229e773d81222fd4db4
page 55, chapter 4.4.6
--
Jean-Pierre CHARRAS
Follow ups
References