Commit Graph

23599 Commits

Author SHA1 Message Date
Yorik van Havre
9324b0aa56 Merge pull request #4216 from marioalexis84/draft-draftify
Draft: Replace Part.getSortedClusters by Part.sortEdges in draftify function
2021-01-04 12:33:55 +01:00
Yorik van Havre
5fca0232d7 Merge pull request #4236 from bitacovir/New_Std_View_Icons1
Add SVG icons of eight Std View menu commands
2021-01-04 12:31:46 +01:00
Yorik van Havre
f1b644d176 Merge pull request #4235 from marioalexis84/draft-facebinder
Draft: Fix multiple crashes when using modification functions - fixes #0004243, #0003971
2021-01-04 12:30:56 +01:00
Yorik van Havre
914e10c627 Merge pull request #4239 from carlopav/fix_draft_move_with_copy
Draft: change in default Draft.makeCopy
2021-01-04 12:18:54 +01:00
Yorik van Havre
5803784377 Merge pull request #4242 from realthunder/HelpDonate
Gui: add 'Donate' to Help menu
2021-01-04 12:05:16 +01:00
Zheng, Lei
3ea1486071 Gui: fix external edit reset crash
By making sure to signal from the owner document of the editing object.
The owner document of the editing object may be different from the
editing document in case of editing external linked object.
2021-01-04 12:01:00 +01:00
Zheng, Lei
d45122f45f Gui: add 'Donate' to Help menu 2021-01-04 10:43:37 +08:00
Bernd Hahnebach
22ed94e118 FEM: calculix solver, typos, thanks to UR_ 2021-01-04 00:52:33 +01:00
sliptonic
19ea3d28f5 Merge pull request #4234 from mlampert/bugfix/drilling-op-tool-attributes
[Path]: Check for CuttingEdgeAngle existance before using it for drill tip calculation
2021-01-03 16:42:04 -06:00
sliptonic
2b6f3ba84c Merge pull request #4237 from Schildkroet/centroid_post
[PATH] Updated centroid post
2021-01-03 16:41:22 -06:00
sliptonic
b9867ab7ec Merge pull request #4233 from Schildkroet/adaptive_fix
[PATH]: Added missing attribute for adaptive
2021-01-03 16:39:35 -06:00
Patrick F
eae5d56cf9 [PATH] Bugfix centroid_post 2021-01-03 17:21:05 +01:00
carlopav
79aa9ed0c4 Draft: change in default Draft.makeCopy
always copy with dependencies when copying App::Part and PartDesign::Body
.
2021-01-03 15:10:29 +01:00
Mateusz Skowroński
712f6c1251 Fix Qt deprecation warnings. QPrinter::orientation() and QPrinter::setOrientation() are obsolete. 2021-01-03 15:08:10 +01:00
mlampert
9e846c66f7 Merge branch 'master' into bugfix/drilling-op-tool-attributes 2021-01-02 18:02:37 -08:00
Patrick F
ae761583a6 Updated centroid post 2021-01-02 21:37:32 +01:00
bitacovir
7587658ae3 Add SVG icons of eight Std View menu commands 2021-01-02 11:55:58 -03:00
wmayer
50c3cbf005 TechDraw: [skip ci] restore TAB order of TaskBalloon dialog 2021-01-02 12:00:01 +01:00
donovaly
a9da6194a5 [TD] update balloon dialog
2 weeks ago the properties EndTypeScale and LineVisible were added but not to the dialog.

This PR adds them t the balloon dialog-

