Jeff Young
e230d5164d
Honour renderSettings' default font.
...
This still leaves a few things out in the cold,
such as hit-testing and polygon generation.
But at least it allows us to plot with a default
font.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19031
2025-07-17 09:35:21 +01:00
Jeff Young
dc96b99e22
Quiet assert. (KICAD-QZJ)
2025-07-04 16:19:42 -06:00
Jeff Young
044ac6e8e5
Prefer board's errorMax to a constant.
2025-06-27 22:59:12 -06:00
Jeff Young
5e6ef67fce
Plot drill marks on mask layers if the pad exists there.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20859
2025-05-10 19:07:13 +01:00
Jeff Young
34139ae305
Push generalised sketch-mode support down into DXF_PLOTTER.
2025-05-10 17:31:59 +01:00
Jeff Young
88695af364
Move sketched DNP items to plot_brditems_plotter.cpp.
2025-05-10 17:31:59 +01:00
Jeff Young
c78ce373fd
Move pad-outline plotting to plot_brditems_plotter.cpp.
2025-05-10 17:31:59 +01:00
Jeff Young
c452fe9686
REMOVED: HPGL plotting.
...
Its sketch-mode greatly complicates the plotting
code and it is poorly maintained due to lack of
use.
2025-05-10 17:31:59 +01:00
Jeff Young
d384790d47
Don't use line styles for solder masks on shapes in 3D viewer.
...
Also convert hatched fills to solid for solder masks.
Also give track solder masks their specified
expansion when exporting to STEP.
Also implement solder masks for shapes when
exporting to STEP.
2025-04-28 21:46:10 +01:00
Jeff Young
2e556d0abc
Plot tables in footprints.
2025-04-03 14:38:14 +01:00
Jeff Young
151cb01795
Mirror pad numbers when appropriate.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20459
2025-03-27 23:28:30 +00:00
Jeff Young
824c7ecfa7
Improve readability.
...
Also drops a parameter that hasn't been implemented
since early 2022.
2025-03-19 08:55:32 +00:00
Jeff Young
93ea523eec
De-duplicate table border drawing code.
...
Also cleans up a misconception about table header borders,
and renames the getter/setter to be clearer.
Also makes sure that table cells are updated when the table
layer changes.
And another bug where we were writing the grey color value
back to the cell for hidden cells.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20319
2025-03-13 13:15:47 +00:00
Jeff Young
b569d919ea
No more invisible (non-field) text.
2025-03-10 21:58:30 +00:00
jean-pierre charras
9d1b320896
Fix compil warnings
2025-03-08 09:40:23 +01:00
Damjan
b419058df3
pcbnew: Plotting tables with non-90 degree rotation angles is not working
2025-03-04 12:08:18 +00:00
jean-pierre charras
75bed91789
BRDITEMS_PLOTTER::PlotFootprintTextItems(): fix a typo about Value layer.
...
The typo was using the reference layer to plot the value field
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20144
2025-02-28 09:42:07 +01:00
Jeff Young
3f15b0d75b
ADDED: hatched fills for shapes.
2025-02-24 11:08:29 +00:00
Jeff Young
675624b926
ADDED: Knockout text boxes.
2025-02-24 11:08:29 +00:00
jean-pierre charras
a9fb475cf2
PCB_TABLE: fix incorrect plot of tables rotated +-90 (missing segments).
...
This change was missing in commit 276029ee
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19985
2025-02-21 09:47:45 +01:00
Jeff Young
4fa02690f8
REMOVED force-plot-invisible-items.
...
It's dangerous as the router and DRC will have been
run without regard to invisible items.
(See #19420.)
2025-02-19 23:43:53 +00:00
jean-pierre charras
276029ee03
SCH_TABLE and PCB_TABLE: fix incorrect plot of tables rotated 90 or -90 deg.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19985
2025-02-18 17:56:19 +01:00
Seth Hillbrand
0b2d4d4879
Revise Copyright statement to align with TLF
...
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo. Avoids needing to
repeatly update.
Also updates AUTHORS.txt from current repo with contributor names
2025-01-01 14:12:04 -08:00
JamesJCode
dfe0d6345b
Another go at supressing FOOTPRINT field on FOOTPRINT objects
2024-12-28 21:57:35 +00:00
Jeff Young
3d9784ded3
Plot from render cache if fonts aren't embedded.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18672
2024-12-24 20:07:06 +00:00
Seth Hillbrand
e9bc8cfe9d
Give Clipper1 a Viking funeral
...
Clears out the last spot where we were only using Clipper1 (how'd I
miss that?) and remove all calls to the Clipper1 structures
2024-12-23 17:12:09 -08:00
jean-pierre charras
10cd4582f2
Pcbnew, plot: plot table only on the right layer.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19272
2024-12-09 15:59:55 +01:00
Andrzej.W
b49ebaeb16
ADDED: Soldermask layer option for graphic shapes
...
Allows adding a soldermask opening for shapes on a copper layer.
Soldermask expansion can also be specified.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/2125
2024-10-10 12:46:06 +00:00
Jon Evans
2a605e4a4e
Infrastructure and file format for via stacks
2024-10-06 18:45:25 -04:00
Jon Evans
752371833b
Support custom padstacks in plotter
2024-10-02 18:07:09 -04:00
Jon Evans
56e0811516
Phase 2 of padstack support
...
CHANGED: PCB file format now supports saving/loading complex padstacks
CHANGED: PTH pads are now rendered per copper layer in the copper color;
the PTH pad color is no longer used.
ADDED: support for importing complex pad stacks from Altium PCBs
Enforce padstack-aware access to pad properties across KiCad
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8182
2024-10-01 19:55:03 -04:00
Jeff Young
01332a2cb5
ADDED: plotting options for DNP footprints
...
Also removes the plot-fp-refs, plot-fp-values and
plot fp-text overrides from the GUI, but leaves
them as job arguments.
(Note that the job arguments also separate out
sketching DNP graphics and plotting the 'X', which
the GUI does not.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18056
2024-08-18 10:02:14 -06:00
Seth Hillbrand
69849ba3ca
Replace custom Clamp with std::clamp
...
Fixes bug in parser that had the elements in the wrong order due to our
custom version not matching the standard order
2024-07-25 19:17:17 +02:00
Seth Hillbrand
cc850d0da0
Split out LSEQ/LSET from LAYER_ID
...
Separate the layer grouping classes for easier modification
2024-07-08 20:59:46 -07:00
Jeff Young
b88d3b13ac
ADDED: sketch-pads-on-fab-layers to CLI PDF & SVG export.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18091
2024-05-27 20:59:11 +01:00
Jeff Young
0ff59bc60e
We can only knockout a pad if we're plotting the pad shape.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17166
2024-05-20 19:48:06 +01:00
Jon Evans
c800fb790d
Start unifying padstack properties
2024-05-14 20:57:56 -04:00
Seth Hillbrand
a835ba0715
Add "Mechanical" pad property
...
Prevents mechanical support pads from being used to check pad types.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16747
2024-05-05 21:57:10 +00:00
Jeff Young
5d37a00759
Table plotting for PCBNew.
...
Also fixes some bugs with property exposure that (along with
other things) allowed you to put table cells on a different
layer than their parent table.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17438
2024-03-24 16:49:33 +00:00
Jeff Young
df83e24eb7
Cleanup.
...
It's been a long time since line style was specific to plotting.
2023-11-25 13:12:45 +00:00
Jeff Young
62d959ed0e
Don't assume an error location for PAD::GetEffectivePolygon().
...
While ERROR_INSIDE was good for plotting, 3D generation, etc., it's
not good for generating router hulls.
Also reverts part of the change to always use polygons for PNS::SOLIDs. A single shape in a SHAPE_COMPOUND will be faster (and
more accurate).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14898
2023-10-13 13:59:26 +01:00
Jeff Young
2ae36312c4
Don't use DXF-native text for textboxes.
...
It gets the positioning wrong.
2023-08-25 18:07:49 +01:00
Marek Roszko
339684263c
Fix accidental plotting of disabled textbox borders
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15252
2023-08-24 21:03:48 -04:00
Jeff Young
686704bb31
ADDED: plot control over FP text.
...
(Also adds said control to "Follow Plot Settings" in 3D viewer.)
2023-08-15 16:56:46 +01:00
Jon Evans
a77e630901
ADDED: Connectivity for graphic shapes on copper layers
...
Graphic shapes (excluding text) can now have nets when on
copper layers. Shapes behave like tracks in that they will
pick up nets from connected pads, and follow track opacity
settings.
2023-08-10 21:47:43 -04:00
Jeff Young
f43b90b15f
Lazy context handling for SVG plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15325
2023-08-07 14:01:58 +01:00
Jeff Young
5e112ca78e
ADDED: parameterize font metrics and allow customization of overbar height.
2023-08-06 20:57:41 +01:00
jean-pierre charras
86eaa3de35
Pcbnew plot: do not plot via hole on layers where the via does not exist:
...
buried vias are not on all copper layers. their hole is also not on all
copper layer
Fixes #15355
https://gitlab.com/kicad/code/kicad/-/issues/15355
2023-08-05 10:40:35 +02:00
jean-pierre charras
a16ab0aae1
Replace SHAPE_T::RECT by SHAPE_T::RECTANGLE: RECT creates a collision name
...
issue with a Windows header on msys2.
Change very similar to the commit 9a47b344 about class PAD_SHAPE.
No actual code change
2023-07-25 09:11:55 +02:00
jean-pierre charras
4f7e9bead5
Fix a typo than can create a crash
...
Fixes #15126
https://gitlab.com/kicad/code/kicad/-/issues/15126
2023-07-07 10:17:02 +02:00