Commit Graph

805 Commits

Author SHA1 Message Date
wmayer
b803d987b9 Base: [skip ci] handle gimbal lock when computing Euler angles 2021-10-27 17:02:07 +02:00
wmayer
16c08ec96f Base: [skip ci] in Rotation class allow to set angle in radian
App.Rotation(axis, angle) still defines the angle in degree
App.Rotation(axis, Degree=angle) does the same as above
App.Rotation(axis, Radian=angle) defines the angle in radian
2021-10-27 10:59:34 +02:00
wmayer
e424faa131 Base: harmonize Python API of Rotation class 2021-10-27 10:40:35 +02:00
wmayer
497c1895e8 Base: [skip ci] expose Rotation.fromEuler() to Python 2021-10-27 00:34:36 +02:00
wmayer
3f6986c881 Base: implement a way to test translator for testing purposes 2021-10-26 16:58:42 +02:00
wmayer
fc2e842aca Base: [skip ci] Modify GetASCII to include empty strings 2021-10-23 22:56:45 +02:00
wmayer
057cce2538 Base: [skip ci] add method to check for null vector 2021-10-19 19:19:31 +02:00
Yorik van Havre
13b8b05a9a Merge pull request #4787 from chennes/addThemeSupport
[GUI] Add Preference Pack support
2021-10-14 12:41:06 +02:00
wmayer
5ae444a49c Base: [skip ci] use PyNumber_Check instead of PyFloat_Check/PyLong_Check to check for numbers 2021-09-30 14:22:56 +02:00
wmayer
7df49abba9 Base: [skip ci] pass the full file path to the FileException 2021-09-29 14:02:46 +02:00
0penBrain
419612d63e [Core] Rotation : improve gimbal lock handling
Tolerance copied from OCC "gp_Quaternion.cxx"
2021-09-27 16:52:21 +02:00
Chris Hennes
cc53377985 Merge branch 'master' into addThemeSupport 2021-09-24 07:51:04 -05:00
wmayer
47fe2babac port to MSYS2/clang 2021-09-20 18:15:44 +02:00
wmayer
8cbd92d874 port to MSYS2/clang 2021-09-19 19:49:44 +02:00
Preslav
354987b45d Ammending stiffness units 2021-09-17 11:08:08 +02:00
wmayer
a40d37a980 Base: split export/import macros from FCConfig.h and move them to FCGlobal.h
The FCGlobal.h can be included in a Global.h header file of an extension module.

The reason is that some IDEs (e.g. QtCreator) fails to detect the export/import macros when only defined in the PreCompiled.h files and thus raise a parser warning.
2021-09-14 16:40:30 +02:00
Chris Hennes
2abe1611f7 Merge pull request #4791 from heewa/fix-lost-err-msg
[Base] Fix lost filename in err msg
2021-09-14 09:23:03 -05:00
0penBrain
cdbf7acc80 [Core] Rotation : fix gimbal lock handling
+ fix Euler representation on GUI
2021-09-13 18:34:58 +02:00
Yorik van Havre
c03c771839 Merge pull request #4772 from realthunder/EulerAngles
Base: add new API Rotation::get/setEulerAngles()
2021-08-31 10:40:23 +02:00
Chris Hennes
d18d5be498 Modify GetASCIIMap to include empty strings 2021-08-20 20:04:19 -05:00
Yorik van Havre
5ff2d7e981 Merge pull request #4963 from Helios113/stiffness
Base: Adding stiffness units
2021-08-18 10:04:46 +02:00
Preslav
5030d8bb6d Added stiffness units to FreeCAD [mN/m, N/m, kN/m, MN/m] 2021-08-16 12:27:41 +01:00
Syres916
ced5f31993 [Base] Remove one unnecessary precision level 2021-08-12 11:13:29 +01:00
Syres916
147e015fd2 [Base] Increase precision 2021-08-12 10:55:50 +01:00
Heewa Barfchin
ce678a2d4d Fix lost filename in err msg
In some circumstances, FileExceptions are constructed empty, then have a
filename assigned to them, but the error message in these scenarios is
left as the default "unknown" one, which is sometimes shown to users.
This change fixes that case to be consistent with instances that are
constructed with the filename.
2021-05-14 12:34:20 -04:00
wmayer
a6e7bdf849 allow to enable PCH for gcc and clang 2021-05-03 17:37:58 +02:00
Zheng, Lei
37d6752404 Base: add new API Rotation::get/setEulerAngles()
Exposed to Python as new constructor parameters and
Rotation.toEulerAngles()

