Commit Graph

21863 Commits

Author SHA1 Message Date
wmayer
0441478d49 PartDesign: [skip ci] revert TabFocus policy for spinbox in Thickness panel
When clicking on the spinbox it won't get the focus and thus it's not possible to override the content with the keyboard.
The user has to actively press the Tab button in order to set the focus to the spinbox before he can override the content.
This is a very annoying behaviour and it's a regression caused by b01ebbc01
2020-07-06 14:47:21 +02:00
vocx-fc
6982b52d00 Arch: fix invalid print syntax in Python 2 2020-07-06 12:41:22 +02:00
wmayer
8082def6b5 Mesh: [skip ci] support of loading colored mesh segments 2020-07-06 12:17:15 +02:00
Sudhanshu Dubey
d04d675267 FEM: examples, changed name of example
to not conflict with CCX cantilever faceload in examplegui
2020-07-06 06:27:45 +02:00
vocx-fc
1de26011e0 FEM: skip importing examplesgui in unit tests 2020-07-06 06:24:51 +02:00
wmayer
6c15e174d2 Py2: fix compatibility issue 2020-07-05 23:32:43 +02:00
Zheng, Lei
750c169a6c App: fix Material comparison operator 2020-07-05 16:25:17 +02:00
sliptonic
4964d93369 Merge pull request #3663 from Russ4262/Slot_upgrade
[Path] Slot - Add basic support for arc and circular slots
2020-07-04 10:39:34 -05:00
Thomas Gimpel
ffbcab5b49 Part: fix handling of attachment offset rotation changes in attachment editor 2020-07-04 07:50:58 +02:00
donovaly
062c115e6c [PD] disable keyboardTracking for dressup dialogs
- At the moment using e.g. the thickness dialog and change from the default "1.0" to e.g. "21.3" triggers 4 recomputes. This takes a lot of time and is unnecessary. Qt offers therefore to disable keyboardTracking (and we use it already in the TechDraw workbench).

- also change the default draft angle from 1.5° to more common 10° and the step to 1° so that one can quickly get usual angles for drafts
2020-07-04 07:00:00 +02:00
Thomas Gimpel
33841eb827 Sketcher: fix crash, when cloning element having a non-driving distance, radius, diameter or angle constraint; fixes #4393 2020-07-03 20:38:06 +02:00
Przemo Firszt
9e619ed55e [fedora.spec] Move to stage 3 of python bytecompilation
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2020-07-03 18:52:54 +02:00
Sudhanshu Dubey
ff3ce49139 FEM: examples, add Gui to setup examples 2020-07-03 18:03:35 +02:00
Sudhanshu Dubey
3685b3dad7 FEM: examples, add method for retrieving informations 2020-07-03 18:03:27 +02:00
wmayer
9f84186c16 Surface: replace std::mutex with a boolean to avoid extra overhead 2020-07-03 16:08:02 +02:00
wmayer
74ad645600 Surface: optimize Extend::onChanged 2020-07-03 16:08:02 +02:00
wmayer
c77828eac6 Surface: remove superfluous function call 2020-07-03 16:08:01 +02:00
wmayer
a9440d5c37 Surface: in Extend::onChanged call the function of its direct parent class Part::Spline 2020-07-03 16:08:01 +02:00
wmayer
6e5bd7bee0 Surface: handle old project files using Extend feature 2020-07-03 16:08:01 +02:00
wmayer
01edf38b9c Surface: fix -Winconsistent-missing-override 2020-07-03 16:08:01 +02:00
MA-LAPTOP\apeltauer
88fb2fbc37 adding 4 spaces instead of 2 spaces 2020-07-03 16:08:01 +02:00
MA-LAPTOP\apeltauer
5667ff1df3 Add the possibility to set the uv values for all four sides indepented.
Extending the face symetric is the default behaviour.
2020-07-03 16:08:01 +02:00
Bernd Hahnebach
7103688045 FEM: calculix solver unit tests, add generic inp file writing method and make use of it 2020-07-03 15:27:08 +02:00
Bernd Hahnebach
5d5119811a FEM: objects unit tests, improve directory handling 2020-07-03 15:27:00 +02:00
Bernd Hahnebach
755ffe20c7 FEM: mesh unit tests, improve directory handling 2020-07-03 15:26:53 +02:00
Warren Falk
9675611aca [CMake] Find old pyside2 uic and rcc when they are named pyuic5 and pyrcc5
Found that on ubuntu 20.04 where QT is still at 5.12, these are called pyuic5 and pyrcc5 now and cmake will not find these and then the build fails without this change
2020-07-03 14:41:11 +02:00
Zheng, Lei
6d2bf01071 Fem: fix ViewProviderFemPostPipeline::updateData() 2020-07-03 14:37:59 +02:00
Bernd Hahnebach
9de5f54dae Arch: IFC, fix import break on a IfcAxis2Placement2D 2020-07-03 13:54:26 +02:00
Yorik van Havre
9678811866 Simplified github/FUNDING.yml 2020-07-03 11:47:23 +02:00
Bernd Hahnebach
76b03ae90f FEM: ccxtools unit tests, simplifictions 2020-07-03 09:56:59 +02:00
Abdullah Tahiri
31b1ad874f Sketcher: Augment malformed constraint messages
===============================================