It also took the opportunity to cleanup the code:
- add missing tooltips
- uniform tooltips in App and Gui
- uniform the UI element names
2021-01-02 11:49:20 +01:00
Mateusz Skowroński
ea6e8e9906 Fix build warnings from deprecated Boost headers (1.74) 2021-01-02 10:43:56 +01:00
Mateusz Skowroński
e6032b7d53 Fix Qt deprecation warnings. QPrinter::paperRect() and QPrinter::pageRect() are obsolete. 2021-01-02 10:39:16 +01:00
marioalexis
4d9e29418a Draft: Fix multiple crashes when using modification functions - fixes #0004243 2021-01-02 02:15:43 -03:00
Markus Lampert
c077672add Check for CuttingEdgeAngle existance before using it for drill tip calculation. 2021-01-01 20:53:28 -08:00
Patrick F
36526d7080 Added missing attribute 2021-01-02 01:46:28 +01:00
sliptonic
01072f3709 Merge pull request #4224 from realthunder/FixPathCrash
Path: fix crash on edit
2021-01-01 15:24:26 -06:00
sliptonic
2203dcec93 Merge pull request #4214 from mlampert/bugfix/dangling-signal-registration
[Path]: bugfix/dangling signal handler error
2020-12-31 14:14:44 -06:00
sliptonic
ecfd3e7032 Merge pull request #4225 from Russ4262/patch-1
Path: Centroid post - Fix isinstance() `item.Proxy` error
2020-12-31 13:11:55 -06:00
Russell Johnson
08ec99a24f Path: Fix isinstance() item.Proxy error
Some items in `objectList` do not contain a `Proxy` child and cause a fatal error in post processing with this post module.
2020-12-31 08:50:38 -06:00
Zheng, Lei
3ae9a08ee6 Path: fix crash on edit
Many Path object forward its editing operation to the job object. It is
possible that some editing option change may lead to removing of the
editing object (e.g. changing stock type) causing crash. It is possible
to just open the task panel without setting any editing object by
returning False in ViewProvider.setEdit()
2020-12-31 21:07:56 +08:00
wmayer
f9bcfada1a Gui: [skip ci] re-add removed SVG icon, remove duplicate entry 2020-12-31 12:52:06 +01:00
mlampert
c3f329442c Merge branch 'master' into bugfix/dangling-signal-registration 2020-12-30 18:32:26 -08:00
donovaly
82ec99dbc1 [TD] fix regression for balloon text separators
as reported here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53664 the balloon text separation no longer works.

The regression was introduced by commit 05577c267 . The mistake thereby was that the textHeight is already handled before the separators and that rectangular balloons behave differently because of the separator feature.
2020-12-30 23:59:15 +01:00
mlampert
26c63c8ca8 Merge branch 'master' into bugfix/dangling-signal-registration 2020-12-30 13:33:29 -08:00
bitacovir
75f78f9407 Replace SVG icons of six Std View commands 2020-12-30 20:38:03 +01:00
donovaly
bd1f06cf72 [TD] cleanup preferences
as discussed here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53680&p=461356#p461349

* change default tolerance scale to 0.8
* the tolerance scale is directly applied, thus it must have non-italic label
* move tolerance scale to "Dimensions" tab
* move Fuzz settings to "Advanced" tab
* move Conventions to General tab since e.g. the projection angle is an important general setting
* add a note for the label font that this is also used for dimensions and that it there only has an effect for new ones
* use more useful step size of 0.1 for some scaling spinboxes
* sort UI fields in the C++ code to avoid doubled or missing entries (there were 2 doubled entries)
* uniform width of all preferences dialogs
* better alignment for the HLR dialog
2020-12-30 20:22:27 +01:00
Abdullah Tahiri
942c40227e Sketcher: Fix lock constraint reference mode
============================================

Fixes:
https://forum.freecadweb.org/viewtopic.php?p=461600#p461517
2020-12-30 20:20:20 +01:00
Abdullah Tahiri
2625aabe25 Sketcher/GCS: New Block constraint fixes
========================================

Previous versions relied on a heuristic that proved insufficient for cummulative use of the Block constraint.
The effect is that Block constraints stopped blocking, which is a major bug, as it lead to inadvertedly moving
geometry that was supposed to be blocked.

Fixes:
https://forum.freecadweb.org/viewtopic.php?f=13&t=53515&start=30#p461215
(Thanks Chaospilot)

Know problems with old block constraint (v0.18):
1. If driving constraints were present, they were ignored if inserted before the block constraint (to avoid
redundancy/conflicting). They resulted in

Principles of Working of the new block constraint:
1. Handling of the new block constraint is based two processes, a pre-analysis and a post-analysis. Pre-analysis
works *before* diagnosing the system in the solver. Post-analysis works *after* diagnosing the system in the solver.

2. Pre-analysis is directed to detect geometries affected *exclusively* by a block constraint. This is important
because these geometries can be pre-fixed when creating the solver geometry and constraints before GCS::diagnose()
via initSolution() AND because if no other constraint affects the geometry, the geometry parameters won't even appear
in the Jacobian of GCS, so they won't be reported as dependent parameters (for which post-analysis would be of no use).

3. Post-analysis is directed to detect Geometries affected *not only* by a block constraint. This is important
because pre-fixing these geometries would lead to redundant constraints. The post-analysis, enables to fix just the
parameters that fulfil the dependacy groups.