This function uses the code from OCCT
gp_Quaternion::Get/SetEulerAngles() to support all 24 possible
generalized euler rotation sequences. Call Rotation.toEulerAngles()
without argument to obtain all possible sequence types.
2021-05-02 17:20:45 +08:00
wmayer
0909fa76aa Base: allow to use the classes XUTF8Str and StrXUTF8 outside FreeCADBase 2021-04-28 10:56:17 +02:00
wmayer
56c92d1198 Fix generation and build of python classes for 3.8 2021-04-27 14:35:34 +02:00
markus
d6fa0b1d18 Fix generation and build of python classes for 3.9 2021-04-27 00:41:53 +02:00
wmayer
3347c5e632 Base: [skip ci] do not make PyBaseProxy class declaration dependent on ATTR_TRACKING 2021-04-26 15:57:17 +02:00
wmayer
8371162427 Base: remove obsolete swig source files 2021-04-26 11:20:13 +02:00
wmayer
e92325c9c9 App: remove some more deprecated Py2 code
and remove deprecated void from function signature and replace 0 or NULL with nullptr
2021-04-26 10:55:56 +02:00
wmayer
c563198b35 Base: remove some more deprecated Py2 code
and remove deprecated void from function signature and replace 0 or NULL with nullptr
2021-04-26 10:29:48 +02:00
luz paz
59b7e9fdd0 Base: remove Py2 code 2021-04-26 09:23:58 +02:00
wmayer
0edbea1316 Base: use Python's weak reference mechanism to avoid memory leaks due to cyclic dependencies 2021-04-23 11:02:19 +02:00
wmayer
b0d29b745c Base: add convenience functions to create a QString from quantity 2021-04-20 14:56:29 +02:00
wmayer
e4f98b4512 Base: add convenience functions to create a QString from quantity or double 2021-04-20 14:07:20 +02:00
Mateusz Skowroński
9ade68e9bf Fix CMake warning: qt5_make_output_file is not part of the official API, and might be removed in Qt 6. 2021-04-19 15:10:53 +02:00
wmayer
b15e41fdb1 Base: [skip ci] add convenience function to get PyObjectBase from GeometryT 2021-04-12 15:12:21 +02:00
wmayer
0566443907 Base: [skip ci] remove Py2 code from PyObjectBase 2021-04-12 14:17:16 +02:00
wmayer
a61c930aaa Py: fix memory leak 2021-04-12 00:06:00 +02:00
wmayer
dbbac56185 Base: do not report C++ exception when converting it to Python exception
See https://forum.freecadweb.org/viewtopic.php?f=23&t=56464
2021-04-11 14:54:11 +02:00
wmayer
6197243fa7 Base: Vector3::GetAngle() uses a smaller epsilon 2021-04-06 11:37:35 +02:00
Chris Hennes
5592548e2e [Base] Remove deprecated Qt < 5.9 code 2021-04-01 19:28:43 +02:00
donovaly
6c67300d62 [Base] add electrical conductivity
- this is necessary to perform electrodynamics simulations. Since the typical values are in the range of 1e6 S/m, we need the new units kS and MS

- since this is for simulations, also add electrical conductivity to the FEM material cards
2021-03-25 17:13:52 +01:00
Benjamin Nauck
be7cc40106 [Base] Remove unused std::make_unique back port
std::make_unique was introduced in c++14, so no need to have it back
ported anymore.
2021-03-06 21:20:32 +01:00
Benjamin Nauck
8a2cfc268e [Base] Remove includes to StdStlTools.h as that's not needed anymore
std::make_unique was introduced in c++14, so no need to use the back
ported version
2021-03-06 21:20:32 +01:00
David Carter
6c57cebc9b Base: fixes #0004586: Conversion error for PoundForce (lbf) 2021-03-03 12:39:49 +01:00
wmayer
dd4dd204d0 App/Gui: fix memory leaks:
+ add function to cleanup units and quantities in debug build
+ fix reference leak in PropertyVector::getPyPathValue()
+ fix reference leak in PropertyPlacement::getPyPathValue()
+ in InterpreterSingleton::init() use a static std::vector<wchar_t*> instead of a C array
  to free memory at program end
+ in MainWindow::closeEvent() explicitly delete all task watchers
+ in ReportOutputObserver constructor pass parent to QObject
+ in PropertyEditor destructor explicitly delete QItemEditorFactory
2021-02-27 10:56:19 +01:00