Jeff Young
f41af10007
Clean up hole shapes for safety (smart pointer) and consistency.
2022-07-22 23:06:07 +01:00
Jeff Young
f22cf1cc3a
Fill in missing bits of LAYER variable for printing/plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11788
2022-06-10 22:38:01 +01:00
Roberto Fernandez Bautista
0015574a60
${SHEETNAME} represents the sheet name + introduce ${SHEETPATH}
...
CHANGED: The text variable ${SHEETNAME} now always represents the name of the
sheet when used anywhere in the schematic editor, including the title block
ADDED: A new text variable ${SHEETPATH} which is replaced with the path to the
current sheet - e.g. "/Sheet 1/Sheet 2".
To ensure backward compatibility, the default drawing sheet now uses
${SHEETPATH}. Custom drawing sheets will need to be manually edited.
2022-04-09 15:45:58 +01:00
Wayne Stambaugh
c0d8657d97
Plot on all layers prep work.
...
We only need one bottom to top layer sequence definition.
Plot a sequence of layer IDs (LSEQ) in the order of the sequence.
Add helper method to layer set (LSET) to create a sequence of layer IDs
using another sequence for ordering.
2022-03-29 16:08:23 -04:00
Jeff Young
65185f53a1
Rotate fp zones before comparing with library versions.
...
Also includes some performance fixes to not copy around triangulation
data when it's not needed.
Fixes https://gitlab.com/kicad/code/kicad/issues/10143
2022-03-14 15:53:24 +00:00
Jeff Young
40fd8860fe
Plotting (and some bug fixes) for knockout text.
2022-03-08 18:06:41 +00:00
jean-pierre charras
bafd8ac9d5
plot_board_layers.cpp: Add missing layers (USer_x) in list
...
Fixes #11072
https://gitlab.com/kicad/code/kicad/issues/11072
2022-03-08 14:41:10 +01:00
Seth Hillbrand
3ac121620d
Handle negative arc angles
...
Plotter expects the arc angles to be positive, so check and flip before
plotting if we have track arcs that might be negative angles
Fixes https://gitlab.com/kicad/code/kicad/issues/10968
2022-02-24 17:27:08 -08:00
Jeff Young
e6c617b74d
Respect ERROR_OUTSIDE when inflating polygons.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10896
2022-02-21 15:19:46 +00:00
jean-pierre charras
d2cf68bcdd
Plotters: add plot Arcs using EDA_SHAPE or center, start point and end point.
...
It avoid trying to calculate arc angles (start, end or arc angle) that
frequently create issues due to reverse Y axis, plot mirrored and/or
angle normalization with different criteria.
Fixes #10914
https://gitlab.com/kicad/code/kicad/issues/10914
2022-02-20 17:17:20 +01:00
Jeff Young
2172810600
Performance: better sharing of zone fills.
2022-02-15 19:19:03 +00:00
Jeff Young
7ccac79192
More wxString wide literals.
2022-02-05 21:29:34 +00:00
Jeff Young
5739505aa3
TextBoxes for PCBNew.
2022-01-31 20:00:47 +00:00
jean-pierre charras
5b8eb8f9ec
SVG plotter rework: use mm as units in file. Remove useless inch option.
...
Use 4 digits in mantissa as default and when exporting SVG.
Allow 0 as line width: this is the right value to draw filled shapes with no outline thickness.
2022-01-28 19:33:51 +01:00
Jeff Young
9b661aea10
EDA_ANGLE for plotters.
...
Also fixes a compile error in the PNS Playground.
2022-01-16 01:19:45 +00:00
hogthrob
b605d6d9ae
Fix issue with DXF plot not plotting small drill marks
...
Code was missing to convert mm to internal units for small drill mark size in PlotLayerOutlines (which is only used in DXF Plot). All other plot formats like PDF use PlotStandardLayer which does not have that problem.
2022-01-15 13:04:50 +00:00
Jeff Young
07013d00e1
More EDA_ANGLE.
2022-01-14 16:08:19 +00:00
Jeff Young
d485eb2514
Move pads to EDA_ANGLE.
2022-01-14 16:08:18 +00:00
Marek Roszko
fcfe42d67c
Continue the war on wxPoint
2022-01-10 19:52:26 -05:00
Seth Hillbrand
26c0a78947
Plot pads in layer color
...
v6 pads are not allowed to be a different color from the rest of the
copper layer, so don't query the GAL layer for a color
Fixes https://gitlab.com/kicad/code/kicad/issues/10293
(cherry picked from commit bfca928900
)
2022-01-07 08:56:22 -08:00
Marek Roszko
e4dbfcd92d
Swap out some wxSize for VECTOR2I
2022-01-04 20:42:27 -05:00
jean-pierre charras
dde629330d
Pcb plot: fixcrash due to a null pointer
...
Fixes #10223
https://gitlab.com/kicad/code/kicad/issues/10223
2022-01-03 15:11:42 +01:00
Marek Roszko
347e03363a
Convert wxPoint/wxSize starting from EDA_RECT usages
2022-01-01 11:30:33 -05:00
Jeff Young
b2dff6fa55
Fix solder mask plotting issues.
...
1) Don't plot all footprint texts for each footprint graphic item.
2) Enforce min web thickness around board shapes and board text.
3) Enforce min web thickness around footprint shapes
4) Correctly handle multi-layer zones.
(1) and (4) will get cherry-picked back to 6.0, so after rebasing
won't actually appear in this changelist anymore....
2021-12-24 12:36:45 +00:00
Jeff Young
ef10b36948
Add mask-to-copper clearance parameter and rename mask margin.
2021-12-24 12:36:41 +00:00
Jon Evans
75d75799f7
Move to getters/setters for aux and grid origin
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8836
2021-11-08 22:36:40 -05:00
jean-pierre charras
b44a14a472
Plot custom pads with pad anchor size = 0.
...
A pad anchor size = 0 is allowed in 5.99 version (not in 5.1 versions)
Fixes #9408
https://gitlab.com/kicad/code/kicad/issues/9408
2021-10-17 11:01:38 +02:00
Jeff Young
b52529521e
Replace individual LIB_* shapes with LIB_SHAPE (based on EDA_SHAPE).
...
Also moves to more capable FILL_T model that can be shared.
2021-10-15 12:45:43 +01:00
Jeff Young
fec34e8dd8
Get rid of an extraneous layer parameter.
...
Also adds a bit of nullptr safety.
2021-08-23 20:00:17 +01:00
Jeff Young
6f5e602df9
Fix solder mask plotting issues.
...
1) Don't plot all footprint texts for each footprint graphic item.
2) Correctly handle multi-layer zones.
2021-08-23 20:00:17 +01:00
Wayne Stambaugh
46b959c3e3
Move plotter headers into include folder.
2021-08-18 16:38:31 -04:00
Wayne Stambaugh
cf00319c85
More NULL expunging.
2021-07-20 07:27:18 -04:00
jean-pierre charras
a31b667e2a
Plotter: better shape for CHAMFERED_RECT and ROUNDRECT pads with margin.
...
The shape of the pad+clearance area is not similar to the shape drawn on screen
2021-06-21 18:55:33 +02:00
Jeff Young
d26449cc29
Formatting.
2021-06-19 11:37:20 +01:00
Jeff Young
096e342386
Prefix TRACK, ARC and VIA.
2021-06-11 22:07:02 +01:00
Jeff Young
16b0147af8
Prefix DIMENSION types.
2021-06-11 17:59:44 +01:00
Marek Roszko
10e60acf34
Clean up including of board_design_settings.h
2021-06-06 15:03:42 -04:00
Seth Hillbrand
3d4ce0796e
Add Gerber plot for SHAPE_ARC and SHAPE_LINE_CHAIN
2021-06-03 17:12:56 -07:00
Marek Roszko
03cf2b517f
Enum class PAD_ATTR_T
...
Renamed such that python stays the same
2021-05-01 10:51:54 -04:00
Marek Roszko
b243c2280d
enum class PAD_SHAPE_T
2021-05-01 08:22:35 -04:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
jean-pierre charras
da005bd2a6
Pcbnew, plot files: fix very poor shape of trapezoid pads having a non null
...
clearance on mask or solder mask layers.
2021-02-26 10:36:04 +01:00
Jeff Young
cad5198ab7
Worksheet -> (industry standard) Drawing Sheet.
2021-02-22 17:35:46 +00:00
Zoltan Gyarmati
5676117d0b
Make small drill marks size configurable via advanced config for both printing and plotting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1972
2021-01-05 22:37:34 +00:00
Jeff Young
491fc2c8f2
Save DXF plot params to file and remove some dead code.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6720
2021-01-03 14:22:25 +00:00
Alexis Lockwood
4bc12e7dcd
Don't include plotters_specific.h where not needed
...
This avoids some very large rebuilds when a plotter class is changed.
2020-12-18 07:21:59 +00:00
Marek Roszko
16e3e59495
Split out arrayDim and MIRROR templates from macros.h
...
These were not macros
2020-11-17 20:21:04 -05:00
Jeff Young
ec020dd19f
First-class support for filled shapes.
2020-11-14 01:40:32 +00:00
Jeff Young
bdbb68f813
MODULE -> FOOTPRINT.
2020-11-13 16:04:03 +00:00
Jeff Young
fc9cf1d827
More module -> footprint.
2020-11-13 15:16:24 +00:00