jean-pierre charras
a43ca978df
3D viewer: do not build the board 3D data during 3D frame creation, but after.
...
Building the 3D data is time consuming, so creating the data after the 3D
frame is shown is better, and the build activity is visible, especially on Linux.
2021-07-18 17:55:40 +02:00
Marek Roszko
c794a6ce7a
Add pdb install option for msvc
2021-07-14 23:42:45 -04:00
Wayne Stambaugh
01515680b3
Code cleaning.
2021-07-14 15:47:32 -04:00
Marek Roszko
9162013132
Add advanced cfg to force reloading memory cached 3d models
2021-07-11 00:35:38 -04:00
Marek Roszko
7cb0f8f808
Add ADVANCED_CFG to always reload cached 3d models in memory
2021-07-11 00:31:06 -04:00
Marek Roszko
79b90813ec
Add ADVANCED_CFG to skip caching 3d models to file
2021-07-11 00:00:06 -04:00
jean-pierre charras
289a35ad81
3D viewer, PANEL_3D_RAYTRACING_OPTIONS: use our DIALOG_COLOR_PICKER to select colors.
...
Fixes #8689
https://gitlab.com/kicad/code/kicad/issues/8689
2021-07-05 21:01:12 +02:00
Jeff Young
ea6769b702
The REPORTER interface is inherently line-based.
...
Also fixes a bunch of error messages that were similar but not
identical (which just increases translation burden).
Fixes https://gitlab.com/kicad/code/kicad/issues/8723
2021-07-05 13:41:06 +01:00
Jeff Young
c11ee69499
Save 3D prefs after editing, and load some of them into FP Props.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8712
2021-07-04 13:20:55 +01:00
Marek Roszko
eff75b630f
Get rid of anonymous struct typedefs
...
We are using C++14 where there is no reason for this and is banned in C++20 under P1766R1. MSVC generates a warning under C++14 as a reminder.
2021-07-01 18:28:41 -04:00
Wayne Stambaugh
b579d004ad
3D Viewer: minor display options panel layout improvements.
2021-06-29 15:49:00 -04:00
Maurice
d9a11c30ef
3d viewer fix for 3d single material object Diffuse Only opacity
2021-06-28 20:32:03 +00:00
Jeff Young
3347531f70
Better zoom defaults for 3D viewer.
...
Also includes a fix for 3D model viewer in the file dialog for Retina
(and possibly other HIDPI) displays.
Fixes https://gitlab.com/kicad/code/kicad/issues/6144
2021-06-28 19:08:23 +01:00
Jeff Young
73b91a1a92
More sensible zoom defaults for 3D viewers.
...
Also fixes a bug where the model viewer in the file picker was using
only 1/4 of the screen on HIDPI displays.
2021-06-28 19:08:23 +01:00
Jeff Young
4aa8318dc2
More error message regularization.
2021-06-27 14:24:02 +01:00
Jeff Young
5c21f93803
Consistency in progress and error messages.
2021-06-26 13:23:43 +01:00
Jeff Young
89718dd3ba
Naming conventions.
2021-06-19 19:36:53 +01:00
Jeff Young
16047b7419
3D preferences bug fixes.
...
1) Make sure prefs get saved when closing parent frame.
2) Add camera projection mode to settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/8110
Fixes https://gitlab.com/kicad/code/kicad/issues/8626
2021-06-17 12:22:18 +01:00
Seth Hillbrand
3269ca3201
Fix compile error on BSD
...
The cast here should actually be from '0' and not 'NULL' as we are
getting an integer value of 0 for the bbox_idx_count
Fixes https://gitlab.com/kicad/code/kicad/issues/8580
2021-06-16 09:19:39 -07:00
Jeff Young
5d9c1dd75a
Better names for 3D material properties rendering modes.
...
(Also restores the legacy behaviour of ignoring transparency in
diffuse mode.)
Fixes https://gitlab.com/kicad/code/kicad/issues/8437
2021-06-12 23:01:41 +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
jean-pierre charras
6ab995d6a4
3d-viewer preferences: fix incorrect parent of a panel.
2021-06-11 16:09:00 +02:00
Jeff Young
44086ff2b2
Pull 3D preferences into KiCad preferences architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5187
2021-06-11 11:19:40 +01:00
jean-pierre charras
1c3df973d6
Coverity warnings fixes.
2021-06-10 13:45:02 +02:00
luz paz
5f1e9bc8a7
Fix typos in source code
2021-06-10 01:24:15 +00:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Marek Roszko
d946d6e68f
Cleanup some pgm_base.h includes
2021-06-08 21:56:00 -04:00
Marek Roszko
8377ebb0e1
Fix msvc warnings
2021-06-06 15:30:31 -04:00
Marek Roszko
10e60acf34
Clean up including of board_design_settings.h
2021-06-06 15:03:42 -04:00
Ian McInerney
dc27079b71
cleanup tool event and tool action includes
2021-06-06 18:26:26 +01:00
Marek Roszko
4712d7a918
Remove a leaky wx/msgdlg.h include
2021-06-06 08:45:38 -04:00
Jon Evans
c9a660a80c
Rework JSON integration to speed up build
2021-06-05 17:08:38 -04:00
david-beinder
86add3bb85
Fix MSVC C4312 warnings when casting 32bit ints to pointer types on 64bit builds
2021-06-05 02:57:51 +00:00
Marek Roszko
25678ee00d
Fix msvc 16.10 build error
2021-06-03 23:13:39 -04:00
Marek Roszko
4df3cb912d
Remove another leaky wx/log.h header
2021-06-03 08:11:15 -04:00
Marek Roszko
24cb0e77eb
Fix MSVC builds after recent changes
2021-06-02 23:57:45 -04:00
Ian McInerney
d56251fdac
Remove universal include of wx.h in 3d viewer OpenGL file
2021-06-03 02:29:09 +01:00
jean-pierre charras
a06f965ffa
3Dviewer: fix incorrect drawing of a 3d model hovered by the mouse pointer.
...
Was due to a recent change in 3D code.
2021-05-22 20:23:43 +02:00
jean-pierre charras
d1061b9683
3D viewer: Fix broken handling of text thickness, thus creating erroneous item positions
...
Especially, texts having a not centered justification were shown with artifacts.
2021-05-15 13:18:06 +02:00
Jeff Young
7bcd524fbd
Fix typo.
2021-05-11 23:14:43 +01:00
Jeff Young
ac58a3f9f0
Add preference for 3d-model-highlight-on-rollover.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8349
2021-05-11 20:53:53 +01:00
Wayne Stambaugh
d2a7f81b10
Debugging improvements and clean up.
...
* Remove unused wxLogDebug calls.
* Add add application level character tracing to detect unhandled key
events.
* Catch unhandled exceptions in KiCad main event loop like single top
applications.
2021-05-03 18:08:15 -04:00
jean-pierre charras
0427bda768
Remove useless wx/wx.h include, that create sometimes compil warnings on msys.
...
wx/wx.h includes all wxWidgets .h files, and sometimes creates collision
names in #define between kicad and windows headers
Moreover, blindly including a lot of useless files is compil time consuming
2021-05-01 19:32:15 +02: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
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