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
Marek Roszko
21fde9b629
enum class PCB_SHAPE_TYPE_T
2021-04-30 22:36:12 -04:00
Marek Roszko
a69256e15b
Remove extraneous #include
2021-04-30 21:55:48 -04:00
Ian McInerney
ecd9bf696e
Be consistent about using nullptr instead of 0
...
0 can be too easily overloaded into an int, so ensure we use nullptr
when we mean pointers.
2021-04-22 22:20:34 +01:00
Mario Luzeiro
e92dc96767
3D-Viewer: fix issue with solder mask
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8272
2021-04-22 06:26:04 +00:00
Mario Luzeiro
cdc8fd3804
3D-Viewer: improve edge texture clamping of end segments
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8245
2021-04-21 06:34:19 +00:00
david-beinder
e0f69ad28b
3D viewer: Fix gap between plating and annulus copper
...
Hide transition by ending layer copper withing the annulus of the cylinder. Also always use hole wall thickness and set more realistic solder mask thickness
2021-04-19 13:19:32 +00:00
Wayne Stambaugh
2ae264751f
Rename class_board_stackup.{h|cpp} to board_stackup.{h|cpp}.
2021-04-16 17:07:06 -04:00
Mikolaj Wielgus
744e70df36
3D Viewer: Fix mouse panning in orthographic projection mode
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5561
2021-04-10 17:58:50 +00:00
Jon Evans
c1573744be
Lock project files when opening; open locked projects read-only
...
Also clean up an include-what-you-use problem
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8037
2021-04-02 19:29:56 -04:00
Ian McInerney
0a0935e0f3
Remove ACTIONS::TranslateLegacyId and TOOL_DISPATCHER::DispatchWxCommand
...
After commit 9535153f9e
there were no more IDs inside the legacy ID
system. Therefore the entire system for dispatching and looking up
the legacy ideas and handling those events can now be removed and
the tool dispatcher simplified (it no longer needs to know about
the ACTIONS class).
2021-03-30 23:20:22 +00:00
jean-pierre charras
23667fc4c4
3D viewer: make solder paste layer thickness bigger than the mask layer.
...
Some specific footprints need shapes on paste layer covering the mask layer,
so ensure these shapes are visible.
Fixes #8041
https://gitlab.com/kicad/code/kicad/issues/8041
2021-03-26 18:02:30 +01:00
Jon Evans
c04e19f9ac
Include optimization: move some things from common.h to point-of-use
2021-03-20 12:09:18 -04:00
jean-pierre charras
c08f74168c
3D viewer: BOARD_ADAPTER::createPadWithClearance() add missing handling of SH_ARC shape.
2021-03-20 14:15:47 +01:00
Jon Evans
18037e2f65
Rework bitmap system to load from archived PNGs
...
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
jean-pierre charras
fe02155b5a
3D viewer, DIALOG_3D_VIEW_OPTIONS_BASE: fix minor wxWidgets alerts and Add
...
minor cosmetic changes.
Fixes #7846
https://gitlab.com/kicad/code/kicad/issues/7846
2021-03-09 11:23:33 +01:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Jon Evans
720147d272
Remove transitive inclusion of bitmaps.h
2021-03-07 16:08:57 -05:00
Seth Hillbrand
283d176cdc
Use std::locale::classic() globally
...
This is a better alternative when imbuing streams
2021-02-26 17:21:55 -08:00
kamp
0a9a9d625e
Fix BBOX_3D documentation
2021-02-24 17:45:53 +00:00
Marek Roszko
907e282347
Silence some msvc warnings
...
- exception variables that were unused
- RAYSEG2D improperly foward declared with class instead of struct
- unused vars
2021-02-20 11:58:55 -05:00
Jeff Young
66b33834b5
Always enable save; move dirty bit to asterisk in title bar.
...
Also unifies PCB Editor and Schematic Editor names with other
locations in the GUI (which were still Pcbnew and Eeschema).
Fixes https://gitlab.com/kicad/code/kicad/issues/7587
Fixes https://gitlab.com/kicad/code/kicad/issues/7594
2021-02-18 16:05:42 +00:00
Jeff Young
b6a7981e62
Write changes back to grid after using file explorer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7361
2021-02-17 14:08:53 +00:00
Marek Roszko
b609c7dcd6
Kick the osx specific path helpers into PATHS
2021-02-16 23:29:26 -05:00
Marek Roszko
2370ca1b0e
Minor code clean, standard "new" does not need to be null checked
...
Because it will bad_alloc exception you instead :D
Silence PVS Studio V668 Warnings
2021-02-16 18:24:59 -05:00
Marek Roszko
f2552d7bc1
Tweak the reported last render message slightly
2021-02-15 17:47:43 -05:00
Marek Roszko
f88be65825
Remove mention of FPS
...
We are not a real time rendering engine
2021-02-15 17:00:00 -05:00
Marek Roszko
36d8ca7954
Fix statusbar conflict in 3d viewer
...
Fix #7544
2021-02-15 17:00:00 -05:00
Marek Roszko
872184fe8b
Revert "Bump minimum required CMake version to 3.10"
...
This reverts commit a475f45753
.
2021-02-09 18:46:13 -05:00
Simon Richter
a475f45753
Bump minimum required CMake version to 3.10
...
This allows us to remove even more workarounds
2021-02-08 12:23:08 +00:00
Seth Hillbrand
624a231cc0
Remove unused line width option
...
You had to set the line width in the SVG export dialog in order to
change the displayed line width in the 3d viewer. The line width did
not affect the SVG export. Removing in favor of the Board design
settings for line widths
2021-02-06 06:44:53 -08:00
Roberto Fernandez Bautista
9aedeae5c3
Don't log error messages when using the clipboard
...
wxClipboard::GetData()and wxClipboard::SetData() both log a "wxLogSysError" error-level message (see for example: https://github.com/wxWidgets/wxWidgets/blob/v3.1.4/src/msw/clipbrd.cpp#L703 ). This logged message gets displayed as a messagebox to the user.
The logging can be disabled temporarily by creating a wxLogNull object. See https://docs.wxwidgets.org/3.0/classwx_log_null.html
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6956
2021-02-03 01:55:05 +00:00
Marek Roszko
bf2e7215a5
const SGPOINT::GetPoint args
2021-02-01 08:13:00 -05:00
Jeff Young
e72262a007
Don't render un-enabled layers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7313
2021-01-30 16:31:27 +00:00
Marek Roszko
914568f1a0
Fix macos using the wrong 3d plugins path
2021-01-27 19:12:19 -05:00
Marek Roszko
daf9c4f319
Centralize the 3d cache path
2021-01-27 19:12:19 -05:00
Marek Roszko
7b5397f81f
Move PLUGINDIR to the make config.h
2021-01-27 19:12:19 -05:00
Marek Roszko
14327f3708
Cleanup the 3d plugins paths a little bit
2021-01-27 19:12:18 -05:00
Wayne Stambaugh
6ab1144ea3
Fix broken Doxygen comment specifiers.
...
Please note, ///> is not a valid Doxygen comment specifier. ///< is the
correct specifier to use for single line or short Doxygen comments.
2021-01-25 07:42:36 -05:00
Michael Kavanagh
b90eabd68b
Icons: out with the old, in with the new
...
+ remove icons where they dont make sense or are duplicated within the
same context
2021-01-19 22:57:24 +00:00
Michael Kavanagh
50e22de3ba
Remove empty option from 3D Viewer dropdown
2021-01-17 23:11:29 +00:00
Roberto Fernandez Bautista
49f454e32b
Line width already factored into polygon shapes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7130
2021-01-16 08:39:20 +00:00
Jeff Young
ee6ec2c35c
Line width already factored in to rectangle polygon.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7113
2021-01-14 16:54:20 +00:00
Wayne Stambaugh
2d64613bbb
Coverity fixes.
...
Reports 314745, 316271, and 316269.
2021-01-13 11:23:09 -05:00
Wayne Stambaugh
6f0319e29f
Fix potential bug in 3D model selection dialog.
...
Calling EndModal or EndQuasiModal will cause KiCad to hang if the dialog
was not opened in the same manor. The modality of the dialog must be
checked and the appropriate end method must be called or emulate a button
click which allows the default dialog close method to be called to handle
shutting down the dialog correctly.
2021-01-13 09:20:23 -05:00
Seth Hillbrand
26524ef41e
Select model on double-click
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7070
2021-01-12 15:21:29 -08:00
Jeff Young
751fdbf278
Simplify layout & terminology in 3D settings dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6659
2021-01-09 20:53:24 +00:00
Wayne Stambaugh
926cc3a00d
3D Viewer: more code cleaning and naming improvements.
2021-01-07 14:33:43 -05:00
jean-pierre charras
86be755c83
Fix compil warning: do not use class instead of struct in forward declarations
2021-01-06 09:29:03 +01:00
Wayne Stambaugh
1c7a5c46e5
3D Viewer: member variable and method naming improvements.
...
A few build improvements thrown in for a good measure.
2021-01-05 17:24:29 -05:00
Michael Kavanagh
a7286ccc34
Icons: remove functional duplicate
2021-01-04 01:44:01 +00:00
Wayne Stambaugh
710e621c6a
3D Viewer: remove all instances of "c" prefix from file names.
2021-01-03 17:44:49 -05:00
Michael Kavanagh
791d1f513c
Icons: fix some 3D viewer icons
...
- remove old palette icon in favour of new one
- use dark grey in new icon (instead of light grey)
- use generic gear for 3D display options
2021-01-02 23:16:33 +00:00
Wayne Stambaugh
8416c1fc37
3D Viewer: remove all instances of "C" prefix from object names.
2021-01-02 17:45:36 -05:00
Seth Hillbrand
8de9cff4e0
Change environmental variables to human-readable
...
Versions specific variables that may point to objects that change
through versions, allowing multiple KiCad versions to operate correctly
(even on MSW) on the same machine.
2021-01-01 16:20:35 +00:00
Jeff Young
5ea88c897a
Go back to AuiMgr strategy for 3D-viewer infobar.
...
There some issue with using the 3D canvas as a parent in the new
strategy.
2020-12-27 01:01:25 +00:00
Jeff Young
0b6c524dda
Missing file from last commit.
2020-12-24 21:35:31 +00:00
Jeff Young
ef25c78a04
Separate polygonization error from chaining error.
...
This way we can report anything that doesn't exactly chain while still
applying a fudge factor for our own stuff.
Fixes https://gitlab.com/kicad/code/kicad/issues/1795
2020-12-24 21:02:14 +00:00
Dominik Wernberger
caf300aa33
Fix memory leak
2020-12-24 17:33:33 +00:00
Michael Kavanagh
eb1f07bade
Icons: standardise `export_png` to match set
2020-12-24 01:02:03 +00:00
Jeff Young
47ea51ec34
Allow both aui-manager-based infobars and window overlay infobars.
2020-12-22 21:36:39 +00:00
Wayne Stambaugh
f311831c27
Coverity fixes.
...
280252, 314742, 314745, 314747, 314755, 314756, 314757, 314758,
314935, 314936
2020-12-20 13:24:47 -05:00
Jeff Young
0ba175f28c
Formatting.
2020-12-19 00:21:28 +00:00
Wayne Stambaugh
aab3c936f0
Move headers from common folders to appropriate include folders round 2.
2020-12-17 11:44:03 -05:00
Ian McInerney
048900dda7
Fixup the 3d Viewer code after the last fixup
2020-12-17 00:30:22 +00:00
Marek Roszko
a3c4730a3f
Add missing return removed in 978935d
2020-12-16 19:03:27 -05:00
Wayne Stambaugh
f8efe4a65a
3D viewer code cleaning round 5.
2020-12-16 17:11:05 -05:00
Wayne Stambaugh
978935d749
3D viewer code cleaning round 4.
2020-12-16 13:19:28 -05:00
jean-pierre charras
5e394836d2
Fix a wxWidgets alert.
...
Fixes #6743
https://gitlab.com/kicad/code/kicad/issues/6743
2020-12-15 15:46:52 +01:00
Seth Hillbrand
9a7b161f8e
Update rotate icons to clarify action
...
Rename icons to make it easier for folks looking at code names
Fixes https://gitlab.com/kicad/code/kicad/issues/6737
2020-12-14 12:23:08 -08:00
Wayne Stambaugh
4d128b819a
3D viewer code cleaning round 3.
2020-12-13 18:02:57 -05:00
Wayne Stambaugh
9e22499350
3D viewer code cleaning round 2.1.
2020-12-12 12:35:31 -05:00
Wayne Stambaugh
1eba0c435b
3D viewer code cleaning round 2.
2020-12-12 12:35:31 -05:00
Wayne Stambaugh
d1fe4a0c98
3D viewer code cleaning round 1.
2020-12-11 08:51:42 -05:00
Jeff Young
73b7b104cd
Fix some issues with Infobar sizing.
...
This also commits to the new strategy as it wasn't really compatible
with if-def-ing anymore.
2020-12-11 12:39:40 +00:00
Jeff Young
b1f0bf7334
More consistent naming.
2020-12-08 13:05:39 +00:00
Jeff Young
58afaeb9eb
Use QuasiModal in all parents of ConfigPaths so help window works.
2020-12-06 18:44:24 +00:00
jean-pierre charras
e6550fb92e
3D viewer: fix a draw issue: missing holes.
...
Fixes #6608
https://gitlab.com/kicad/code/kicad/issues/6608
2020-12-04 16:35:57 +01:00
Jeff Young
7f360a7188
Some renaming in 3D code for better SNR. Also formatting fixes.
2020-11-30 14:38:06 +00:00
Jeff Young
3ca06700fc
Formatting.
2020-11-29 20:00:16 +00:00
Jeff Young
889408c96a
More improvements to new selection disambiguation.
...
Also a rationalization of text polygon generators, with the "standard"
version inherited from BOARD_ITEM now giving the bounding box. This
requires callers who want the (much) more expensive stroke-based one
to call it explicitly (and brings PCB_TEXT in line with the was FP_TEXT
already was.
Fixes https://gitlab.com/kicad/code/kicad/issues/6525
2020-11-29 14:02:46 +00:00
Jeff Young
9c7c05c161
Mostly formatting cleanup but a few type-casting cleanups too.
2020-11-24 22:16:41 +00:00
Jeff Young
2f3f4c209e
Make sure DRC reports a missing board outline.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6481
2020-11-24 14:22:27 +00:00
Jeff Young
1391774f64
Re-factor boundary/courtyard checker error handling.
...
ADDED Footprint Checker dialog to display the results in.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-21 20:57:35 +00:00
Jeff Young
b123318cf6
Encourage use of full DRC for board & footprint malformed outlines.
...
It shows much more detail. Removes some nag dialogs and places
hypertext links in others.
Also fixes the auto-layer-showing to correctly show Edge.Cuts or
F.CrtYd or B.CrtYd for errors relating to them.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-20 17:24:52 +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
a207bd97bb
Naming conventions.
2020-11-17 16:05:49 +00:00
Wayne Stambaugh
c7926db553
More minor dialog layout improvements.
2020-11-16 07:29:07 -05:00
Mario Luzeiro
8b9be2e129
3D-Viewer: fixes generations of layer lists
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6385
2020-11-15 16:55:16 +00:00
Jeff Young
7bd31d5237
Naming conventions.
2020-11-14 18:26:03 +00: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
3451ac3088
PCB_MODULE_T -> PCB_FOOTPRINT_T
2020-11-13 15:16:24 +00:00
Jeff Young
63a54d003e
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
522d64968e
Yet more module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
9106cc19bf
Yet another tranche of module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
8c947b69b0
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
fc9cf1d827
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
52a46341db
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
f5443de7f9
D_PAD -> PAD.
2020-11-13 15:16:24 +00:00
Jeff Young
84dd5108ba
Remove some "class_" prefixes from files.
2020-11-13 15:16:23 +00:00
Jeff Young
f7333ad64a
Update some classnames including archaic zone names.
2020-11-12 10:31:25 +00:00
Mario Luzeiro
8ec0cef572
3D-Viewer: Fixes correct copper plated color in Raytracing mode
2020-11-11 20:09:12 +00:00
Mario Luzeiro
5841ea3cd2
3D-Viewer: Raytracing, add silkscreen texture
...
improves other textures
2020-11-11 16:22:34 +00:00
jean-pierre charras
6570cd5850
minor compil warning fix
2020-11-11 12:28:37 +01:00
Mario Luzeiro
c08f9ac9f6
3D-Viewer: properly clears the container
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6346
2020-11-11 09:42:14 +00:00
Ian McInerney
11e6cac42b
Introduce EGL backend support for the OpenGL canvas
...
wxWidgets 3.1.5+ on Linux will compile with the Wayland EGL
canvas as the backend instead of the X11 backend. This requires a
version of GLEW compiled with the proper EGL defines and a different
header/code for certain parts that are X11 GLEW specific.
This introduces an in-tree version of GLEW that will be built with the
GLEW_EGL flag then statically linked into the KiCad executables when
EGL support is needed.
2020-11-11 00:41:02 +00:00
Mario Luzeiro
e105451f44
3D-Viewer: when possible, uses only the board edges to calculate boundings
...
Add Report messages to Raytracing
Fixes https://gitlab.com/kicad/code/kicad/issues/6316
2020-11-10 17:32:24 +00:00
Mario Luzeiro
753383d6ec
3D-Viewer: disable layer subtraction operations on non realistic mode
2020-11-10 14:40:42 +00:00
Mario Luzeiro
a9be08e1ce
3D-Viewer: skip layers not created
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6324
2020-11-10 13:57:52 +00:00
Wayne Stambaugh
4ea3914d4e
Coverity fixes.
...
CIDs: 312996, 305508, 305509, 305510, 312992, 312997, 312994, 312995,
312968, and 306650.
2020-11-10 08:50:16 -05:00
Mario Luzeiro
82bd232737
3D-Viewer: mark flag as initialized
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6331
2020-11-09 13:19:28 +00:00
Roberto Fernandez Bautista
ae26c92a16
Remove modal message box when catching exceptions in EDA_3D_CANVAS::DoRePaint
...
Rely on the wxInfobar instead
2020-11-07 15:39:57 +00:00
Roberto Fernandez Bautista
1bbc569151
Fix DoRePaint routine in EDA_3D_CANVAS
...
- Check that we aren't already painting (return if we are)
- Check that GLEW functions exist before calling them in 3D canvas and throw exception if they are no longer available
- Catch above exceptions in paint routine and show an infobar message to the user
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6246
2020-11-07 15:39:57 +00:00
Mario Luzeiro
9454f9df92
3D-Viewer: OpenGL, enable by default the AA
...
fixes an issue that disables AA when it back from Raytracing mode
2020-11-06 20:21:40 +00:00
Mario Luzeiro
89fea36ddd
3D-Viewer: OpenGL, remove outline polygons where it intersects a hole at edge of board
2020-11-06 20:21:40 +00:00
Mario Luzeiro
4b6c602537
3D-Viewer: OpenGL, cut outline on plated pads
2020-11-06 20:21:40 +00:00
Mario Luzeiro
5e371b5f29
3D-Viewer: OpenGL, fix z-fight issue
2020-11-06 20:21:40 +00:00
Mario Luzeiro
78b461a41d
3D-Viewer: OpenGL outline, implement an outline board cut
2020-11-06 20:21:40 +00:00
Mario Luzeiro
3fce3b6591
3D-Viewer: fix code style
2020-11-06 20:21:40 +00:00
Mario Luzeiro
386a0bbe4a
3D-Viewer: add antiboard as a single object
...
improves ray transversal,
fixes previous csg operation issues.
Fixes https://gitlab.com/kicad/code/kicad/issues/6097
2020-11-06 20:21:40 +00:00
Mario Luzeiro
b06db80151
3D-Viewer: raytracing, implement an outline board cut
...
it cut board items that are outside and on the edge of the board.
Allows castellations render.
2020-11-06 20:21:40 +00:00
Marek Roszko
08ca80a2d8
Smooth out redrawing of toolbars by not letting wx pointlessly calculate both orientations
...
Monkey patch
Fix #5705
2020-11-05 20:56:14 -05:00
Oleg Endo
a238209f3f
Add group-by-suffix display option in net inspector
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2469
2020-11-04 02:49:19 +00:00
Ian McInerney
3d47eb0d49
Fix localization of the menu strings with accelerator strings
...
The accelerator strings really shouldn't be part of the translation,
and some translations have cause the accelerator keys to be incorrectly
handled. It is simpler to make it separate and just join them to the
translated string.
Make all accelerator modifiers use lowercased Ctrl instead of CTRL
to be the same as the other modifiers.
Fixes https://gitlab.com/kicad/code/kicad/issues/5992
2020-11-04 01:31:52 +00:00
Jeff Young
5a644aa3fb
QuasiModal needs to be used for any dialog hosting a help window.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5897
2020-10-28 23:07:15 +00:00
Marek Roszko
04697c5fe8
Avoid 3d viewer stealing back focus/activation
...
Fix #6184
2020-10-27 19:35:55 -04:00
jean-pierre charras
73c7154891
Fix another Coverity warning.
2020-10-27 14:16:38 +01:00
Ian McInerney
6bd3b0afa4
Various Coverity fixes
2020-10-27 00:25:08 +00:00
jean-pierre charras
c092e3f8b7
Fix a few minor Coverity warnings
2020-10-26 10:46:08 +01:00
Marek Roszko
91e5611341
Move dialog_configure_paths.h and dialog_edit_library_tables.h to dialogs folder
2020-10-25 20:01:12 -04:00
Marek Roszko
eeac3cb4d5
Nix some more common.h includes
2020-10-24 00:38:25 -04:00
Marek Roszko
304e5faf36
Move wxStringSplit to kicad_string
2020-10-24 00:17:07 -04:00
Jeff Young
cce557b9ad
Redo the board-edge-building logic to return better error reports.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6119
2020-10-22 21:29:04 +01:00
Seth Hillbrand
f8a4edb1c9
First pass renaming module to footprint
...
This is mostly in comments and the few remainin text strings that
reference module
2020-10-20 20:49:11 -07:00
Seth Hillbrand
4085757aeb
Remove beginning/ending spaces in translations
...
Adding space padding makes translations more difficult by increasing
string counts
2020-10-20 12:08:04 -07:00
jean-pierre charras
539ac4c214
Remove a few include<wx/wx.h> in many files that do not actually use this include.
2020-10-19 09:00:50 +02:00
jean-pierre charras
f6b4b66a86
Avoid include wx/wx.h in many files that do not actually use this include.
...
Including wx.h includes the full set of wxWidgets include files, that is not good,
and can create some conflicts with some Windows headers on msys2.
2020-10-18 18:21:34 +02:00
Ian McInerney
06f01d0d8a
Add platform-specific code to allow wxChoice to ellipsize
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5377
2020-10-17 23:20:13 +01:00
Jeff Young
92d84b0d67
Naming updates.
2020-10-15 01:35:16 +01:00
Jeff Young
1703729269
Require explicit decl of maxError and errorLocations.
...
This should reduce both performance issues and clearance issues.
2020-10-13 13:49:07 +01:00
Jeff Young
07f139381b
Nullptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5893
2020-10-06 12:49:29 +01:00
Jeff Young
52794b3456
Nullptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5893
2020-10-06 12:08:31 +01:00
Mario Luzeiro
d31c5c41e6
3D-Viewer: add an infobar to the panel preview
2020-10-06 10:42:46 +00:00
Mario Luzeiro
1cbe8fcc1f
3D-Viewer: check for minimum required version of OpenGL
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5286
2020-10-06 10:42:46 +00:00
Jeff Young
37906511f5
Class renaming.
...
DRAWSEGMENT -> PCB_SHAPE
EDGE_MODULE -> FP_SHAPE
TEXTE_PCB -> PCB_TEXT
TEXTE_MODULE -> FP_TEXT
2020-10-05 11:55:33 +01:00
Mark Roszko
a28a0e14ba
Fix conversion warnings
2020-10-05 10:41:14 +00:00
Jeff Young
7a4900b8dc
PCB_LINE_T -> PCB_SHAPE_T and PCB_MODULE_EDGE_T -> PCB_FP_SHAPE_T
...
Also updated footprint text and zone types for consistencey.
2020-10-04 16:49:04 +01:00
jean-pierre charras
bda275de46
more cleanup about removing useless include
2020-10-03 11:48:16 +02:00
Mario Luzeiro
cea1a56f5f
3D-Viewer: set default alpha when import from legacy
...
keep the current alpha when import colors from stackup.
request a refresh instead of a reload when using OpenGL render.
Fixes https://gitlab.com/kicad/code/kicad/issues/5717
2020-10-02 23:14:42 +00:00
Jeff Young
5b7c6e100d
Clip tech layers to board in 3D renderer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4873
2020-10-01 16:50:22 +01:00
Jeff Young
3c01147f10
Fix 3D hole knock-out of silkscreen.
...
It still doesn't knock-out the board edges, but this is a good first
step.
Fixes https://gitlab.com/kicad/code/kicad/issues/4837
2020-10-01 11:49:28 +01:00
jean-pierre charras
42350a4928
Minor code cleanup: remove useless include or useless code.
...
fix also a minor compil warning
2020-10-01 11:36:15 +02:00
Ian McInerney
38584e55dd
Don't process an invalid window position
...
This is used for computing a vector index, so it can't be
negative.
2020-09-30 23:34:04 +01:00
Ian McInerney
a5ed5e5675
Handle single line segments on footprint edgecuts
...
Also, only display an infobar message for footprints when
there is no footprint loaded (instead of if the outline
isn't closed).
Fixes https://gitlab.com/kicad/code/kicad/issues/4866
2020-09-30 23:34:04 +01:00
Ian McInerney
78c43158f4
Annotate the board class with if it is for a footprint edit/view
2020-09-30 23:34:04 +01:00
jean-pierre charras
3f8c9d49f8
Revert "Code cleanup: remove useless wx/wx.h include inside a few files."
...
due to compil issue on Linux
This reverts commit cffccc3970
.
2020-09-30 20:47:20 +02:00
jean-pierre charras
cffccc3970
Code cleanup: remove useless wx/wx.h include inside a few files.
...
in most of files, including wx.h is not necessary, when only 2 or 3 wx files must be included.
Moreover, on windows, including wx.h sometimes create compil warnings about
shadowed vars defined in some specific windows headers.
2020-09-30 20:03:27 +02:00
Seth Hillbrand
bf3cb0b1d0
Standardize pad type enums
2020-09-30 08:38:35 -07:00
Jeff Young
d3f8f2b81e
Remove confusion between pad->IsOnLayer and pad->IsPadOnLayer
2020-09-30 11:50:51 +01:00
Mario Luzeiro
ab57c93c98
3D-Viewer: add selection color as an option
2020-09-28 02:26:25 +00:00
Mario Luzeiro
ec3c20bf84
3D-Viewer: do not use selection while on preview
2020-09-28 02:26:25 +00:00
Mario Luzeiro
6db0c58e8f
3D-Viewer: fix some code style
2020-09-28 02:26:25 +00:00
Mario Luzeiro
5205709399
3D-Viewer: use LAYER_SELECT_OVERLAY color for selection
...
preserve material transparency while rendering as selected
2020-09-28 02:26:25 +00:00
Mario Luzeiro
10676eb926
3D-Viewer: only show intersection information while using opengl
2020-09-28 02:26:25 +00:00
Mario Luzeiro
3f2cada6c6
3D-Viewer: fix a bug introduced in the previous commits
2020-09-28 02:26:25 +00:00
Mario Luzeiro
6bc19dbfe9
3D-Viewer: intercect modules and cooper items
...
show module and net information.
highlight shapes when selected.
2020-09-28 02:26:25 +00:00
Mario Luzeiro
a1e94c2583
3D-Viewer: request a redraw when a footprint is selected in pcbnew
2020-09-28 02:26:25 +00:00
Mario Luzeiro
fe51cc947c
3D-Viewer: render 3D shapes in green if footprint is selected
2020-09-28 02:26:25 +00:00
Mario Luzeiro
c7a546042e
3D-Viewer: add skip material to model loading
2020-09-28 02:26:25 +00:00
Mario Luzeiro
0ab82ef66a
3D-Viewer: add an option to enable render of plated pads
...
by default this option is disabled and will render as in previous
version.
2020-09-27 13:35:55 +00:00
Ian McInerney
fc565edb33
Add a palette to the toolbars to display groups of actions
...
This adds a palette to toolbar items that displays groups
of actions when long-pressed on a button.
2020-09-27 01:00:44 +01:00
jean-pierre charras
0b03d8a5ff
Fix a few Coverity warnings.
2020-09-20 16:30:23 +02:00
jean-pierre charras
6ec6baf401
3d viewer: save color settings.
...
The call to SaveColorSettings() was not at the right place, and the new
color settings never saved.
Fixes #5529
https://gitlab.com/kicad/code/kicad/issues/5529
2020-09-17 17:15:25 +02:00
Jon Evans
e9b627bfd8
ADDED: Center marker dimension type
2020-09-16 20:55:11 -04:00
Jon Evans
75ffce1a0b
ADDED: Leader dimension object
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5555
2020-09-15 23:37:38 -04:00
jean-pierre charras
98339cd5eb
3d viewer: fix incorrect calculation of pad hole size of vertical shape.
...
Fixes #5627
https://gitlab.com/kicad/code/kicad/issues/5627
2020-09-15 10:17:31 +02:00
Jon Evans
b11e315d10
Refactor DIMENSION to hide internal details; add some new properties
...
This is a board file format change to account for the new properties.
Also, we now only store the critical information about the dimension's
geometry in the board, rather than storing every drawn line.
The DIMENSION object is now an abstract base, and ALIGNED_DIMENSION
is the implementation that exists today (we will add more dimension
types in the future)
2020-09-11 21:12:36 -04:00
Jeff Young
e2bc7557cc
Clean up arc/circle polygonization.
...
1) For a while now we've been using a calculated seg count from a given
maxError, and a correction factor to push the radius out so that all
the error is outside the arc/circle. However, the second calculation
(which pre-dates the first) is pretty much just the inverse of the first
(and yields nothing more than maxError back). This is particularly
sub-optimal given the cost of trig functions.
2) There are a lot of old optimizations to reduce segcounts in certain
situations, someting that our error-based calculation compensates for
anyway. (Smaller radii need fewer segments to meet the maxError
condition.) But perhaps more importantly we now surface maxError in the
UI and we don't really want to call it "Max deviation except when it's
not".
3) We were also clamping the segCount twice: once in the calculation
routine and once in most of it's callers. Furthermore, the caller
clamping was inconsistent (both in being done and in the clamping
value). We now clamp only in the calculation routine.
4) There's no reason to use the correction factors in the 3Dviewer;
it's just a visualization and whether the polygonization error is
inside or outside the shape isn't really material.
5) The arc-correction-disabling stuff (used for solder mask layer) was
somewhat fragile in that it depended on the caller to turn it back on
afterwards. It's now only exposed as a RAII object which automatically
cleans up when it goes out of scope.
6) There were also bugs in a couple of the polygonization routines where
we'd accumulate round-off error in adding up the segments and end up with
an overly long last segment (which of course would voilate the error
max). This was the cause of the linked bug and also some issues with vias
that we had fudged in the past with extra clearance.
Fixes https://gitlab.com/kicad/code/kicad/issues/5567
2020-09-11 11:23:49 +01:00
Seth Hillbrand
08d4e91f3b
Change partitions to fixed size
...
Partititioning small polygons causes excessive partitions when we use a
fixed number of cells per side. Partitioning by size keeps the
partition count limited and speeds the calculations.
Also adds an option to not partition the grid for elements (like 3d
raytracing) that do not need it.
Fixes https://gitlab.com/kicad/code/kicad/issues/5579
2020-09-10 09:31:20 -07:00
Mario Luzeiro
d52c475b27
3D-Viewer: implements plated copper texture
...
improves copper and board textures.
Related to https://gitlab.com/kicad/code/kicad/-/issues/2058
Use only one PerlinNoise class.
2020-09-08 21:02:20 +00:00
Mario Luzeiro
f0edbd088c
3D-Viewer: fixing z-fight issues
2020-09-08 21:02:20 +00:00
Mario Luzeiro
e288218c4f
3D-Viewer: subtract pads poly to F_Cu and B_Cu poly layers
2020-09-08 21:02:20 +00:00
Mario Luzeiro
d7a95951e1
3D-Viewer: implement nonplated copper on raytracing
2020-09-08 21:02:19 +00:00
Mario Luzeiro
1ab968e72f
3D-Viewer: render different materials plated and non plated copper
...
implement on OpenGL
2020-09-08 21:02:19 +00:00
Mario Luzeiro
3544bc09fd
3D-Viewer: remove not used inner holes containers
2020-09-08 21:02:19 +00:00
Jeff Young
2251716784
Don't show 3D models with their show flag set to false.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5548
2020-09-08 20:42:09 +01:00
qu1ck
636285311e
Make DRAWSEGMENT::GetRectCorners return vector
...
... instead of modifying the argument.
This will make the method usable in python API and will not incur
permormance penalty because named return value optimization (NRVO)
is a thing since C++11.
But even if copy is not elided vector is moved instead of copied.
https://en.cppreference.com/w/cpp/language/copy_elision
2020-09-07 05:33:10 +00:00
Mario Luzeiro
306a8f57f7
3D-Viewer: Parameterize sampling options
2020-09-04 15:12:01 +00:00
Mario Luzeiro
2feef44fca
3D-Viewer: Limit the recursive reflection level
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5426
2020-09-01 01:08:38 +00:00
Mario Luzeiro
820e3089a2
3D-Viewer: use the correct opacity meaning in the color settings
2020-09-01 01:08:38 +00:00
Mario Luzeiro
7c9bb9ab07
3D-Viewer: add color to "Clear Color" action in the color picker
2020-09-01 01:08:38 +00:00
Mario Luzeiro
40d5746df6
3D-Viewer: Parameterize body board transparency
...
Fix/workarround raytracing render issues related with refraction
2020-09-01 01:08:38 +00:00
Mario Luzeiro
0302fe5570
3D-Viewer: Parameterize soldermask transparency
2020-09-01 01:08:37 +00:00
Jeff Young
56a531109a
Don't try and shrink shapes generated from pads.
...
It ends up being different from shrinking the final outline.
2020-08-28 20:48:47 +01:00
Jeff Young
b65bb8e7a8
Fix some out-of-order parameters that compiler didn't catch.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5363
2020-08-28 15:17:45 +01:00
Jeff Young
ebb9a636fa
Handle differential x:y clearance for solder mask.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5363
2020-08-28 14:00:37 +01:00
Jeff Young
2c4269d03e
When inflating dummy pad make sure to reset clearance to zero.
...
And, the inflate-dummy-pad hack doesn't work for custom pad shapes,
so turn it off there.
Fixes https://gitlab.com/kicad/code/kicad/issues/5363
2020-08-28 11:05:58 +01:00
Jeff Young
9e12ea9bb6
Cleanup some dead code and make better use of iterators.
...
Also applies coding style around auto and lambdas.
2020-08-28 11:05:58 +01:00