4. Post-analysis basically identifies which parameters shall be fixed to make geometries having blocking constraints
fixed, while not leading to redundant/conflicting constraints. These parameters must belong to blocked geometry. This
is, groups may comprise parameters belonging to blocked geometry and parameters belonging to unconstrained geometry. It
is licit that the latter remain as dependent parameters. The former are referred to as "blockable parameters". Extending
this concept, there may be unsatisfiable groups (because they do not comprise any bloackable parameter), and it is the
desired outcome NOT to satisfy such groups. It must be emphasised that there is not a single combination of fixed parameters
from the blockable parameters that satisfy all the dependency groups. However:
     1) some combinations do not satisfy all the dependency groups that must be satisfied (e.g. fixing one group containing
        two blockable parameters with a given one may result in another group, fixable only by the former, not to be satisfied).
        This leads, in a subsequent diagnosis, to satisfiable unsatisfied groups.
     2) some combinations lead to partially redundant constraints, that the solver will silently drop in a subsequent diagnosis,
        thereby reducing the rank of the system fixing less than it should.

5. The implementation rationale is as follows:
     1) The implementation is on the order of the groups provided by the QR decomposition used to reveal the parameters
        (see System::identifyDependentParameters in GCS). Zeros are made over the pilot of the full R matrix of the QR decomposition,
        which is a top triangular matrix.This, together with the permutation matrix, allow to know groups of dependent parameters
        (cols between rank and full size). Each group refers to a new parameter not affected by the rank in combination with other free
        parameters intervening in the rank (because of the triangular shape of the R matrix). This results in that each the first column
        between the rank and the full size, may only depend on a number of parameters, while the last full size colum may dependent on
        any amount of previously introduced parameters.
     2) Thus the rationale is to start from the last group (having **potentially** the larger amount of parameters) and selecting as blocking
        for that group the latest blockable parameter. Because previous groups do not have access to the last parameter, this can never
        interfere with previous groups. However, because the last parameter may not be a blockable one, there is a risk of selecting a parameter
        common with other group, albeit the probability is reduced and probably (I have not demonstrated it though and I am not sure), it
        systematically leads to the right solution in one iteration.

GCS: Change dependency group from std::set to std::vector to prevent reordering of parameters.
2020-12-30 18:59:15 +01:00
Aapo
079b8ff5c3 [TD] DrawViewDimension Tolerances, print zero tolerances without plus sign and decimals. 2020-12-30 18:49:59 +01:00
donovaly
30fcddae40 [TD] fix bug with angular and small values
* angular as reported here: https://forum.freecadweb.org/viewtopic.php?f=35&t=53473&start=10#p461507
* small values: since we convert to e.g. mm, we must then not output e.g. 'µm'
* also a code optimization, fix a typo, removal of a meanwhile misleading comment
2020-12-30 16:20:27 +01:00
Yann Diorcet
81a5ec5e55 LinearPattern: Support 1 occurrence
When using linear pattern with expression, this can be usefull to have only one
occurence (the original one), which can't be done with the following
implemenation. This commit change this behaviour by allowing this value.
2020-12-30 14:49:54 +01:00
marioalexis
60dfd2552b Draft: Replace Part.getSortedClusters by Part.sortEdges in draftify function 2020-12-29 23:21:33 -03:00
wmayer
0f31c87cc9 Boost: [skip ci] Fix build warnings from deprecated Boost headers (v1.75) 2020-12-29 15:34:25 +01:00
wmayer
ed3acd466d SMESH: [skip ci] fix -Wdelete-non-virtual-dtor 2020-12-29 10:36:07 +01:00
Mateusz Skowroński
2559f2d29c Fix build warnings from deprecated Boost headers (they are used internally by Boost). Thanks @wwmayer for the hint. 2020-12-29 10:20:53 +01:00
Abdullah Tahiri
4ea97faa5b Sketcher: check for BSpline knot instead of construction point
==============================================================

Previously construction points was used to code bspline knots.
Now construction points are normal sketcher points, which can be
made defining.

This commit renames and adapts the checks for fixed geometry.

fixes:
https://forum.freecadweb.org/posting.php?mode=quote&f=3&p=461472#pr461472
2020-12-29 07:22:21 +01:00
Markus Lampert
5f57b0f314 Remove event registration when task panel is destroyed. 2020-12-28 19:45:08 -08:00
Mateusz Skowroński
5dca59d824 Fix GCC warnings: type qualifiers ignored on cast result type [-Wignored-qualifiers] 2020-12-28 23:17:26 +01:00
Mateusz Skowroński
6075ba3085 Fix GCC warnings: catching polymorphic type by value [-Wcatch-value=] 2020-12-28 23:17:26 +01:00
luz paz
4327243a0a Sketcher: Fix typos and code linting [skip ci] 2020-12-28 23:15:22 +01:00
luz paz
472168fc15 Fix typos [skip ci]
Typos ffound via `codespell v2.1.dev0`  
Also includes fixes in deprecated code of `src/Mod/Assembly`
2020-12-28 23:14:04 +01:00