Jeff Young
16925cc74e
Implement RAII locking for GAL updating.
...
Fixes a crash when typing fast in the place footprint filter box.
Also adds a bunch more checking to GAL locking, including making
sure the same person unlocks as locked, and preventing piece-meal
calls (the RAII objects must be used).
2018-10-26 23:02:05 +01:00
Jeff Young
6c34fdefd7
Better exception handling and context locking for GAL.
...
This prevents deadlocks when exceptions are thrown and the context
ends up not getting unlocked.
It also removes an earlier hack to try and minimize this which
didn't work anyway.
2018-10-12 23:44:49 +01:00
jean-pierre charras
7372acdaa5
Fix:Step export not working when special characters (non UTF7) in filename or path
...
Fixes: lp:1785191
https://bugs.launchpad.net/kicad/+bug/1785191
2018-09-18 10:24:23 +02:00
Maciej Suminski
c120ae9e9d
kicad2step: Implement overwrite protection, handle 'force overwrite' flag
...
Fixes: lp:1791826
* https://bugs.launchpad.net/kicad/+bug/1791826
2018-09-11 09:23:31 +02:00
Maciej Suminski
7037e422a8
kicad2step: Set correct file extension if no output file is specified
2018-09-11 09:22:10 +02:00
Seth Hillbrand
d3c82b0b57
kicad2step: limit small segment add/remove
...
The addition of very small segments in OCE triggers sliver
removal/cleanup in the BREP generation that can get stuck in a very long
loop during STEP export of boards. These were introduced to ensure
closure of boards with small gaps that were too big for OCE to consider
joined.
Removing the small segments allows STEP export to proceed in a
reasonable time. This also decreases the default minimum gap size that
kicad2step uses to determine curve matching. This prevents mis-matching
small curves
Fixes: lp:1784626
* https://bugs.launchpad.net/kicad/+bug/1784626
2018-09-06 18:44:09 -07:00
John Beard
a88831d7a9
Fix -Wcatch-value in kicad2step.cpp
2018-08-15 12:39:33 -04:00
John Beard
f0c571769c
Fix -Wcatch-value in sexpr.cpp
...
This is fixed by catching bty const-ref, rather than by value.
Also a few trailing space deletions.
2018-07-23 14:40:16 -04:00
jean-pierre charras
7291059489
replace lib_dxf by dxflib from qcad in dxf2idf code
2018-07-22 18:39:47 +02:00
jean-pierre charras
72d1597201
DXF import: add import of DXF splines that are converted to Bezier curves.
...
Fix also a lot of bugs related to Bezier curves (S_CURVE shape in DRAW_SEGMENT class) in Pcbnew code.
Add missing code to handle these Bezier curves
2018-07-22 18:39:47 +02:00
Jeff Young
8f0aa68ab8
Fold 3D Search Paths dialog into Configure Paths.
...
Use in-place editing for both.
Fixes: lp:1743823
* https://bugs.launchpad.net/kicad/+bug/1743823
(cherry picked from commit 33622cd)
2018-07-17 15:11:01 +01:00
Maciej Suminski
a08c0ac08c
kicad2step: Added minimum distance parameter
2018-06-19 10:37:07 +02:00
Maciej Suminski
7ef97e0bca
kicad2step: Simplified unit conversion
...
Instead of using 'm_inch' flag, dimensions are converted in place.
2018-06-19 10:37:07 +02:00
Maciej Suminski
04a462e48f
kicad2step: Converted #defines to constexprs
2018-06-19 10:37:07 +02:00
Maciej Suminski
1541cbdf04
kicad2step: Add short segments to fix outline contiguity for arcs
...
STEP exporter keeps outline contiguous by storing the last point
coordinates and using them as the starting point for the next segment. It
might create a problem for arcs, as one of the arc end points may become
translated (changed to the last outline point), while the remaining
points (center and the other endpoint) are kept original. For large
deltas it renders an arc invalid, as it cannot pass through a modified
endpoint anymore.
To fix this, short segments are added to link the last outline point
with an arc endpoint, but only if the distance between the two is below
a certain threshold. This way the outline is kept contiguous and the arc
end point is unmodified, warranting its correctness.
Fixes: lp:1774351
* https://bugs.launchpad.net/kicad/+bug/1774351
2018-06-19 10:29:18 +02:00
Maciej Suminski
ba3f2b30ee
kicad2step: More diagnostic messages to determine export issues
2018-06-18 17:51:22 +02:00
Seth Hillbrand
e95d06e811
OCC: Fix issues for OpenCascade 7.3
...
OpenCascade 7.3 deprecates some TK libraries that were not required by
KiCad, therefore we should not include them in the compile.
Also correct missing compiles for STEP import/export induced by 584409b2e
when using OCCT. There is no effect on OCE to this change.
2018-06-12 10:03:13 -07:00
jean-pierre charras
6d77e594b5
Python binding: fix pcbnew.Refresh() to make a better re-initialization.
...
Minor fixes in comments.
Fixes: lp:1775003
https://bugs.launchpad.net/kicad/+bug/1775003
2018-06-07 10:04:29 +02:00
Jeff Young
6a2dc8d4eb
Roll back last 2 commits meant for the other resolver only.
...
Fixes: lp:1772255
* https://bugs.launchpad.net/kicad/+bug/1772255
2018-05-21 16:25:44 +01:00
Jeff Young
10ec39a107
Move 3D file error messages to tracePathsAndFiles key.
...
Fixes: lp:1772255
* https://bugs.launchpad.net/kicad/+bug/1772255
2018-05-21 13:18:41 +01:00
Jeff Young
c48e5b6423
Remove unhelpful warning message.
...
It appears far too often with the new libraries.
Fixes: lp:1772255
* https://bugs.launchpad.net/kicad/+bug/1772255
2018-05-20 23:48:29 +01:00
Seth Hillbrand
584409b2ef
Make OpenCascade more secondary
...
The opencascade patch intrusively checked against libraries but broke
some build scripts. This restores the default cmake OCE behavior that was
changed by 2bab30d9a
and makes the OpenCascade search truly secondary.
2018-05-15 06:40:25 -07:00
Maciej Suminski
161b4a56fc
kicad2step: Handle escaped quotes in sexpr parser
2018-05-14 17:58:24 +02:00
Seth Hillbrand
2bab30d9ac
Allow Kicad to use OpenCascade
...
Adds the option of using OpenCascade not just the community edition.
Fixes: lp:1628950
* https://bugs.launchpad.net/kicad/+bug/1628950
2018-05-11 17:04:32 -07:00
Jeff Young
aa7da5dfcd
Treat ${...} and $(...) envvar references uniformly.
...
Fixes: lp:1769282
* https://bugs.launchpad.net/kicad/+bug/1769282
2018-05-05 23:40:40 +01:00
jean-pierre charras
91209e194c
Remove useless tests after operator new
2018-04-25 12:07:43 +02:00
Maciej Suminski
eebabf165b
kicad2step: Report lack of model definition rather than empty file names
2018-03-19 17:04:38 +01:00
Maciej Suminski
47e4798423
kicad2step: Report function name and line number only in debug builds
2018-03-19 17:04:38 +01:00
Maciej Suminski
ce610f33a2
Coverity fixes
...
resource leak: #172233
negative array index write: #102363
uninitialized scalar field: #174540 #174539
structurally dead code: #169334 #169331
2018-03-19 10:02:05 +01:00
Seth Hillbrand
c69db6cf8f
Adding rounded rect and custom pad shapes to VRML export
...
Fixes: lp:1753552
* https://bugs.launchpad.net/kicad/+bug/1753552
2018-03-06 16:40:08 -08:00
jean-pierre charras
b327da6e5a
Fix incorrect parsing in kicad2step when a footprint has both locked and placed options activated.
...
Fixes: lp:1742700
https://bugs.launchpad.net/kicad/+bug/1742700
2018-01-15 11:24:09 +01: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
Oliver
76f5df8a43
Decode "offset" in STEP export tool
...
- Read "at" as inches
- Read "offset" as mm
2017-12-01 16:21:50 +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
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
Oliver
c932e4af1b
Added IGES replacement option
...
- If no STEP substitute is found, look for IGES
2017-11-07 08:34:38 -05:00
Oliver
30455092c8
Replace WRL files with STEP equivalent
...
- Use simple filename matching
- If a STEP file is found, use that instead
- Similar behaviour to the infamous StepUp tool
Fixes lp:1710796
https://bugs.launchpad.net/kicad/+bug/1710796
2017-11-06 18:41:40 -05:00
Wayne Stambaugh
15478bda41
Fix various STEP export dialog issues.
...
The file filter wild card was defined incorrectly causing the file picker
to not display *.stp and *.step file extensions. Change the wildcard per
wxFileDialog documentation.
Prevent the file extension from being forced to .stp even when the user
defined a different extension in the file picker.
Override TransferDataFromWindow to test for file existence and warn user
only once if a file overwrite can occur.
Minor STEP export dialog string and layout improvements.
Make kicad2step honor user's file extension rather than always setting it
to .stp.
Fixes lp:1709636
https://bugs.launchpad.net/kicad/+bug/1709636
2017-08-09 13:41:07 -04:00
jean-pierre charras
33e0758636
Fixes: lp:1696204 3D STEP export doesn't handle B.Cu rename
...
https://bugs.launchpad.net/kicad/+bug/1696204
2017-06-08 08:33:14 +02:00
Bernhard Stegmaier
df2ff50aa2
Fix OSX bundling issue.
...
Bundle kicad-ogltest as a console tool into the main KiCad bundle where
the other tools reside.
2017-05-17 08:14:18 -04:00
Mathias Grimmberger
097f89dcbc
Use wxSetAssertHandler() instead of changing wxTheAssertHandler
2017-05-02 11:16:48 +02:00
Simon Richter
7b4ea2a382
Mark kicad-ogltest as GUI binary for Windows and MacOS
2017-04-07 08:14:54 -04:00
Simon Richter
5d48d8a2f8
Fix signature of dummy Pgm() function
2017-04-07 07:43:49 -04:00
Simon Richter
c845a9c88d
Add missing GLEW and GLM include dirs for ogltest
2017-04-07 07:43:49 -04:00
Chris Pavlina
e8b811bab7
kicad-ogltest: use OPENGL_GAL
2017-03-29 19:00:24 -04:00
Chris Pavlina
23590d8d3f
kicad-ogltest: if version can't be interpreted, print it
2017-03-29 16:25:32 -04:00
Chris Pavlina
c8ef5208ee
Add initial ogltest tool for user testing
...
This tool is currently very rudimentary. I pushed it because I need to
collect responses from it from users with diverse graphics
configurations, so I want the tool to be in the nightly builds.
This affects no KiCad code.
2017-03-29 16:19:43 -04:00
jean-pierre charras
713d475df6
mark override 2 virtual methods.
2017-03-18 09:39:56 +01:00
Chris Pavlina
b535303a0a
kicad2step: unused variable
2017-03-17 22:45:41 -04:00
Chris Pavlina
527c98fe15
kicad2step: shadowed virtual because of wrong qualifiers
2017-03-17 22:45:28 -04:00
Cirilo Bernardo
960c139064
Fix UTF8 filename issues in kicad2step
2017-03-14 18:33:14 -04:00
Cirilo Bernardo
68bcdec87e
Workaround for non-ASCII filenames in Windows
2017-03-03 14:30:47 -05:00
jean-pierre charras
11dcb76fc9
Add -Wshadow compil option, if exists to warn about shadowed variables.
...
Swig auto generated .cxx file has a lot of shadowed variables, so this option cannot be used to compil all files.
2017-02-23 13:17:23 +01:00
Cirilo Bernardo
227ef64212
Fix coding style of 'sexpr' code in kicad2step
2017-02-02 08:58:35 +01:00
Cirilo Bernardo
4a1e2644a4
kicad2step was not accepting module names which are valid numbers.
...
Fixes: lp:1660841
https://bugs.launchpad.net/kicad/+bug/1660841
2017-02-01 20:14:57 -05:00
Cirilo Bernardo
d29f39dce4
Fix line number tracking in sexpr parser
2017-02-01 19:43:44 -05:00
Cirilo Bernardo
cf1003955d
Added more info to kicad2step parsing failures
2017-02-01 19:43:44 -05:00
Morgan Quigley
1b9c8676df
Fix bug in STEP import with curve intersections.
...
Set BRL precision to 10 nanometers to prevent floating point round errors
from creating arcs that leave gaps in the board outlines. Note: it may
be prudent to make this setting 100 nanometers if there are gerber export
issues.
Fixes lp:1652406
https://bugs.launchpad.net/kicad/+bug/1652406
2017-02-01 19:32:27 -05:00
Simon Richter
b0f9864bc4
Clean up warnings from exception handlers
...
The exception objects caught are either not referenced at all, or only in
debug builds. This avoids the warnings for the unused variables.
2016-10-10 11:08:49 -04:00
Cirilo Bernardo
451cbedd2c
Change KICADMODEL definition from struct to class for consistency
2016-09-26 23:54:34 -04:00
jean-pierre charras
2717c63c6a
Add missing override to 4 virtual methods in kicad2step.cpp.
2016-09-26 08:40:12 +02:00
Simon Wells
7a1d39ccc6
Add system to OCE includes, Change order of local includes for kicad2step
2016-09-26 08:17:57 +02:00
Simon Richter
59c81976dc
Explicitly mark overriding functions.
2016-09-24 14:53:15 -04:00
Simon Wells
44d3018125
Added explicit conversion from wxstring to cstring
2016-09-22 10:59:40 -04:00
Cirilo Bernardo
8b8626ceeb
Removed wxT() from kicad2step modules and made modifications to the STEP Export GUI
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
34fef23bd4
Reworked cmdline options and added output filename option
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
a9cb10c947
Added --no-virtual option to suppress inclusion of 3D models from components with the virtual attribute
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
375741eeaa
Modified parser to skip drill specifications for SMD pads
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
ad7302358b
Fixed install path for OSX
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
1848a87844
Fixed build conditions to depend on KICAD_USE_OCE (formerly USE_OCE) and removed extra spaces
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
11a44388ee
Added options to use Drill or Grid origin for outptu STEP file
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
231b08e58f
Added kicad2step tool.
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
809b0040ea
Added mroszko's SEXPR parser (ref: https://github.com/marekr/sexpr )
2016-09-22 08:37:16 -04:00
Cirilo Bernardo
d3771d53ef
Updated VRML exporter and fixed some VRML related bugs
2016-09-21 09:31:52 -04:00
Maciej Suminski
71aade6b51
Fixed a few warnings (mostly gcc6 -Wmisleading-indent).
2016-06-07 14:42:42 +02:00
Simon Richter
3e5443166e
Use wxIMPLEMENT_APP_CONSOLE for console apps
2016-05-28 13:14:35 -04:00
Cirilo Bernardo
8c116d1a21
Convert idf2vrml to use wxApp etc for option processing
2016-05-28 13:14:31 -04:00
Simon Richter
71bbddc30c
Drop <libgen.h> and <unistd.h>, no longer needed
2016-05-28 13:11:30 -04:00
Simon Richter
96ec9db5d6
Add missing C++ stdlib headers
...
The GCC standard library headers often include other headers, which makes
some code compile that forgets to include several headers.
2016-05-28 12:46:29 -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
978268250e
Removed temporary printout used for debug
2016-03-21 21:32:26 +11:00
Cirilo Bernardo
e4b074f04f
Added PolyLine support and units scaling to the dxf2idf tool
2016-03-21 18:48:35 +11:00
Cirilo Bernardo
fc5556c811
Sync with main branch r6513
2016-01-26 10:35:16 +11:00
Simon Richter
ba66f0360a
Avoid comparing filepos with integers
...
The filepos type is not necessarily an integer type, because it also needs
to save the multibyte character state in case we're reading from a stream
with shift states.
The convention of using -1 as a special value is from Unix ftell(), and not
portable. Instead, the stream's failbit needs to be examined after the call
to tellg().
2016-01-17 10:59:08 -05:00
Cirilo Bernardo
e185b29baa
Resync with main branch r6482
2016-01-16 19:10:53 +11:00
Cirilo Bernardo
4919f2ba75
Fix IDF parse error when final EOL is missing
2016-01-11 23:02:12 -05:00
Cirilo Bernardo
7dd4bd9f09
Improving VRML1/2 parsers
2016-01-07 15:43:32 +11:00
Cirilo Bernardo
43c2c7223b
Sync with main branch r6421
2016-01-05 16:37:52 +11:00
Wayne Stambaugh
c751bf60bc
Remove Boost library building and other build improvements.
...
* Remove download and build Boost from source and all CMake boost source build
dependencies.
* Make FindCairo.cmake use pkg-config when it's available not just all
platforms except windows.
* Add version checking to FindCairo.cmake.
* Change find GML version to 0.9.5.1 which is the current version in Ubuntu
14.04 LTS.
* Update required Cairo version to 1.12.1.
2016-01-03 15:33:09 -05:00
Cirilo Bernardo
548b54d75d
+ resync with main branch r6409
...
+ work in progress: new VRML2 3D plugin
2015-12-31 09:28:39 +11:00
jean-pierre charras
c4ea4dc0df
Fix some warnings (looking like potential bugs) detected by cppcheck, (a few from a patch from Julien Nabet <serval2412@yahoo.fr>), remove not used vars and a few coding style fixes.
2015-12-27 13:16:46 +01: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
879c445b55
Preparing IDF plugin to support EMN/EMP files
2015-12-17 14:46:09 +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
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
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
jean-pierre charras
19124ceee8
Fix crash when exporting vrml (see bug Bug #1502549 ) when there is a Glu error.
...
Enhancement: dialog_footprint_wizard_list remembers now its size.
2015-10-04 13:46:56 +02:00
unknown
508a9b2f06
IDF tool export: fixes a bug in the idf2vrml tool which results in the incorrect rendering of OTHER_OUTLINE sections which are placed on the bottom layer.
2015-07-25 14:51:42 +02:00