Gerbview: rename a file with a better name. Add a test file to test aperture macros which include a negative object (currently incorrectly displayed by Gerbview)
This commit is contained in:
parent
185dc2bbdf
commit
55a44f3cfc
|
@ -34,6 +34,7 @@ set( GERBVIEW_SRCS
|
||||||
class_gerbview_layer_widget.cpp
|
class_gerbview_layer_widget.cpp
|
||||||
class_gbr_layer_box_selector.cpp
|
class_gbr_layer_box_selector.cpp
|
||||||
class_X2_gerber_attributes.cpp
|
class_X2_gerber_attributes.cpp
|
||||||
|
clear_gbr_drawlayers.cpp
|
||||||
controle.cpp
|
controle.cpp
|
||||||
dcode.cpp
|
dcode.cpp
|
||||||
draw_gerber_screen.cpp
|
draw_gerber_screen.cpp
|
||||||
|
@ -44,7 +45,7 @@ set( GERBVIEW_SRCS
|
||||||
gerbview_config.cpp
|
gerbview_config.cpp
|
||||||
gerbview_frame.cpp
|
gerbview_frame.cpp
|
||||||
hotkeys.cpp
|
hotkeys.cpp
|
||||||
init_gbr_drawlayers.cpp
|
clear_gbr_drawlayers.cpp
|
||||||
locate.cpp
|
locate.cpp
|
||||||
menubar.cpp
|
menubar.cpp
|
||||||
onleftclick.cpp
|
onleftclick.cpp
|
||||||
|
|
|
@ -91,7 +91,7 @@ bool AM_PRIMITIVE::mapExposure( GERBER_DRAW_ITEM* aParent )
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
case 1: // exposure always OON
|
case 1: // exposure always ON
|
||||||
exposure = true;
|
exposure = true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||||
*
|
*
|
||||||
* Copyright (C) 2013 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
* Copyright (C) 2013 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
||||||
* Copyright (C) 1992-2013 KiCad Developers, see AUTHORS.txt for contributors.
|
* Copyright (C) 1992-2016 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
|
@ -23,7 +23,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file init_gbr_drawlayers.cpp
|
* @file clear_gbr_drawlayers.cpp
|
||||||
|
* @brief erase a given or all draw layers, an free memory relative to the cleared layer(s)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <fctsys.h>
|
#include <fctsys.h>
|
|
@ -0,0 +1,70 @@
|
||||||
|
%TF.GerberVersion,J4*%
|
||||||
|
%TF.Part,Single*%
|
||||||
|
%TF.FileFunction,Other,BugReportExample*%
|
||||||
|
|
||||||
|
%FSLAX26Y26*%
|
||||||
|
%MOIN*%
|
||||||
|
|
||||||
|
%LPD*%
|
||||||
|
|
||||||
|
%SRX1Y1I0J0*%
|
||||||
|
|
||||||
|
|
||||||
|
G04 ===================================================*
|
||||||
|
G04 Aperture Macros*
|
||||||
|
G04 AMHALFCIRCLE draws a half circle by drawing a full circle and then
|
||||||
|
G04 a rectangular negative object overlapping the other half circle
|
||||||
|
G04 ===================================================*
|
||||||
|
%AMHALFCIRCLE*
|
||||||
|
1,1,1,0,0,0,0*
|
||||||
|
2,0,1,0,0,-.5,0,0*%
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
G04 ===================================================*
|
||||||
|
G04 Aperture Definitions*
|
||||||
|
G04 ===================================================*
|
||||||
|
%ADD10HALFCIRCLE*%
|
||||||
|
%ADD20HALFCIRCLE*%
|
||||||
|
%ADD30HALFCIRCLE*%
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
G04 ===================================================*
|
||||||
|
G04 Program*
|
||||||
|
G04 ===================================================*
|
||||||
|
|
||||||
|
G01*
|
||||||
|
|
||||||
|
G04 ---------------------------------------------------*
|
||||||
|
G04 The following code should produce similar outputs. *
|
||||||
|
G04 That is, 2 half circles side by side. However, *
|
||||||
|
G04 only the flashes done with D10 are correct. With *
|
||||||
|
G04 the D20, the second aperture flash erases the first*
|
||||||
|
G04 which should not happen according to the gerber *
|
||||||
|
G04 file format specifications. The only difference *
|
||||||
|
G04 between the D10 and D20 flashes are the Y coords. *
|
||||||
|
G04 and the order of the flash statements. *
|
||||||
|
G04 Note: D30 shows one flash (one aperture macro). *
|
||||||
|
G04 *
|
||||||
|
G04 See section 4.12.2 of the Ucamco Gerber Format *
|
||||||
|
G04 Specification document for more details on aperture*
|
||||||
|
G04 macro exposure modifiers. *
|
||||||
|
G04 ---------------------------------------------------*
|
||||||
|
|
||||||
|
|
||||||
|
D10*
|
||||||
|
X500000Y2000000D03*
|
||||||
|
X0Y2000000D03*
|
||||||
|
|
||||||
|
|
||||||
|
D20*
|
||||||
|
X0Y0D03*
|
||||||
|
X500000Y0D03*
|
||||||
|
|
||||||
|
D30*
|
||||||
|
X1500000Y1000000D03*
|
||||||
|
|
||||||
|
|
||||||
|
M02*
|
Loading…
Reference in New Issue