Enable a user recomputing an object/document to identify which sketch has the malformed constraints.
2020-07-02 19:54:15 +02:00
Bernd Hahnebach
98b804cd72 FEM: ccxtools unit tests, improve directory handling 2020-07-02 18:13:47 +02:00
Bernd Hahnebach
82551c2d0f FEM: elmer unit tests, add ccx canti node load test 2020-07-02 14:25:56 +02:00
Bernd Hahnebach
d8d0a513d2 FEM: unit tests, improve directory handling 2020-07-02 14:25:48 +02:00
Bernd Hahnebach
7890f1a7af FEM: solver elmer unit tests, add generic input file test method and make use of it 2020-07-02 14:25:39 +02:00
wmayer
da6b379566 fixes #0004318: Compilation fails with Qt 5.15 beta with QPainterPath errors [skip ci] 2020-07-02 13:19:43 +02:00
Russell Johnson
4b02dace0d Path: Add basic support for arc and circular edges
- Arc and circular slots available using single edge selection.
- `ExtendRadius` property to allow for tool compensation.
- Extend path start and end is available. Value is measured along the arc, not linear.
- Includes collision check for arc and circular slots.
2020-07-02 01:16:22 -05:00
WandererFan
19d37ec5df [TD]tweak CosmeticEdge point getters 2020-07-01 20:22:39 -04:00
Bernd Hahnebach
bc309838dc FEM: examples, fix mat value in simple box example 2020-07-01 22:18:14 +02:00
Bernd Hahnebach
aad66311fd FEM: elmer unit tests, add ccx canti faceload 2020-07-01 22:18:07 +02:00
Bernd Hahnebach
25a4cf67d5 FEM: elmer unit test, rename case file
rebaseSmart
2020-07-01 21:44:16 +02:00
Bernd Hahnebach
ddaaa5edf9 FEM: solver elmer unit test, small improvements 2020-07-01 21:44:09 +02:00
Bernd Hahnebach
b13c2b57c1 FEM: examples, nonlinear material, add forum link 2020-07-01 21:44:03 +02:00
wmayer
ebbcdf5ff7 Sketcher: [skip ci] fixes -Wmaybe-uninitialized 2020-07-01 19:50:40 +02:00
Bernd Hahnebach
064b3fb364 FEM: unit tests, make own module for each frame work solver 2020-07-01 17:42:47 +02:00
Abdullah Tahiri
c35d8be9a3 Sketcher: Check invalid constraint indices in unmanaged operations
==================================================================

It is possible to bypass SketchObject in modifying geometry and constraints. Like in here:
https://forum.freecadweb.org/viewtopic.php?f=3&t=41326&start=20#p408409

This leads to unexpected behaviour and even crashes.

With this commit the new mechanism of constraint indices check is leveraged in cases not involving SketchObject operations (aka managed operations).

Direct assignment of properties from Python (sketcher unmanaged operations), undergo this extra indices check.

When indices in constraints are outside the geometry range, the constraints are shown as empty and the error is shown in the report window.
2020-07-01 14:04:25 +02:00
Abdullah Tahiri
ee21985e25 Sketcher: PropertyConstraintList input data validation
======================================================

PropertyConstraintList is provided with the ability to check its constraints indices against
a minimum and a maximum, and set an invalidindex status.

In this status, the getValues returns an emptylist, as in the case with invalid geometry types.
2020-07-01 14:04:25 +02:00
Abdullah Tahiri
7055b5ef0f GCS: Prevent that reference constraints affect the result of a redundant solving
================================================================================

Solves the part of this described bug relating to reference constraints affecting the diagnosis of redundant constraints:
https://forum.freecadweb.org/viewtopic.php?p=410195#p410195
2020-07-01 14:04:25 +02:00
Abdullah Tahiri
ffaa92d29b GCS: Add debug code to identify the popularity contest selected redundant that is removed 2020-07-01 14:04:25 +02:00
Abdullah Tahiri
926625b678 Sketcher: Use move semantics wherever sensible
==============================================

Take advantage of PropertyGeometryList setValues() move overload in order to make code more readable and prevent
memory leaks (mostly by inadvertedly not deleting cloned geometry and constraints).

PropertyGeometryList and PropertyConstraintList are vectors of heap allocated pointers. Copying a vector
makes a shallow copy, not a deep copy (the pointers are the same in the copy).

For property management, setValues() function taking a const reference effectively make a deep copy of all
pointed objects. This means that heap allocated pointers of the client class passed to these functions must be
released by the client. While this sounds sensible, forgetting to is easy. In the cases where the developer
remembered to release these pointers, extra code is needed just for memory management.

This commit does not seek a substantial performance increase that would justify rewritting the code, although code
may be slightly faster sometimes.

Functions where setValues() is conditional are not changed to move semantics, as it makes no sense to make a deep copy to sometimes
perform a second deep copy later on. This code still uses const ref setValues().

CHECKS performed to refactored functions with this commit:

1) That the vector is NOT used after moving its content.

2) That whereever there is a clone(), there must be EITHER
    -a std::move if using rvalue setValues()
    OR
    - a delete to free the heap memory after setValues if using the const ref setValues()

3) That memory is released if an exception occurred.

N.B.: A couple of memory leaks are fixed in this commit too.
2020-07-01 14:04:25 +02:00