Jeff Young
491af0df39
When following board or plot settings, write results to current config.
Also adds migration from older layer numbers to strings.
This may require users to dump their 9.0 settings files
(which will have the wrong layer numbers in them), but
those files are often useless anyway as they'll already
have messed up colours if they were migrated from 8.0.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18709
9 months ago
Jeff Young
0d9daa372e
Keep user-defined common layers order.
(And use it when plotting.)
(And don't shadow it with a second variable.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20214
9 months ago
Jeff Young
7116be4ae0
Put non-sided layers on front, not back of board.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20201
(cherry picked from commit 7cfa826c9a )
9 months ago
Wayne Stambaugh
42a1d1cf0b
Include folder and 3D viewer code housekeeping.
11 months ago
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
11 months ago
Ian McInerney
c0622eaa45
Avoid copies when using auto
11 months ago
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
11 months ago
Jeff Young
753d385473
Reduce dependency on dynamic_cast.
Also switches to checking __clang__ instead of __WXMAC__.
12 months ago
jean-pierre charras
56b50e1600
Fix compil warnings and minor Coverity warnings (uninitialized variables).
1 year ago
Mike Williams
867cb58175
feature removal: remove Show Hidden Text
Does not work properly since 8.0 introduction of footprint fields.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18656
1 year ago
Jon Evans
1895ec58a0
Fix various compile warnings
1 year ago
jean-pierre charras
4c33d39c3a
3D viewer: fix incorrect Z position of some back layers.
1 year ago
jean-pierre charras
02ec8acdb3
3D viewer: fix some issues after layer numbering changes (round 2).
1 year ago
jean-pierre charras
36b6720feb
3D viewer: fix some issues after layer numbering changes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18684
1 year ago
Seth Hillbrand
5e0abadb23
Reorganize layer numbering
F_Cu = 0
B_Cu = 2
Remaining internal copper layers are even and incrementing
Non-copper layers are odd and incrementing.
This means that we can no longer do things like:
for( PCB_LAYER_ID layer = F_Cu; layer <= B_Cu; ++layer)
Instead, we have the class LAYER_RANGE:
for( PCB_LAYER_ID layer : LAYER_RANGE( F_Cu, B_Cu) )
Similarly, gt/lt tests should not refer to the integer value of the
layer. We have functions such as IsCopperLayer to test whether a layer
is copper or not.
When using the connectivity RTree, the third dimension is layer, so we
provide B_Cu with the special INT_MAX value, ensuring that elements
between F_Cu and B_Cu will be identified. There is a new, special
function GetBoardLayer() for interfacing with CN_ITEMS
Similarly, PNS layers remain unchanged and sequential. A set of
interface functions is provided to map PNS layers to Board layers and
back. This allows the PNS_LAYER_RANGE to function as expected
1 year ago
Jeff Young
94f995c49e
Reduce dependency on dynamic_cast.
(Especially where it is no-worky on MacOS.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17245
1 year ago
jean-pierre charras
1f608ec2b0
3D viewer: add option to use board editor copper colors for copper layers.
This is useful to analyze multilayers boards
1 year ago
Seth Hillbrand
cc850d0da0
Split out LSEQ/LSET from LAYER_ID
Separate the layer grouping classes for easier modification
1 year ago
Alex Shvartzkop
18fde2b9cb
Fix background transparency option in kicad-cli pcb render.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17865
2 years ago
Jeff Young
8184ed64e7
Explicit control over hidden text in bounding boxes.
In particular, don't consider hidden text when plotting,
and only when AsItemCheckboxes is checked for printing.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17958
2 years ago
Jeff Young
3b3de58e5e
Make sure color settings are saved when modified.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17864
2 years ago
jean-pierre charras
8754f6867f
3D viewer: fix some graphic issues:
Avoid issue when a copper layers thickness is 0 (min value is now 1 micrometer)
Fix incorrect rendering of plated graphic items and vias (vertical walls not drawn)
2 years ago
Jeff Young
c8d897ed0f
Fix copy/pasta in GetLayerColors().
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17374
2 years ago
Alex Shvartzkop
85b1978408
Use 64-bit type to represent microseconds.
int and long are 32-bit on Windows, causing overflows.
2 years ago
Jeff Young
8dddd9cc2c
Separate "use board stackup colors" into separate checkbox.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17085
2 years ago
Jeff Young
fef404352d
Remove stale TODOs.
2 years ago
jean-pierre charras
427de4cda6
BOARD::GetBoardPolygonOutlines(): add option to add NPTH as board holes.
Used in 3D viewer to truncate plated holes intersecting NPTH.
Fixes #16325
https://gitlab.com/kicad/code/kicad/-/issues/16325
2 years ago
Jeff Young
2ec3cd91fa
Nullptr safety.
2 years ago
Jeff Young
af9fc5be2f
Hack to keep 3D Viewer's "home" zoom from being too small.
2 years ago
Wayne Stambaugh
b5eee9dd7e
Coverity warning fixes.
2 years ago
Marek Roszko
37479c4154
HIDPI_GL_3D_CANVAS needs CAMERA so move it over
2 years ago
Jeff Young
da1405ec6a
Draw off-board pads when drawing off-board silk.
2 years ago
Jeff Young
c1a988e3ff
Handle plated vs non-plated copper for copper other than pads.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5569
2 years ago
Jeff Young
78f70b45e6
Minor readability improvements.
2 years ago
Jeff Young
8d06a794f4
Simplify code.
DrawAllCameraCulled() can handle up to 4 knockout lists, and any
of them can be null, so don't dance around how we call it.
2 years ago
Jeff Young
0126841c44
ADDED: 3D appearance setting for off-board silk.
2 years ago
Jeff Young
c0ce543464
Use standard KiCad abbreviations for TH and NPTH.
2 years ago
Jeff Young
22256c97f3
Fix logic errors in handling board body visibility.
Also fixes a bug where models were placed above the silk when the
solder paste layer was shown, but on the solder paste layer when
it wasn't shown.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15510
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6770
2 years ago
Jeff Young
0c37e3c443
Remove realistic-mode (and duplicated settings from preferences).
Most of these settings are now available in the appearances panel.
It was concluded in a Zulip discussion that any missing items can
be added back in time if people find they need them (ie: complain).
Also hooks up 3DViewer to the common language framework.
2 years ago
Jeff Young
686704bb31
ADDED: plot control over FP text.
(Also adds said control to "Follow Plot Settings" in 3D viewer.)
2 years ago
Jeff Young
f45760062b
ADDED: appearances manager for 3D viewer.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12413
2 years ago
jean-pierre charras
66651327bd
STEP export: in board outlines, export Circles as Cylinders, round 2.
Other arcs (not 360 deg arcs) are still exported as polylines
3 years ago
jean-pierre charras
6618cda214
3D viewer: use the right color theme (the one used in the board editor)
Fixes #14616
https://gitlab.com/kicad/code/kicad/issues/14616
3 years ago
Mike Williams
32eb1ef77e
Sch->PCB: propagate DNP from symbols to footprints attributes
Also add a 3D viewer toggle.
3 years ago
Seth Hillbrand
d7a6875b0b
3dviewer: Show footprint board regardless of proj
The settings for the project in terms of visibility should not impact
our ability to preview the 3d model of a footprint
Fixes https://gitlab.com/kicad/code/kicad/issues/14246
3 years ago
jean-pierre charras
7256a51e8e
Fixes in build board outlines as polygon and convert_shape_list_to_polygon:
- Ensure Bezier curves have their polygon build before use it.
- When building board outlines as polygon the same chaining epsilon value
for DRC, export step and 3D view (default 0.01mm).
Fixes #14115
https://gitlab.com/kicad/code/kicad/issues/14115
Fixes #14009
https://gitlab.com/kicad/code/kicad/issues/14009
3 years ago
jean-pierre charras
9e0515a79a
3D viewer: ensure dielectric thickness of all dielectric sub-layers is used.
Previously, when a dielectric layer had sub-layers (i.e.when a dielectric
is made from more than one layer) only the first sub-layer thickness was used.
Fixes #13042
https://gitlab.com/kicad/code/kicad/issues/13042
3 years ago
jean-pierre charras
22cd2a3428
3D viewer: add option to show/hide fp not in position file.
Previously they were not shown, and this is really bad, because
"not in pos file" does not mean never mounted, and not even not mounted.
3 years ago
Marek Roszko
3d5913c825
Remove convert_to_biu.h, merge contents to base_units.h
3 years ago
Marek Roszko
a8613ee80f
Combine Iu2Millimeter & remove PcbMm2iu
3 years ago