FreeCAD uses gzip-based stpZ files but many programs will compress using
the archive format of PKZIP (e.g. WinZIP). This handles the archive
format, taking the first file from the archive, which by the standard
should be the STEP file
Fixes https://gitlab.com/kicad/code/kicad/issues/5376
Just because we find a label reference does not mean that is where the
color is stored. We do an exhaustive search through the hierarchy for
the correct color data
Fixes https://gitlab.com/kicad/code/kicad/issues/6107
We modified how we search for color information. Changing the version
data will for models to reload instead of keeping the cached data with
(possibly) missing color information
Assemblies may not have their face information in the top level of the
file. Search recurses to get the explicit shape in sub assemblies as
well.
Fixes https://gitlab.com/kicad/code/kicad/issues/5163
Str2Double assumes current locale. We usually switch the locale when
reading files but we should be using the function that explicitly gets
the C-locale conversion.
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.
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.
This changes the IGES import parameter precision to be file-defined
instead of hard-coded in KiCad. OCE-0.18 does not handle faces with
a set of points whose approximation creates a single point.
By allowing the file to set the precision level, we leave it to the
generating program to create a file with non-degenerate faces.
Fixes: lp:1738872
* https://bugs.launchpad.net/kicad/+bug/1738872
*) Extend SWIG support deeper into the BOARD class.
*) Move swig *.i files into a directory identified for SWIG, in preparation
for a parallel universe involving Phoenix's SIP.
*) Move swig files which will be common to both eeschema and pcbnew into
common/swig.
*) Sketch out a "common" python module, and plan on dovetailing that into a
libkicad_shared.{dll,so}
*) Add common/swig/ki_exceptions.i and define a macro HANDLE_EXCEPTIONS()
which is to be applied to any function which needs C++ to python
exception translation.
*) Move the test for SWIG tool into top level CMakeLists.txt file for use
in all python modules beyond pcbnew, i.e. eeschema and common.
*) Add SWIG_MODULE_pcbnew_EXTRA_DEPS which generates a better Makefile, one
which rebuilds the swig generated *.cxx file when one of its dependencies
change.
*) Re-architect the board.i file so that it can be split into multiple *.i
files easily.
*) Make some KIWAY from python progress, in preparation for Modular KiCad
phase III.