Camille
5c4f8abd24
Fix type promotion in math function
2018-01-09 19:11:27 -05:00
Camille
9ff66a5274
Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases
2018-01-09 18:55:51 -05:00
Mark Roszko
b98cc0b937
Some coverity fixes
2018-01-05 22:51:03 -07:00
Thomas Pointhuber
786ac8143e
Request refresh of 3d canvas on resize event
...
This is a partial fix for https://bugs.launchpad.net/kicad/+bug/1695897
2018-01-05 07:25:13 -07:00
jean-pierre charras
5ca5783448
3D viewer, view options dialog: add missing option.
2017-12-28 14:14:46 +01:00
jean-pierre charras
00c2257b26
3D viewer: Remove outdated option "show holes in zones" that was no longer used in opengl mode, and useless in ray tracing
...
(it was only used to reduce the calculation time)
Also add a wxBusyCursor when rebuilding the 3D scene.
2017-12-28 11:01:10 +01:00
jean-pierre charras
27171e1a88
3D viewer: re-enable 3D viewer display options, and update this dialog.
2017-12-28 09:30:18 +01:00
Wayne Stambaugh
4d64a2f53f
Set reasonable 3D model select dialog default path.
...
Passing an empty path to the 3D model select dialog results in the file
select control displaying the root path which requires the user to drill
down to get to the 3D models. Use the KISYS3DMOD path as the default
and fall back to the project path as required for the initial file
select control path.
Clean up some coding policy violations.
Fixes lp:1737094
https://bugs.launchpad.net/kicad/+bug/1737094
2017-12-27 12:43:26 -05:00
Wayne Stambaugh
71ea6dc2b9
Common, 3D viewer, CvPcb, and Eeschema dialog tweaks.
...
Improve dialog layout and fix UI policy issues with all of the dialog
boxes in the common, 3D viewer, CvPcb, and Eeschema code paths.
Updated the use of component to symbol.
2017-12-26 09:38:45 -05:00
jean-pierre charras
d9a2b5161c
Fix issues due to internal code change in DRAWSEGMENT class, for S_POLYGON shape.
...
Remove also duplicate code in 3D viewer, for this DRAWSEGMENT shape.
2017-12-21 15:07:03 +01:00
Bernhard Stegmaier
0135d11412
Fix macOS pinch-to-zoom for 3d-viewer.
2017-12-18 16:26:01 +01:00
Bernhard Stegmaier
909d95b5be
Create HIDPI_GL_CANVAS wrapper for transparent wxGLCanvas HiDPI/Retina support. Enable HiDPI/Retina for 3d-viewer.
2017-12-18 16:26:01 +01:00
Jon Evans
48388695ae
Use explicit shift in hotkeys instead of mixed-case characters
...
Because of how wxMenuItem decodes the label text, the case of
alphabetic hotkeys is not preserved when displaying the menu. So,
alphabetic hotkeys that use the Shift key must be defined this way.
Fixes: lp:1737303
* https://bugs.launchpad.net/kicad/+bug/1737303
2017-12-09 19:59:55 +01:00
jean-pierre charras
68268973b7
To avoid mistakes between graphic layers for pads, holes and not plated holes, rename 3 GAL_LAYER_ID names:
...
LAYER_NON_PLATED to LAYER_NON_PLATEDHOLES
LAYER_PADS_HOLES to LAYER_PADS_PLATEDHOLES
LAYER_PADS to LAYER_PADS_TH
and add comments and fix a render issue in gal mode for non plated holes.
2017-11-29 09:48:41 +01:00
Oliver
b80449b069
Fixes for 3D model offset
...
- Display offset units in 3D preview window (inches or mm)
- Fix offset in 3D renderer
- Fix offset in Raytracing renderer
- Fix offset in STEP export
- Fix offset in VRML export
2017-11-20 17:46:03 -05:00
jean-pierre charras
10de79260d
Fix an assert when starting the 3D viewer in Debug mode (Linux only)
...
Fixes: lp:1731344
https://bugs.launchpad.net/kicad/+bug/1731344
2017-11-17 10:20:55 +01:00
Wayne Stambaugh
f3908bd87c
Revert premature commit of 17ab319b
, "Fixes for 3D model offset".
...
This reverts commit 17ab319b99
.
2017-11-11 20:04:46 -05:00
Oliver
17ab319b99
Fixes for 3D model offset
...
- Display offset units in 3D preview window (inches or mm)
- Fix offset in 3D renderer
- Fix offset in Raytracing renderer
- Fix offset in STEP export
- Fix offset in VRML export
2017-11-11 15:08:08 -05:00
Marvin Schmidt
69974b73db
Remove some extra semicolons
2017-11-09 19:52:18 +01:00
jean-pierre charras
1c356899ab
Fix wxWidget warning in panel_prev_3d_base.cpp dialog
2017-11-07 09:43:27 +01:00
Tomasz Włostowski
81d1e17f02
refactoring: renamed pcbstruct.h to pcb_display_options.h, DISPLAY_OPTIONS->PCB_DISPLAY_OPTIONS
2017-11-03 20:02:06 +01:00
Tomasz Włostowski
90ab5860dc
refactoring: removed dependency of libpcbcommon on 3d-viewer.
2017-11-03 20:01:42 +01:00
jean-pierre charras
e0b9a21417
Modify a few messages to make translations more easy.
2017-10-12 10:39:32 +02:00
Baranovskiy Konstantin
4612a52b50
3D Viewer: fixed entry labels in popup menu.
2017-09-29 15:31:36 +02:00
Maciej Suminski
068a29952c
Changed AUI toolbars background from gradient to solid
...
Based on patches from Windsor Schmidt <windsor.schmidt@gmail.com>
2017-09-27 23:23:06 +02:00
jean-pierre charras
a43f3ab1fe
replace "BasicShape" by "Primitive" in code, a better name
2017-09-20 12:51:10 +02:00
jean-pierre charras
e2d3fcec02
Add support for custom pad shape. Full support in DRC and PnS.
...
add option to use shape or convex hull as clearance area in zones.
simplify code to handle clearance area
2017-09-19 09:02:53 +02:00
jean-pierre charras
e15acbb00d
Fp editor and board editor have now a separate color setup.
...
fp viewer uses the default colors, because it has no color setup dialog.
class_colors_design_settings: remove not used members.
Fix issue in modedit: the color config was never read.
2017-09-11 18:51:48 +02:00
Maciej Suminski
55c7d9816e
Traverse 3D viewer plugin subdirectories in debug build directory
...
Before the change, the plugins had to be installed to one of the default
search paths, but it should not be necessary for developers working on
3D viewer plugins.
2017-08-21 14:17:01 +02:00
jean-pierre charras
2e96a5bc9f
Pcbnew: fix a crash when editing footprint properties and trying to open the footprint 3D properties.
...
This was due to a missing initialization of the dummy board color settings (used to draw the footprint in the 3D view).
Fixes: lp:1708712
https://bugs.launchpad.net/kicad/+bug/1708712
2017-08-05 16:37:51 +02:00
Tomasz Włostowski
32185ddcd3
Multiple improvements concerning colors, configuration handling and legacy features in pcbnew:
...
- support for background color setting
- removed several global config settings (such as g_Drc_On)
- wrapped most of global config settings in PCB_GENERAL_SETTINGS class
- reorganized PCB general options dialog to clearly mark which options concern only the legacy canvas
- new GAL feature for legacy users: double-click (or E) to change track width available as an option.
Fixes: lp:1530543
* https://bugs.launchpad.net/kicad/+bug/1530543
Fixes: lp:1707145
* https://bugs.launchpad.net/kicad/+bug/1707145
2017-08-04 16:06:57 +02:00
jean-pierre charras
43084daa40
Fix a few doxygen warnings
2017-07-03 10:45:56 +02:00
Maciej Suminski
1e87ae6c50
Fixed a memleak in raytracer
2017-06-27 10:58:43 +02:00
jean-pierre charras
6a3c1720b2
Fix a few doxygen warnings
2017-06-25 11:26:04 +02:00
Tomasz Włostowski
3b16d3cffe
further DLIST/Iterators cleanup, some code formatting
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
94a80acb36
DLIST_ITERATOR improvements
2017-06-23 11:12:36 +02:00
jean-pierre charras
70226ecdeb
Fix a few doxygen warnings
2017-06-20 10:47:30 +02:00
Wayne Stambaugh
66e97fa905
Doxygen comment improvements.
...
Fix lots of Doxygen warnings.
Fix Doxygen comment for IO_MGR::FootprintEnumerate() which was recently
changed.
2017-06-13 19:47:46 -04:00
Kristoffer Ödmark
19d5cc7548
Removed all exception specifiers since deprecated.
...
Exception specifiers are deprecated in cpp11, so went through them all
and removed them from the code.
2017-06-12 13:54:55 -04:00
Simon Richter
d5e85726ea
Doxygen improvements
2017-06-11 18:09:14 -04:00
Simon Richter
a9ca1e9930
Remove unreferenced local variables
2017-06-11 17:52:49 -04:00
Fabrizio Tappero
ac9a64a173
general UI fix. Fixed a lot of icons and a lot of menu.
...
Also a few no longer used .cpp icon files are removed.
2017-06-02 11:51:11 +02:00
jean-pierre charras
200df95f00
fix bug (incorrect validation, on Windows only) in S3D_FILENAME_RESOLVER::ValidateFileName().
2017-05-28 18:56:49 +02:00
jean-pierre charras
1fda668f24
3D viewer: cosmetic enhancements: fix an incorrect icon, and add shortcut keys in right popup menu.
...
Also fix an incorrect legend in hotkey list.
2017-05-26 13:28:51 +02:00
jean-pierre charras
305a166e95
Pcbnew: update immediately the 3D viewer opened from the footprint editor/viewer/wizard after a change.
2017-05-13 08:17:06 +02:00
Cirilo Bernardo
68a7a5235e
Fix 3D plugins mutiarch support.
...
Use CMAKE_INSTALL_LIBDIR instead of wxStandardPaths::GetPluginsDir() to
determine plugin directory.
Fixes lp:1682812
https://bugs.launchpad.net/kicad/+bug/1682812
2017-04-18 09:11:53 -04:00
jean-pierre charras
6eb2000b69
fix Coverity warning (CID 151565) (CID 155147)
2017-04-01 20:05:33 +02:00
Jon Evans
3ec28e2acf
Refactor layer enumerations to all live in the same place
2017-03-30 16:01:48 -04:00
jean-pierre charras
68b141dcb8
Make polygon built by BOARD::GetBoardPolygonOutlines strictly simple.
...
It fixes issues in 3d viewer (crashes and incorrect 3D board outline in some cases)
Fixes: lp:167484
https://bugs.launchpad.net/kicad/+bug/1674844
2017-03-23 08:56:52 +01:00
jean-pierre charras
05220a86f1
BOARD::GetBoardPolygonOutlines(): do not generate a separate SHAPE_POLY_SET for holes.
...
They are already managed by SHAPE_POLY_SET board outline.
2017-03-22 11:47:03 +01:00
Kristoffer Ödmark
d6dd176aca
Changed default increment values and added shift+scroll for fine tuning
...
Fixes: lp:1669550
* https://bugs.launchpad.net/kicad/+bug/1669550
2017-03-13 11:25:40 -04:00
jean-pierre charras
bbedad3456
Fix a Coverity warning, which looks like a (minor) bug in ccontainer2d.cpp.
2017-03-13 12:53:01 +01:00
Maciej Suminski
14cbdcec1f
Fixed mismatched new[]/delete in 3D viewer
2017-03-08 09:12:16 +01:00
Cirilo Bernardo
68bcdec87e
Workaround for non-ASCII filenames in Windows
2017-03-03 14:30:47 -05:00
Kristoffer Ödmark
49c7400ca9
Reallow large scaling of 3D models
...
Fixes: lp:1669510
* https://bugs.launchpad.net/kicad/+bug/1669510
2017-03-03 10:30:09 -05:00
Maciej Suminski
1dfd74bec9
Display S3DSG in single line during CMake configuration step
2017-03-03 13:38:12 +01:00
Kevin Cozens
458b0e75e0
Prevent raytracing render engine option from crashing the 3D viewer
...
Fix for lp bug #1667722 using a change made by Mario Luzeiro.
Fixes lp:1667722
https://bugs.launchpad.net/kicad/+bug/1667722
2017-03-01 18:34:19 -05:00
Simon Richter
70b3edd06f
Drop unnecessary and possibly harmful optimization setting
...
Using -O3 is default for release builds with gcc/clang anyway, so this
doesn't gain anything, but overwriting the existing flags might remove some
that might be needed.
2017-02-23 14:44:15 -05:00
Maciej Suminski
0dc88bb4cf
Changed COLOR4D defines to static consts
2017-02-22 17:35:00 +01:00
Jon Evans
a52250a91e
Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support
...
eeschema now supports arbitrary colors for all object types, and
pcbnew does in GAL canvas. When switching from GAL to legacy canvas,
pcbnew will convert colors to the nearest legacy color.
2017-02-22 17:35:00 +01:00
Cirilo Bernardo
2b2b73ee4b
Fix bug: Footprint add 3D shape recognizes only files with lower case ext on Windows
...
Fixes: lp:1659027
https://bugs.launchpad.net/kicad/+bug/1659027
2017-02-22 10:22:33 +01:00
John Beard
a8eea6155a
Move bitmaps.h out of base_struct.h
...
bitmaps.h was included in nearly every file in the project due to it
being included by base_struct.h
Only about 130 files actually use the XPM definitions defined there, and
many of those already included bitmaps.h themselves, or via
menu_helpers.h. However, touching bitmaps.h would result in over 400
rebuilt files for pcbnew alone.
This commit moves the bitmap-related types like BITMAT_DEF out to a new
header, which is still included by base_struct.h, which is less
avoidable for now, it's it's used in the interface.
The icon list is still in bitmaps.h. This has the side effect that's
it's now easier to automatically generate this file.
Many classes in pcbnew and eeschema needed some functions moved
to the implementaitons from the headers too.
2017-02-21 09:50:15 -05:00
jean-pierre charras
1e242f3710
Remove a #define used in a debug session, and now useless in panel_prev_model.*
2017-02-19 08:30:34 +01:00
Mario Luzeiro
2a793cc22c
Remove mm_malloc from raytracer
...
There is no need to use mm_malloc at this moment. Explanation:
1) It was planned that there was advantadge to use aligned memory but it
was not measured the performance. 2) aligned memory is needed for use
with SIMD (i.e: SSE) but that is not used at moment.
Fixes: lp:1626278
https://bugs.launchpad.net/kicad/+bug/1626278
2017-02-13 10:08:20 -05:00
jean-pierre charras
9074c57a28
panel_prev_model.cpp: try a better way to fix issue with wxSpinButtons on Linux.
2017-02-07 11:05:08 +01:00
jean-pierre charras
fec02f6161
panel_prev_model.cpp: Fix a minor issue on Linux with wxSpinButtons.
...
The min and max values must be set, and the curr value forced to 0, to avoid disabling up or down arrows.
2017-02-07 10:26:03 +01:00
jean-pierre charras
42c9e4d602
panel_prev_model.*: fix minor issues.
2017-02-07 09:06:43 +01:00
jean-pierre charras
cca0ffed60
panel_prev_3d: Add spin buttons and inc/dec by mouse wheel for 3D parameters
2017-02-07 09:06:43 +01:00
jean-pierre charras
43cb4560bf
Rewrite code for PANEL_PREV_3D because the way events were previously managed are not compatible with a good mouse event management.
...
To avoid a lot of tedious code, wxFormbuilder is used to create the PANEL_PREV_3D_BASE class.
2017-02-07 09:06:42 +01:00
Forrest Voight
bce04c930d
3d-viewer: draw dimension graphics
...
Fixes: lp:1406754
* https://bugs.launchpad.net/kicad/+bug/1406754
2017-02-01 09:45:32 -05:00
Mario Luzeiro
840bcb5189
3D-Viewer: improvements on reflections and on plastic normal texture
...
+ make the number of samples for reflection and refraction
parameterizable.
+ add some fuziness to reflection.
+ improvements on plastic normal texture
2017-01-26 07:22:46 -05:00
Dick Hollenbeck
0c459ced97
EDA_TEXT object refactor.
...
Make all EDA_TEXT data private and rename accessors to avoid function
name collisions in derived classes.
Overload EDA_TEXT's SetTextAngle() and SetEffects() in TEXTE_PCB.
Add support for preserving Reference text position, size, orientation
during a netlist import into a BOARD, as well as the one off footprint
update dialog.
2017-01-25 08:03:32 -05:00
Mario Luzeiro
33449216b5
3D-Viewer: Improvements on reflection and refraction
...
- crete an option for absorvance (works better to make the epoxy
different for regular transparent materials).
- visual fix an issue related with the epoxy render (square bands on the
render).
- fix a reflection issue (it was not take in account the reflection
material color).
2017-01-21 09:21:44 -05:00
Mario Luzeiro
2eb840b2ed
3D-Viewer: Fix precision issues (experienced on isometric mode) in frustum tests
2017-01-18 18:09:27 -05:00
Baranovskiy Konstantin
3dc2050498
Improved MousewheelPAN mode.
2017-01-17 16:34:11 -05:00
Simon Wells
19512b46a3
Fix unlimited zoom with "Use touchpad to pan"
...
Additionally, fix an unreported bug allowing zoom level to get stuck at
MAX_ZOOM.
Fixes: lp:1625754 (3dviewer zoom not limited with Use touchpad to pan)
https://bugs.launchpad.net/kicad/+bug/1625754
2017-01-14 09:17:56 -05:00
jean-pierre charras
d56a49d218
Performance counter rework: More comments, code cleaning, and move GetRunningMicroSecs() prototype from common.h to profile.h.
...
profile.h should now contain all info for profiling.
2017-01-02 13:49:36 +01:00
Chris Pavlina
6078ca85e5
Improve broken edge outline error message
2016-12-29 12:31:12 -05:00
Mario Luzeiro
d365dc590e
Soft plastic textures even more
2016-12-22 16:18:38 -05:00
Mario Luzeiro
b33e42ef2c
Soft plastic textures
2016-12-22 16:18:30 -05:00
Mario Luzeiro
ad2458056a
Improvements on 3DViewer raytracing render
...
+ Implement sRGB to Linear and Linear to sRGB conversions.
+ Fix an issue in the AntiAliasing adaptive logic.
+ Improves the ambient color use on the shader.
+ Improves post-shader calculation. Fixes the saturated dark regions.
+ Improves the transparency of soldermak material.
2016-12-22 16:18:20 -05:00
Chris Pavlina
4c340cefee
Also rename footprint attributes in 3D viewer
...
Follow-up to commit: 809e71a
2016-12-15 14:48:14 -05:00
Mario Luzeiro
86dcfeb69d
improve anti-aliasing
...
+re-implement anti-aliasing, making it more acurate, not blured, better
and much faster (unsing much less lines of code)
+rewrite some function on camera and raypacket.
+small improvements on raytracing realtime, remove useless ifs
comparisons.
2016-10-27 10:22:21 -04:00
Simon Richter
6000336fe7
Add missing include
...
std::iota is defined in <numeric>
2016-10-10 19:44:46 -04:00
Mario Luzeiro
6d27087053
Improve board texture (make it square), add directional light to top/bot.
2016-10-09 11:34:28 -04:00
Mario Luzeiro
f59bde8cc3
Improve brushed and plastic textures
2016-10-09 11:34:20 -04:00
Mario Luzeiro
ae8c62843e
Raytracing: implement brushed metal perturbator
2016-10-09 11:34:09 -04:00
Mario Luzeiro
995fde8d9c
(forget to staged modified files)
2016-10-09 11:33:53 -04:00
Mario Luzeiro
8493a2f6d5
Raytracing: implement textures based on normal perturbation
...
Implement normal perturbation for black epoxy and color plastic.
Fix some UI issues in 3D-Viewer (menu options was not proper saved or
updated)
2016-10-09 11:33:25 -04:00
Mario Luzeiro
ee71875b4b
Implement normal perturbation materials on raytracing
2016-10-09 11:33:16 -04:00
Mario Luzeiro
89bb47ede6
Improve shadow on postshader and add a gamma sRGB color space convertion
2016-10-09 11:33:09 -04:00
Mario Luzeiro
49dce5d191
Improve shadow calculation on Raytracing
...
Makes it not so dark.
Speed optimization on post shader calculation.
2016-10-09 11:32:59 -04:00
Chris Pavlina
278ee7da7d
Remove deprecated 'register' storage spec
2016-09-30 22:32:24 -04:00
Chris Pavlina
b9abcc309f
Fix Validate hiding overloaded virtual in 3D viewer dialog
2016-09-30 22:32:24 -04:00
Simon Richter
59c81976dc
Explicitly mark overriding functions.
2016-09-24 14:53:15 -04:00
Cirilo Bernardo
d3771d53ef
Updated VRML exporter and fixed some VRML related bugs
2016-09-21 09:31:52 -04:00
José Ignacio Romero
cd976d36b7
Use a symmetrical clip plane for the orthographic projection
2016-09-07 01:12:01 -04:00
José Ignacio Romero
df40159ce7
Pixel perfect panning for the 3D viewer
...
Use the correct math to unproject the mouse movement from screen space
to the Z=0 plane on the camera space. This handles both perspective
and orthographic projection at any window size or zoom level.
2016-09-06 20:10:51 -04:00
Chris Pavlina
378def4734
3D viewer: suggest correct extension when saving image
...
Fixes: lp:1620102
* https://bugs.launchpad.net/kicad/+bug/1620102
2016-09-06 01:15:59 -04:00
Chris Pavlina
20aca7d7bb
Fix direction of ctrl+scroll in 3D viewer
...
Fixes: lp:1620453
* https://bugs.launchpad.net/kicad/+bug/1620453
2016-09-06 00:48:27 -04:00
Chris Pavlina
9740d5e433
Fix nonstandard, unsigned OpenMP loop counter
...
OpenMP does not yet permit unsigned loop counters. Most compilers seem
to allow them anyway, but a few have been seen to complain.
Mistake introduced in:
commit 82ed0fde32
Author: Chris Pavlina <pavlina.chris@gmail.com>
Date: Sun Aug 28 02:05:49 2016 -0400
Fix shared data access in raytracer, tidy up render loop
2016-09-04 21:41:09 -04:00
Wayne Stambaugh
cbcb3b896b
Fix incorrect string translation macros.
...
* Replace _T() with _() for translatable strings.
* Don't translate debug messages.
* Don't translate copyright symbol.
2016-09-03 12:10:49 -04:00
Chris Pavlina
82ed0fde32
Fix shared data access in raytracer, tidy up render loop
...
Render loop lost track of which blocks had been rendered due to a
synchronization issue. Specifically, std::vector<bool> is special-cased
as a bitfield and so is pretty much guaranteed not to be atomic unless
synchronized externally.
Also:
- Clean up types of a few variables
- Clean up openmp sharing type of variables (may result in better
optimization)
- Replace shared rendered block count with an openmp reduction (results
in fewer locks)
Fixes: lp:1608289
* https://bugs.launchpad.net/kicad/+bug/1608289
2016-08-28 02:13:55 -04:00
jean-pierre charras
9f46d83175
Gerbview: locate item now does not take in account not visible layers. Remove an unused file
...
3d viewer: Remove a few ToUTF8() bad usage (replaced by GetData() )
2016-08-19 09:45:59 +02:00
jean-pierre charras
3f1a90c8a4
3D viewer; Fix a few incorrect use of ToUTF8() in log and error messages. Only noticeable when messages contain non ASCII7 chars.
2016-08-17 09:37:51 +02:00
jean-pierre charras
7bc8cb56e0
Fix bug: Impossible to rescale 3D models
2016-08-05 21:30:23 +02:00
jean-pierre charras
f029047a97
Uncrustify cbbox_ray.cpp to avoid a lot of warnings on gcc 6.1
2016-07-27 14:52:04 +02:00
Mrio Luzeiro
d8eab321f7
3D Viewer: complete refactor of the 3D viewer.
...
* Split and rewrite the preview window and canvas.
* Create a new class for handling the board information.
* Adds new render targets: openGL, legacy, and ray tracing.
* Render targets take full advantage of the new 3D plugins system and 3D cache
for a fast 3D model loading.
* Faster board loading.
* New OpenGL render is faster than the old one.
* New ray tracing render target with a post processing shader.
* Use of new 3D plugins (WRL, X3D, STEP and IGES) and 3D model caching.
* Preview of 3D model while browsing the file name.
* 3D preview of the footprint while adding / align 3D shapes.
* Render of 3D models according to attributes: Normal, Normal+Insert, Virtual.
* Pivot rotation centered in one point over the PCB board.
* Shortcuts keys improved for XYZ orientation..
* Animated camera.
2016-07-19 13:35:25 -04:00
Jon Neal
1293d04a7a
Fix a bunch of misspellings of length.
2016-07-10 23:09:18 -04:00
jean-pierre charras
1fbb84fd98
Move call of SetSizeHints in dialogs in a wxInitDialogEvent event, because some widgets sizes are not fully initialized before this event.
...
It is especially true in some Window Managers like KDE, but can be true in any WM, when initializations are mage by TransferDataToWindow() method.
2016-07-02 14:44:36 +02:00
Simon Richter
da5699de0a
Replace boost::shared_ptr with std::shared_ptr.
2016-06-29 11:09:55 -04:00
Cirilo Bernhardo
c11b0cef99
3D Viewer: change 3D model cache path.
...
* Use platform cache path insted of the KiCad configuration path to write the
3D model cache.
* OSX: ${HOME}/Library/Caches/kicad/3d
* Linux: ${XDG_CACHE_HOME}/kicad/3d or ${HOME}/.cache/kicad/3d
* Windows: AppData\Local\kicad\3d
2016-06-21 14:02:04 -04:00
jean-pierre charras
7abf006c80
Very minor fix: fix shadowed local vars.
2016-06-15 10:27:24 +02:00
Maciej Suminski
b82ccc3b4e
Reverted 6912 with minor changes (LockCtx requires to specify canvas that locks a context).
2016-06-13 16:43:33 +02:00
jean-pierre charras
1c838ba92f
Slightly modify a declaration to make compil compatible with gcc 4.8.4, used in Ubuntu 14.04 LTS (the latest LTS currently available), and to avoid many bug reports.
2016-06-13 14:19:47 +02:00
jean-pierre charras
688fb5caaa
Minor enhancements in dlg_3d_pathconfig (better look, but not perfect). Also fix an issue: the minimal dialog size was not always calculated.
2016-06-13 12:41:27 +02:00
Cirilo Bernardo
b09f079ab4
3D file name resolver improvements.
...
* Add a Help button and text to the 3D alias configuration dialog
* Display KISYS3DMOD and internally defined KiCad path env vars
* Add a button to bring up the "Configure Paths" (env vars) dialog
* Remove the file name mapping feature from the resolver; this results in
the resolver always using the current definition rather than a possibly
outdated cache value.
2016-06-12 18:46:00 -04:00
Mário Luzeiro
f25d12f571
Footprint 3D properties dialog panel: fixes a bug on the offset of 3D Settings (Footprint) (the value range of the offset parameters were not set so it was not able to enter values <-10)
...
Also make some small layout changes on the orientation parameters in order to make it vertical smaller.
2016-06-09 14:27:58 +02:00
Cirilo Bernardo
e0a7f0041a
Better 3D filename resolution
2016-06-09 07:48:49 +02:00
Maciej Suminski
71aade6b51
Fixed a few warnings (mostly gcc6 -Wmisleading-indent).
2016-06-07 14:42:42 +02:00
Maciej Suminski
b83c148e10
Delete OpenGL context on GLCanvas subclasses destruction.
2016-06-03 15:46:13 +02:00
Maciej Suminski
94a460080e
Added missing code for C3D_MODEL_VIEWER to use GL_CONTEXT_MANAGER.
2016-06-03 15:46:12 +02:00
Maciej Suminski
01f32dd52c
GL_CONTEXT_MANAGER class to avoid unexpected GL context switches.
2016-06-03 15:46:12 +02:00
Wayne Stambaugh
42b659efe1
Fix build error on non-debug builds.
2016-06-01 16:58:27 -04:00
jean-pierre charras
0a6245e5cc
Remove not working bom_cvs.xsl file. Fix minor compil warnings in x3dmodelparser.cpp.
2016-06-01 18:42:01 +02:00
jean-pierre charras
a4658ab6be
Fix a few compil warnings (not used vars, shadowed local vars)
2016-06-01 14:22:05 +02:00
Cirilo Bernardo
34f223a707
Fix FP Editor : Invalid Filename Err.msg message wheb trying to edit a 3D filename
2016-05-30 10:22:19 +02:00
Simon Richter
48ad75719c
Remove redundant old copy of cimage class (3d-viewer/CImage.cpp and 3d-viewer/CImage.h)
2016-05-30 08:31:32 +02:00
jean-pierre charras
f1c9f284fd
Dialog 3D path config: fix incorrect grid cells sizes when opening the dialog, and incorrect min size dialog.
2016-05-28 11:33:20 +02:00
jean-pierre charras
3c0859686b
Gerbview: fix a stupid mistake I made in rev 6829 (crash when reading a gbr file). 3d path config dialog: make it resizable.
2016-05-26 18:58:32 +02:00
jean-pierre charras
dbb78db7ef
Gerbview: Shows now in the Layer manager the filename of gerber or drill files loaded.
...
A fex minor compil warnng fixes
2016-05-23 17:47:16 +02:00
Chris Pavlina
5904e4c942
Correct handling of unused parameter
...
Coverity: CID 143742
2016-05-10 23:25:53 -04:00
Chris Pavlina
05255cbae8
Clean up dodgy array dimension
...
Array is in pairs but has a single sentinel, trips up Coverity (CID 147346) and
does allow an out-of-bounds write if WX_GL_SAMPLES were ever removed from the
array.
2016-05-10 23:15:33 -04:00
Chris Pavlina
ec67218b5a
Remove unneeded 'new' and NULL check
...
Coverity CID: 143743
2016-05-10 22:36:44 -04:00
Maciej Suminski
d8ca03b362
3D viewer: set right OpenGL context before freeing memory.
2016-05-09 17:59:59 +02:00
Maciej Suminski
da312db7a4
Fixed a wxWidgets assertion. Newer wxWidgets (3.1) display a message saying that horizontal alignment flags are ignored with wxEXPAND.
2016-05-02 15:56:12 +02:00
Matthew Petroff
db54f3e7a7
Correct multiple UI spelling errors
2016-05-02 10:01:43 -04:00
unknown
ce331b03e8
3D_cache/cmakelists.txt: Don't clear CMAKE_CXX_FLAGS compiler flags
2016-05-02 11:45:23 +02:00
jean-pierre charras
d7f1400e44
Make strings only used in debug mode not translatable.
2016-04-21 09:19:08 +02:00
Cirilo Bernardo
6120472d60
3D file name resolver improvements.
...
* Paths defined via pcbnew->Preferences->Configure Paths are now included in
the 3D file browser's drop-down list except for KICAD_PTEMPLATES, KIGITHUB,
KISYSMOD, any paths resembling a URL, and any non-existent paths. When an
absolute path is shortened using one of these path aliases, let's say
'KISYS3DMOD' then the name appears in the pcb file as "${KISYS3DMOD}/blah.wrl".
If a user defines and actual environment variable with the same name, then
that user defined variable will have precedence over the internally defined
variable.
* Paths relative to the current project directory are no longer represented
as "some/path/to/file.wrl". For compatibility with previous KiCad versions
it shall always be stored as ${KIPRJMOD}/some/path/to/file.wrl.
* Various restrictions on alias path values have been removed since the
imposed restrictions could result in corrupted user data as aliases are
silently dropped.
* Overall the patch should improve back-compatibility by providing a ${ENV_VAR}
mechanism for supporting different model root directories and ensuring that
paths relative to KIPRJMOD are expressed in a way that is compatible with
earlier KiCad versions. This allows users more flexibility and the ability
to work in a way that ensures 3D model files can be correctly resolved in
earlier versions of KiCad. Users who do not care about back-compatibility
may prefer to use the newer alias system.
2016-04-17 18:35:32 -04:00
Cirilo Bernardo
28d49b6589
fix race condition related to 3D cache and resolver
...
The attached patch fixes a segfault due to a race condition.
If a user starts eeschema with an empty sheet and clicks
the 'cvpcb' button, memory is corrupted and the program
segfaults. The issue appears to arise from multiple threads
accessing the 3D cache and resolver. This patch makes
relevant code thread-safe by using a wxCriticalSection.
2016-04-10 23:03:39 -04:00
jean-pierre charras
c146cc09eb
Kicad: fix a crash when changing a project, if pcbnew was run and "Update PCB from Schematic" was run and Schematic editor never opened.
...
(In this case the schematic frame exists, but some members are not initialized as expected, and a crash happens when calling the schematic editor dtor)
Minor other fix: avoid multiple very similar strings to translate in 3d_filename_resolver.cpp
2016-04-08 14:11:05 +02:00
Cirilo Bernardo
973786d75d
Fix 3D Coverity issue, other minor fixes
...
* CID 143740: Null pointer dereferences (NULL_RETURNS)
A few minor cut/paste and style issues in the 3D code are also fixed.
2016-04-07 18:54:14 -04:00
Simon Richter
6a65341599
3D: Make file test more portable
2016-04-06 22:41:24 -04:00
Mário Luzeiro
ffc7740cc2
3D: fix bounding box assert and include order
2016-04-06 21:48:51 -04:00
Cirilo Bernardo
c2a60d14d7
3D: fix issues reported by Coverity scan
...
*** CID 143752: Incorrect expression (USELESS_CALL)
*** CID 143751: Incorrect expression (UNUSED_VALUE)
*** CID 143749: Uninitialized members (UNINIT_CTOR)
*** CID 143748: Uninitialized members (UNINIT_CTOR)
*** CID 143747: Uninitialized members (UNINIT_CTOR)
*** CID 143746: Uninitialized members (UNINIT_CTOR)
*** CID 143745: Uninitialized members (UNINIT_CTOR)
*** CID 143744: Uninitialized members (UNINIT_CTOR)
*** CID 143740: Null pointer dereferences (NULL_RETURNS)
*** CID 143739: Memory - corruptions (MISMATCHED_ITERATOR)
*** CID 143735: Integer handling issues (CONSTANT_EXPRESSION_RESULT)
*** CID 143734: Error handling issues (CHECKED_RETURN)
2016-04-06 21:41:52 -04:00
Cirilo Bernardo
e1b308b3b1
fix segfault in python scripting caused by new 3D code
...
The attached patch ensures the S3D_MASTER class does not cause
a segfault in pcbnew when used from Python scripting.
The issue is due to an "extern KIWAY* TheKiway" which was exposed
to allow S3D_MASTER to use the new resolver to handle 3D filenames.
Unfortunately TheKiway cannot be assigned a value until a window is
created which implements Kiway. The change introduced by this
patch should not alter the behavior of S3D_MASTER compared to
the behavior before the 3D merge.
The extern variable is only there to support S3D_MASTER which in
turn is there to support the current 3DViewer. In the planned software
structure the rather complex S3D_MASTER class is replaced with
a simple struct which only holds the model name and position/
orientation/scale data as stored in the PCB file; since the replacement
does not perform filename resolution there is no need to expose the
Kiway. For example in Mario's branch we removed the extern and
S3D_MASTER class many months ago.
2016-04-05 20:32:50 -04:00
jean-pierre charras
d18cdf1c53
merge 3d_initial_merge branch
2016-04-05 19:56:01 +02:00
Cirilo Bernardo
20b40aba1c
Fixed bad delete/delete [] invocations and other warnings and errors as suggested by cppcheck
2016-04-05 20:32:22 +10:00
Cirilo Bernardo
80f8e74797
Make changes to GLM header includes as per suggestions by Mario Luzeiro
2016-03-21 18:39:25 +11:00
Cirilo Bernardo
10c8a57c59
Fixed timestamp checking code to use canonical filename
2016-03-21 07:21:54 +11:00
Cirilo Bernardo
aa16666d72
Added file modification check to model cache code
2016-03-20 11:45:55 +11:00
Cirilo Bernardo
491e0250c0
Suppress dialog pop-up when 3D file resolver does not find a file
2016-03-15 11:39:28 +11:00
Cirilo Bernardo
a30151231f
Fix invocation of glm::cross and glm::normalize
2016-03-15 11:38:55 +11:00
Cirilo Bernardo
30f9aba7c9
Work on SG consistency checks: fixed a number of bugs and improved integrity checking when writing cache files
2016-03-14 12:30:59 +11:00
Cirilo Bernardo
0085d1aea7
Fixed unsigned vs signed int comparisons
2016-03-11 09:37:39 +11:00
Cirilo Bernardo
862cd7e5a4
Fix event processing on C3D_MODEL_VIEWER to allow click-to-focus
2016-03-02 12:29:20 +11:00
Mário Luzerio
d4655020f9
Fix zoom issue on MSWin (wxCanvas requires focus)
2016-03-02 07:50:32 +11:00
Cirilo Bernardo
d0a2080823
Merge with main branch r6601
2016-03-01 11:44:15 +11:00
Bernhard Stegmaier
5b0a250609
Fix compilation and install for OSX plus general code cleanup
2016-03-01 10:08:19 +11:00
Bernhard Stegmaier
04000883f3
Fix 3d-viewer regressions introduced by touchpad-panning for non-touchpad-panning.
...
* Fix broken horizontal scrolling with ctrl-wheel
* Restore previous step size
2016-02-26 17:19:22 -05:00
Cirilo Bernardo
0b18af3fdb
Changed resolver failure message to use wxLogMessage instead of wxMessageBox
2016-02-26 15:18:59 +11:00
Cirilo Bernardo
37c85113ee
Changed resolver failure message to use wxLogMessage instead of wxMessageBox
2016-02-26 15:16:55 +11:00
Cirilo Bernardo
097ac3a6b7
Changed resolver failure message to use wxLogMessage instead of wxMessageBox
2016-02-26 15:14:20 +11:00
Cirilo Bernardo
e7c32873ea
Remove bad default behavior of adding current working dir to default search path
2016-02-25 14:31:59 +11:00
Cirilo Bernardo
b2bdca4b7b
Remove wxASSERT in new cbbox code which was a nuisance to the legacy 3DViewer
2016-02-25 09:52:00 +11:00
Bernhard Stegmaier
f8abe9c191
Add support for optional touchpad panning.
2016-02-24 14:53:02 -05:00
Cirilo Bernardo
5306db0c98
Added missing include to 3d_plugin_manager
2016-02-24 07:26:58 +11:00
Cirilo Bernardo
9195451e12
Switched SG* classes and plugin loader logging code from stderr to wxLogTrace
2016-02-23 17:46:22 +11:00
Cirilo Bernardo
d051a8f47e
Changed IFSG* log reports from stderr/stdout to wxLogTrace
2016-02-23 16:28:41 +11:00
Cirilo Bernardo
c98ebdb8f0
Changed 3d_cache log reporting from stderr/stdout to wxLogTrace
2016-02-23 14:33:24 +11:00
Cirilo Bernardo
2f8c55cd99
Fixed segfault on getSHA1 (fopen result was not checked)
2016-02-23 11:38:58 +11:00
Cirilo Bernardo
5776037a70
Flush model data upon exit of Footprint Properties dialogs
2016-02-21 11:54:34 +11:00
Cirilo Bernardo
f247b05b3e
Merged Mario's fix to Material + per-vertex colors and transparency
2016-02-16 08:07:17 +11:00
Cirilo Bernardo
a4861a0d64
Sync with main r6555
2016-02-14 09:16:40 +11:00
unknown
450c2e4371
fix Tickness typo
2016-02-11 16:02:37 +01:00
jean-pierre charras
050bdbc772
Pcbnew: minor changes:
...
* Dialog copper zones: Always enable thermal shape settings, because even with no thermal, some pads can use thermal option in local pad settings.
* GAL mode: shows page limits in gray color, like in legacy mode, and according to comments in sources.
2016-02-09 09:23:24 +01:00
jean-pierre charras
711607f152
Fix minor Bug #1542935 (No solder mask unless there is something on the layer)
2016-02-08 14:04:42 +01:00
Cirilo Bernardo
4edce46764
Fixed bug: ambient intensity RGB not correctly written/read
2016-02-07 08:52:42 +11:00
Cirilo Bernardo
99aba8f261
Changed handling of ambientIntensity; change of major version in SG* lib
2016-02-07 08:41:27 +11:00
Cirilo Bernardo
68dde1f16f
Fixed inappropriate model scale limitation in 3D Footprint Properties dialogs
2016-02-04 12:31:37 +11:00
Cirilo Bernardo
86635aeb23
Manually select changes from Mario Luzeiro's branch to fix model lighting in the preview window.
2016-02-04 12:16:19 +11:00
Cirilo Bernardo
bf3d2b252e
Fixed VRML normals calculations
2016-02-03 11:44:48 +11:00
Cirilo Bernardo
8dd744f635
Improved 3D cache manager's ability to replace outdated cache models
2016-01-31 13:21:12 +11:00
Cirilo Bernardo
ece1291d93
Fixed SG* CMake control file to handle new sg_version.h file
2016-01-29 12:00:03 +11:00
Cirilo Bernardo
dddc3d91e9
Cleaned up 3D SceneGraph API by removing references to wxString
2016-01-29 11:52:42 +11:00
Cirilo Bernardo
cd831d9a8a
Removed include directives for wx/wx.h within 3D cache code
2016-01-28 17:12:41 +11:00
Cirilo Bernardo
1028535561
Small improvements to 3D file selector UI
2016-01-26 11:50:01 +11:00
Cirilo Bernardo
fc5556c811
Sync with main branch r6513
2016-01-26 10:35:16 +11:00
Cirilo Bernardo
cb8ccb5882
Small UI improvements
2016-01-25 16:59:45 +11:00
Cirilo Bernardo
cc906ec12e
Removed deprecated header
2016-01-25 15:58:24 +11:00
Cirilo Bernardo
3eca3fe75d
Implemented new 3D file selector with preview
2016-01-25 15:55:36 +11:00
Bernhard Stegmaier
3e2b4244f9
OSX: add support for wxMagnifyEvent on OSX builds using wxWidgets 3.1.0 or greater.
2016-01-24 19:18:29 -05:00
Cirilo Bernardo
ff07ad3f05
Fixed bug: 3D model selector sets scale values to zero
2016-01-24 08:37:28 +11:00
Cirilo Bernardo
20f97f34c3
Temporarily disabled some 3D data transfer code due to cross-platform differences in wxFileDialog
2016-01-23 20:36:39 +11:00
Cirilo Bernardo
31af6d7dbc
Fixed GUI issues related to setting scale/offset/rotation
2016-01-23 20:07:58 +11:00
Cirilo Bernardo
c79cc21396
Fixed syntax problem in MSWin specific code
2016-01-23 16:34:29 +11:00
Cirilo Bernardo
fa37f233ef
Added 'Change' button to 3D file selector to improve UI usability
2016-01-23 16:24:12 +11:00
Cirilo Bernardo
81f95a8dbc
Improve message displayed when resolver encounters a non-existent alias
2016-01-23 16:09:42 +11:00
Cirilo Bernardo
7c829c9e84
Added manual editing of 3D file name with alias tags
2016-01-23 14:52:54 +11:00
Cirilo Bernardo
ab2fff46f1
Added version tag to cache data
2016-01-20 09:07:09 +11:00
Cirilo Bernardo
3a80de107d
+ Improved 3D file resolution behavior with respect to duplicated paths
...
+ Added versioning to the 3D search path configuration file
2016-01-20 08:36:26 +11:00
Cirilo Bernardo
ec9acfd410
+ Changed wxT macro from _T() to _()
...
+ Added hints to 3d_filename_resolver to help transition from
legacy 3D model resolver behavior.
2016-01-19 11:05:40 +11:00
Cirilo Bernardo
d3f68e6482
Fix resolution of paths relative to KISYS3DMOD in legacy support
2016-01-19 10:30:20 +11:00
Cirilo Bernardo
625ce3cb69
Fix accidental application of filters to all cells of 3D search path GUI
2016-01-19 10:11:09 +11:00
Cirilo Bernardo
54940002f9
Implemented 3D search path configuration GUI
2016-01-18 19:53:35 +11:00
Cirilo Bernardo
7848b2a52e
Implemented new 3D searchpath configurator
2016-01-18 16:59:06 +11:00
Cirilo Bernardo
7434e673e1
Fixed bug in VRML coordinate conversion
2016-01-18 10:54:24 +11:00
Cirilo Bernardo
9a0b020806
Added VRML conversion of 'translation' and 'center' to mm on read and 0.1 inch on write
2016-01-18 10:39:51 +11:00
Cirilo Bernardo
ef62a5f153
Ensure consistent use of mm within SG models and that SG models write VRML files using 0.1 inch units
2016-01-18 08:35:29 +11:00
Cirilo Bernardo
9aeaf4a71b
Prevent unresolved path expansions from appearing as blank entries in 3D path list
2016-01-18 08:34:21 +11:00
Cirilo Bernardo
4d5097b41d
Work in progress: preparing new resolver scheme
2016-01-15 14:01:21 +11:00
Cirilo Bernardo
2ed89c29d2
Work in progress: transition to new 3D name resolution with nicknames
2016-01-15 11:28:28 +11:00
Cirilo Bernardo
d519df22ca
Change parameter type to accommodate expected integer range
2016-01-14 13:50:16 +11:00
Cirilo Bernardo
f4414e8325
Change 3D cache manager to use boost SHA-1 digest rather than in-tree MD5
2016-01-14 13:49:40 +11:00
Cirilo Bernardo
81977ed6b7
Finished checking debug/info messages and internationalization where appropriate
2016-01-12 18:03:17 +11:00
Cirilo Bernardo
3a5110f74a
Work in progress: checking debug output messages, internationalizing user info messages
2016-01-12 17:09:04 +11:00
Cirilo Bernardo
f123fab15b
Removed unnecessary platform-dependent includes
2016-01-11 16:25:38 +11:00
Cirilo Bernardo
e0b50b4002
Ensuring consistent internal kicad file separator character on MSWin
2016-01-11 16:24:51 +11:00
Cirilo Bernardo
c81a0d0f2f
Moved data transfer from OnOK to TransferDataFromWindow() and removed all instances of OnOK and OnExit
2016-01-11 16:14:35 +11:00
Cirilo Bernardo
14bee875cf
Replaced platform-dependent dynamic loading code with wxPluginManager
2016-01-11 15:47:08 +11:00
Cirilo Bernardo
2bdc4d770b
Fixed plugin->Load invocation (passed wxString instead of const char*)
2016-01-11 14:04:54 +11:00
Cirilo Bernardo
c24c07962b
Fixed bug in display of Footprint Properties rotation (text too long)
2016-01-08 18:53:45 +11:00
Cirilo Bernardo
87c62b443d
Improved SG* code to avoid spurious warnings when adding child/reference nodes
2016-01-08 17:04:17 +11:00
Cirilo Bernardo
979edc4f9f
Improved VRML1 conformance to spec
2016-01-08 16:23:42 +11:00
Cirilo Bernardo
e8593d177c
Change 'class S3D_INFO' declarations to 'struct S3D_INFO'
2016-01-07 19:54:39 +11:00
Cirilo Bernardo
1b6480e858
Added support for VRML1 transforms (except for MatrixTransform)
2016-01-07 17:01:07 +11:00
Cirilo Bernardo
8a9eb3bbe8
Fixed various bugs in VRML2 and VRML1 code
2016-01-07 11:24:11 +11:00
Cirilo Bernardo
29d7829909
Fix for MSWin (plugins not found)
2016-01-06 20:05:29 +11:00
Cirilo Bernardo
9d55ad375f
Removing redundant sg/ifsg colorindex files and references
2016-01-06 18:19:20 +11:00
Cirilo Bernardo
403cd94edc
Fixed color indexing for VRML2 plugin
2016-01-06 16:51:29 +11:00
Cirilo Bernardo
6f309a46c9
Implemented per-vertex colors for VRML2 and SGNODE
2016-01-06 16:15:54 +11:00
Cirilo Bernardo
6b873ed46b
Work in progress: implementing SG translation for VRML1 models
2016-01-06 15:34:14 +11:00
Cirilo Bernardo
98f867629b
Added debug printouts to help debug plugin search/loading on MSWin
2016-01-06 06:48:27 +11:00
Cirilo Bernardo
c798f8b545
Added support for FreeCAD VRML files
2016-01-04 18:10:15 +11:00
Cirilo Bernardo
97d4c33a9f
Fixed preview pane resizing
2016-01-04 09:15:53 +11:00
Cirilo Bernardo
59cf4c5ed0
+ Fixed calculation of overall transform in SCENEGRAPH
...
+ Fixed NULL dereference bug in VRML2 nodes
2016-01-03 14:55:30 +11:00
Cirilo Bernardo
fad73f0e85
VRML2 3D plugin is now functional
2016-01-02 12:21:02 +11:00
Cirilo Bernardo
b426740195
Removed dead code modules
2016-01-01 16:23:21 +11:00
Cirilo Bernardo
07bd4cbc04
+ Resync with main r6397
...
+ Work in progress: VRML parser
2015-12-22 11:08:39 +11:00
unknown
0ea1c67caf
eeschema plot dialog: cosmetic enhancement:
...
Including the inline of the Output directory and its text field/browse button.
Moving the plot format to the left of the plot options as the plot options depend on the plot format.
2015-12-21 16:08:37 +01:00
jean-pierre charras
a11bbffe9b
Code reorganization, and change the way 3D viewer frame is managed (now using wxWidgets wxWindow::FindWindowByName() to know if it is existing) , to prepare others fixes.
2015-12-21 12:52:00 +01:00
Cirilo Bernardo
70be4e8f7f
+ Reverted accidental edit of sg_node.cpp
...
+ Fixed invocation of SHAPE_POLY_SET::Simplify() to match changes in main
2015-12-19 17:53:07 +11:00
Cirilo Bernardo
2c4b220f3c
Resync with main branch r6383
2015-12-19 15:02:52 +11:00
Cirilo Bernardo
396825d960
Cleaning up in preparation for merge
2015-12-19 14:57:02 +11:00
Cirilo Bernardo
86c54ce636
Modified IDF plugin to support IDF assemblies (*.emn) in addition to component outlines (*.idf)
2015-12-18 19:43:27 +11:00
Cirilo Bernardo
008d8a540a
+ Fixed bug in SGSHAPE::Prepare() : bad assignment of color pointer
...
+ Reworked s3d_plugin_demo2.cpp to use per-vertex-per-face normals
+ Reworked s3d_plugin_idf.cpp to use per-vertex-per-face normals
2015-12-17 13:55:35 +11:00
Cirilo Bernardo
eab70be17b
Changed cache->Prepare() to cache->GetModel()
2015-12-17 09:21:30 +11:00
Cirilo Bernardo
c0fcb15e3a
+ Rework S3D_CACHE::Prepare() to take only a filename and return
...
non-transformed S3DMODEL for rendering.
+ S3D_CACHE now caches S3DMODEL and returns a pointer to a single
instance of the S3DMODEL for repeated calls to Prepare()
+ Beginning the VRML Plugin
2015-12-16 20:01:44 +11:00
Cirilo Bernardo
580f7aecfc
Added model coloring to the IDF 3D model plugin
2015-12-16 15:11:54 +11:00
Cirilo Bernardo
c251fbac75
+ Improved the normals calculations (however it's still buggy)
...
+ Reworked 3D plugins to use normals calculations
2015-12-16 14:25:46 +11:00
jean-pierre charras
178cf0dc25
Polygon calculation (zones filling): use fast mode when possible (in fact most of time) and strictly simple polygon option only in critical cases (in fact in plot Gerber functions mainly).
...
In polygon calculations (combining polygons, fracture) the mode of calculation (fast or strictly simple polygon option) as no more a default value, because choosing the best mode is better to optimize the calculation time.
2015-12-15 21:21:25 +01:00
Cirilo Bernardo
304cd81ebd
+ Bugfix: changed Plugin Loader to expect 'GetPluginVersion' instead of
...
'GetVersion'.
+ Introduced normal calculations. This is buggy due to multiple equal
face normals distorting the vertex normal; this will be fixed by
removing the redundant face normals from the calculations.
2015-12-15 18:53:03 +11:00
Kristian Nielsen
6f4be750b5
Fix GLM 3D viewer build configuration error.
2015-12-14 19:43:00 -05:00
Cirilo Bernardo
1940bd71e4
Resync with main branch + fix MSWin build (accidental inclusion of dlfcn.h)
2015-12-15 10:56:11 +11:00
Cirilo Bernardo
2128594a85
Coding policy fixes: remove trailing white space.
2015-12-14 16:20:54 -05:00
Cirilo Bernardo
f099ae27c5
Feature implementation complete: save and load cache data
2015-12-14 20:15:44 +11:00
Cirilo Bernardo
4924db7491
Bugfix: create 3d config path if nonexistent
2015-12-14 18:41:15 +11:00
Cirilo Bernardo
a2fe783f53
Finished refactor and introduction of generic Plugin scheme
2015-12-14 14:51:28 +11:00
Cirilo Bernardo
3ff8ca0caf
Refactored to use new generic plugin base
2015-12-14 08:45:22 +11:00
Cirilo Bernardo
86042d86a6
Added partial render ability to IDF plugin
2015-12-11 17:37:42 +11:00
Cirilo Bernardo
b46451ec81
Introducing the IDF 3D plugin and reorganizing directories
2015-12-11 08:34:52 +11:00
Cirilo Bernardo
210416aca4
Attempting to improve the file selector path list combo box
2015-12-10 15:02:05 +11:00
Cirilo Bernardo
4e12999fa8
Removed some trailing white space. Fixed FindGLM.
2015-12-10 11:31:44 +11:00
Cirilo Bernardo
ac3acb0061
Moving headers to facilitate support for building 3D plugins out-of-tree
2015-12-09 18:30:48 +11:00
Cirilo Bernardo
a0597c4614
GUI improvements including interactive update of model orientation/position
2015-12-09 16:43:30 +11:00
Cirilo Bernardo
47f40def0c
GUI improvements including control of panel sizes and resizing of GL canvas in preview
2015-12-09 10:38:25 +11:00
Cirilo Bernardo
712f57f002
Re-enabled bounding box display
2015-12-09 09:58:36 +11:00
Cirilo Bernardo
2ba7c05cbf
Resync with main branch and fixed to work with new symbol visibility rules
2015-12-09 09:52:02 +11:00
Maciej Suminski
231eaecf34
Removed the included GLM library, switched to the system one.
2015-12-08 10:56:53 +01:00
Cirilo Bernardo
6e5473f646
Minor fix: remove reference to GLdebug()
2015-12-08 18:56:30 +11:00
Mario Luzeiro
69cc788e8e
+ Removed glm source from kicad tree (Maciej / Cirilo)
...
+ Added renderer for 3D model preview (Mario)
+ Added 3d_cache including name resolver and modifications to 3D model dialogs (Cirilo)
2015-12-08 18:31:57 +11:00
jean-pierre charras
407aa9c586
Very minor fix: a pcbnew option (show page limits) was not stored in user config, and was lost after closing the session.
...
3d-viewer: very minor fix
2015-11-29 07:56:27 +01:00
jean-pierre charras
2afee8fb58
Make translation easier in dialog_create_array_base.
2015-11-22 11:21:14 +01:00
unknown
3e8b4503d1
Try to fix Bug #1458215 (3D viewer plane artifacts on first render)
2015-11-15 18:55:53 +01:00
jean-pierre charras
c877c5ff6e
3D viewer: Fix potential crash risk introduced in rev 6279 (from a coverity warning). Make strings translatable in wx_html_report_panel_base.
2015-10-26 08:46:19 +01:00
unknown
c721c21bdf
3D viewer: Fix bug #1509506 : Crash with MeshLab reduced 3D model.
2015-10-25 19:51:41 +01:00
Wayne Stambaugh
a6a9d8eedf
Default and most recently used path fixes. (fixes: 1494210)
...
* Rename Eda_FileSelector to EDA_FILE_SELECTOR.
* Add optional pointer to wxString to save the most recently used path to EDA_FILE_SELECTOR.
* Rename Eda_DirectorySelector to EDA_PATH_SELECTOR.
* Replace wxGetCwd() with wxStandardPaths::GetDocumentsDir(). This fixes the windows issue
where wxGetCwd() returns the path where the executable files are located.
* Add code to handle most recently used path to EDA_BASE_FRAME.
* Fix string formatting error in kicad/files-io.cpp.
* Remove setting and restoring current working directory when launching GerbView. Setting the CWD
has no effect on the launched executable which starts with it's own CWD.
* Allow project path to be passed to GerbView when launched from KiCad.
* Note: this is a work in progress. Do not expect every path and/or file selection dialog to properly
update the most recently used path. The correct solution to this problem requires a much more
well though out solution which will not happen until after the next stable release.
2015-09-25 15:38:09 -04:00
jean-pierre charras
37c8462c8b
3D viewe: Very minor fixes in 3D Display Options dialog.
2015-09-15 20:47:20 +02:00
Wayne Stambaugh
0493148df6
3D Viewer: minor menu string improvements. (fixes lp:1495935)
2015-09-15 13:35:26 -04:00
jean-pierre charras
156d5f50d6
fix unwanted foreground frame change on Windows when creating BOM and netlists from scripts.
...
Very minor coverity warning fixes.
2015-08-28 16:15:45 +02:00
jean-pierre charras
4fc230b773
Rework on Enum PAD_SHAPE_T, PAD_DRILL_SHAPE_T and PAD_ATTR_T (see rev 6008) : the new and better names are now used in Kicad code and existing python scripts.
...
PAD_SHAPE_T and PAD_ATTR_T still have a double definition (new names and old names) to be sure python scripts are nor broken by the change.
PAD_DRILL_SHAPE_T does not have a double definition, because it is unlikely oblong holes are used in python scripts.
Double definitions will be removed in the (next) future.
2015-08-23 21:40:33 +02:00
jean-pierre charras
eb71c15b46
3D viewer: Minor enhancement: in show on/off layers menu option, user layers options are disabled in realistic mode to avoid mistakes, because they are never shown in this mode.
2015-08-18 12:59:43 +02:00
jean-pierre charras
c63f6aa3c5
Polygon boolean operations on SHAPE_POLY_SET: Add a parameter (aFastMode) to speed up calculations. By default, the transforms use an option to create stricly simple polygons.
...
In 3D viewer, this option can take a *very long* calculation time (minutes instead of seconds, or hangs) and they are now using aFastMode = true to do polygon calculations, especially for zones inside zones belong to the same net but having different priority (which creates weak polygons).
aFastMode = false is the default for other calculations (zone filling) as before.
2015-08-16 14:07:58 +02:00
jean-pierre charras
5ba6cb975b
3D viewer: a few optimizations to speed up scene building, and better look of circles in footprint outlines.
2015-08-11 13:56:02 +02:00
jean-pierre charras
7a51a502b4
3D viewer: optimizations in code to build the 3D view.
...
Remove no more used code.
Building the 3D view is now faster.
2015-08-10 17:17:10 +02:00
jean-pierre charras
8174e1aefd
3D viewer: speed up the silkscreen layer generation (not perfect, but it help).
2015-08-02 20:59:29 +02:00
Tomasz Wlostowski
1d7e49a45c
SHAPE_POLY_SET::Inflate(): correct arc approximation for negative offsets (deflation). Control circle->segments count explicitly in all Inflate() calls
2015-07-27 21:46:47 +02:00
Tomasz Wlostowski
63b35f40a7
Removed all dependencies on boost::polygon except for bitmap2component. Replaced almost all instances of CPOLYGONS_LIST with SHAPE_POLY_SET.
2015-07-27 21:45:57 +02:00
unknown
a30a2d72e8
3D viewer: Add icons in file menu
2015-07-27 17:01:35 +02:00
unknown
8b18f5118c
3D viewer: cosmetic modification: use blue color for Z axis and Green color for Y axis
2015-07-26 14:35:27 +02:00
unknown
eda130dbc6
3D viewer: cosmetic enhancement: color of 3D axis is equal to the color of the corresponding icon in toolbar
2015-07-26 13:35:05 +02:00
jean-pierre charras
9b9c7945a2
Many minor fixes (like bug #1477213 ). Better help in dialog environment variables editor (the tooltip was never shown on Windows)
2015-07-24 12:23:34 +02:00
Maciej Suminski
d2ebf688f9
Reverted commits that remove boost::polygon dependency (need more testing).
2015-07-14 22:23:13 +02:00
Tomasz Wlostowski
9f18e5a98f
SHAPE_POLY_SET::Inflate(): correct arc approximation for negative offsets (deflation). Control circle->segments count explicitly in all Inflate() calls
2015-07-14 15:05:41 +02:00
Tomasz Wlostowski
41c753b05d
Removed all dependencies on boost::polygon except for bitmap2component. Replaced almost all instances of CPOLYGONS_LIST with SHAPE_POLY_SET.
2015-07-14 13:36:24 +02:00
Tomasz Włostowski
24170f5588
Fixes to SHAPE_POLY_SET slitting/fracturing algo, some speed optimization.
2015-07-06 15:15:48 +02:00
jean-pierre charras
c1bbf3ecb4
Temporary back to boost::polygon in 3d-viewer. Fix an assert warning in hashtables.h, when a wxString contains non basic ASCII chars (Bug #1470078 ).
2015-07-04 21:53:37 +02:00
jean-pierre charras
b9f1ada90b
Use Clipper lib in 3D viewer, in calculations that crashed the 3D viewer when using boost:: polygon. Work in Progress.
2015-07-04 18:38:08 +02:00
unknown
71b3125d8e
Cleanup: remove unnecessary macros EXCHG and NEGATE. add MIRROR macro.
2015-06-26 15:41:56 +02:00
jean-pierre charras
7c8c1d4954
Minor fix and cleanup. 3D viewer: modify the status bar. (Should be enough to avoid the bug #1467111 ).
2015-06-21 20:21:20 +02:00
jean-pierre charras
fe7bc2784a
Eeschema, select component dialog: speed up (up to 20 to 30 times) the tree rebuild process, when the filter is used.
...
3d_draw_helper_functions.cpp: minor cleanup, and fix a very minor issue in 3D grid.
2015-06-20 11:19:57 +02:00
unknown
fe6cf2f5f8
3d-viewer: Fix a regression: grid was not updated ( now updated by calling CreateDrawGL_List )
2015-06-19 11:06:52 +02:00
jean-pierre charras
e0e69498e2
3D viewer, color selection: fix a minor bug and add more board body colors in preselection
2015-06-17 17:17:34 +02:00
jean-pierre charras
6c42987842
Refinements in 3D viewer, color selection: better icons and adding board body color selection
2015-06-17 14:59:41 +02:00
jean-pierre charras
f8275943e8
3D color selection : clean code. Add solder paste color selection
2015-06-17 11:06:39 +02:00
jean-pierre charras
1b2bf516a3
Add icons in 3D viewer for silkscreen, solder mask and copper color selection.
2015-06-16 20:14:57 +02:00
jean-pierre charras
d0daa2cab7
Add color selector in 3D viewer for silkscreen, solder mask and copper.
...
Remove unused or duplicate icons.
2015-06-16 20:04:02 +02:00
Tomasz Wlostowski
b562cfb8bb
WX_HTML_REPORT_PANEL: a REPORTER widget on steroids.
2015-06-16 14:20:42 +02:00
Wayne Stambaugh
63c978d987
3D viewer save image improvements.
...
* Set initial path to the current project path.
* Remember user selected path and file name between saves.
* Prompt user when over writing existing files.
2015-06-10 15:39:30 -04:00
jean-pierre charras
9f03d15a2e
Try to enable Clipboard copy on linux
2015-05-31 13:14:57 +02:00
Garth Corral
6eaf029a0e
Pinch to zoom for OS X.
2015-05-21 22:54:29 +02:00
jean-pierre charras
4e210a2d05
ModEdit: fix a refresh issue after deleting a pad (depending on the position of the pad, the pad was sometimes not immediately undrawn).
...
Fix a few coverity wanings (not initialized members in ctors)
2015-04-20 16:59:25 +02:00
Wayne Stambaugh
9a6a3c8b58
Fix some more size_t assertions in the VRML parser debugging messages.
2015-04-19 19:46:38 -04:00
unknown
5f7268a178
3d-viewer, fix again a transparency issue.
2015-04-17 13:12:59 +02:00
jean-pierre charras
4354139f24
Very minor fixes.
...
Removing trailing spaces in some files.
2015-04-16 10:07:10 +02:00
unknown
d40ea8adcb
3D viewer: fix issues with transparencies in some models (material issues in VRML2 parser)
...
Fix some issues in filling zones normals.
Fix an issue with some models that have materials but didn't defined the diffuse color.
Workaround for Bug #1443431 .
Implement some missing "code logic" for pervertexperface normals.
Remove some not used functions.
Calculate normals using double type.
2015-04-16 09:43:27 +02:00
Wayne Stambaugh
4b22e8ed37
Fix wxLogTrace string argument format specifiers for size_t types in vrml_v2_parser.cpp
2015-04-14 21:42:33 -04:00
jean-pierre charras
79af0c454d
2 very minor fixes.
2015-04-14 17:57:07 +02:00
jean-pierre charras
19347b1243
3D viewer: minor fixes. Use our class REPORTER to show warning messages and activity info when building the 3D board view. Add a few comments in sources.
...
Very minor other fixes.
2015-04-14 17:12:35 +02:00
Brian Sidebotham
ae57c4692a
Move S3D_MESH* to smart pointer to fix CID 108646
2015-04-13 21:56:15 +01:00
jean-pierre charras
c519eea12b
3D viewer: fix (the fix is not perfect) a minor issue in zone rendering: copper thickness was not good when the option 'Show Holes in Zones" was OFF, and "Show Copper Thickness" ON.
...
Fix a few coverity minor warnings.
2015-04-12 19:44:46 +02:00
unknown
d545c698fb
3D vrml export: fix for bug #1441734
2015-04-10 09:30:21 +02:00
jean-pierre charras
0f7e358030
3D viewer: fix a bug introduced in rev 5579s. Remove a few useless wxBusyCursor. Minor other fixes.
2015-04-08 14:50:36 +02:00
jean-pierre charras
17297babe7
Eeschema: extend max number of units per package to 52 and clean code to easily extend this value upto 26x26 (but 52 is a reasonable max value).
...
Fix a few minor coverity warnings.
Add about_dialog typo fix from Nick Østergaard
2015-04-07 13:52:29 +02:00
jean-pierre charras
bbbb84e6c2
Fix a few minor coverity warnings.
...
Fix minor 3D viewer issues (includling change number of segments and its optimization to draw pad holes.)
Fix Bug #1439132 (track and via list on toolbar not always refresh after loading a board).
Remove useless tool in Modedit.
2015-04-02 13:18:19 +02:00
jean-pierre charras
c9a917eef1
3d viewer: fix a few warning coverity (and a potential bug). fp libs wizard: make it internationalized, and replace an untranslatable string created by grouping 3 strings by one translatable string.
2015-03-31 13:14:21 +02:00
unknown
34dfbc3306
3D viewer: fix an issue introduced in previous commit. Add an improvement.
2015-03-29 18:13:58 +02:00
unknown
c0518db743
3D viewer: Some more support cases to VRML2 parser and fix some issues.
2015-03-29 12:59:53 +02:00
unknown
26990213db
3ED viewer: added more support for the VRML2 parser
2015-03-28 17:16:40 +01:00
unknown
eee901ff57
3D-viewer: Fixes and enhancements. Add comments in header files. Fix some coding style issues.
2015-03-28 12:33:56 +01:00
Wayne Stambaugh
ec4d74c984
Minor 3D viewer improvements (fixes lp:1406680).
...
* Make OK button the default action in the 3D viewer option dialog per UI
policy.
* Fix standard button sizer padding in 3D viewer options dialog.
* Let sizers do their job by using default size for 3D viewer options
dialog.
* Set 3D viewer hot key to Alt+3 in all parent windows where 3D viewer is
accessible.
* Minor code cleaning and coding policy fixes.
2015-03-26 15:04:52 -04:00
jean-pierre charras
9c43d6f22b
Very minor fixes: 3D viewer: remove artifacts with NPTH pads having the save size as their hole. Kicad: remove duplicate submenu in menubar. remove a minor coverity warning
2015-03-23 09:28:12 +01:00
jean-pierre charras
9a3a92f93a
3d-viewer: avoid useless warning messages each time a 3d view option is changed.
...
they are now shown only when a new board is loaded, if there are warnings.
2015-03-17 08:39:15 +01:00
jean-pierre charras
115cb2d647
Try to fix Bug #1431765 (Pcbnew crashes in GAL when entering 3d display when a board outline is not closed)
...
This change modify the way warning messages are displayed: now the are displayed outside a paint event.
2015-03-16 18:39:35 +01:00
Mario Luzeiro
d80a3d651e
3d-viewer: fixes and enhancements.
2015-03-15 16:51:56 +01:00
unknown
cbb0e2ad35
Rework on 3D viewer. Fix some issues, some optimizations and better rendering.
2015-03-13 20:27:25 +01:00
jean-pierre charras
f16e083ecf
Fix minor bug #1429990 (3D viewer shows hidden footprint graphic texts ). Fix minor coverity warnings (not initialized members and dead code)
2015-03-11 14:59:43 +01:00
unknown
8e7bc5666b
3d viewer: fix current shading issues with some models.
2015-03-10 21:15:41 +01:00
unknown
c3e3ff3682
Minot fixes: Minor coding style issues fix (tab -> spaces). Add missing GetClass to all classes derived from EDA_ITEM. Make debug method Show() only compiled in debug mode.
2015-03-06 09:58:32 +01:00
jean-pierre charras
02c8d4db8a
Minor fixes: coding style in 3d-viewer and minor code cleanup, and some fixes in bom python scripts, which did not work when a non ascii char (but a valid utf8 symbol) was found in xml netlist. Add comments.
2015-03-05 20:46:38 +01:00
Wayne Stambaugh
25b9a42ea3
More Coverity scan error fix goodness.
2015-02-28 15:50:35 -05:00
jean-pierre charras
10d67ffbd9
Fix some coverity warnings (not initialized members). Add comments. Better (more informative) title in dialog to download .pretty libs.
2015-02-26 11:33:15 +01:00
Mark Roszko
3918d3f0b2
Eeschema code cleanup and coverity fixes.
2015-02-21 09:11:58 +01:00
Wayne Stambaugh
d1d1e2b58a
Lots of Coverity scan error fixes.
2015-02-20 19:41:10 -05:00
Mark Roszko
6c7744e286
VRML file parser fixes.
...
* Fix coverity scan error for array comparison.
* Check for buffer length overflow that fixes segfault.
2015-02-19 19:21:34 -05:00
jean-pierre charras
6312f8386a
Temporary fix a crash I created in rev 5427, when erasing all modules on a board and read the netlist. Will be fully fixed later.
...
Very minor fixes: remove duplicate #define in vrml_v2_modelparser.cpp, and "undo" a very minor change I made in class_board.cpp when I tried to fix a Pcbnew crash.
2015-02-17 21:32:49 +01:00
jean-pierre charras
39497b109e
Pcbnew: fix Bug #1422093 (pcbnew crashes after editing a footprint cominng from the board with the fp editor and saving it on a librray and trying to load it to the board)
...
Some other very minor fixes.
2015-02-17 17:32:47 +01:00
Sven D
d819a38075
Fix VRML V2 parser bug. (fixes lp:1417217)
...
* Add support for VRML DEF coordinate key word.
* Coding policy fixes by Blair Bonnett <blair.bonnett@gmail.com>
* Debugging output clean up.
2015-02-15 16:30:34 -05:00
jean-pierre charras
f0a52644ea
Pcbnew: fix Bug #1413701 (Segfault on highlight "unconnected" net 0 in Pcbnew ). Also, remove now useless code and other very minor fixes.
2015-01-23 12:24:32 +01:00