Commit Graph

13847 Commits

Author SHA1 Message Date
Abdullah Tahiri
03c3539dbf GCS: Improvement in redundant constraint detection
==================================================

The solver uses some heuristics to determine the "redundant to remove" and notify it to the user.

Basically it would pick the solver redundant constraint that affects most groups of redundants (popularity contest).

In the simple cases, all the redundants are equally popular and the popularity contest is untied by using the tagid (let say for simplicity it is the number at sketcher level Constraint3, the tagid=3).

This means that in simple cases, the solver systematically decides that the redundant constraint to handle from those showing a linear dependency is the one appearing the last.

This commits changes the way to untie the popularity contest, by giving more priority to those sketcher constraints that need a lower number of solver constraints (in other words,
those constraints that remove a lower amount of DoF). In case of tie, the tagid is then used to break the tie.

At least:
fixes #3434
fixes #1557
2018-05-31 11:41:26 +02:00
Abdullah Tahiri
9e901dbc59 GCS: Fix report view formating and duplicated endline 2018-05-31 11:41:16 +02:00
Abdullah Tahiri
d75be15f64 Sketch: DoF finder icon/resource file 2018-05-31 11:41:04 +02:00
Abdullah Tahiri
f7a7d2bade Sketcher Toolbar: Removing DoF finder from the toolbar, as it can be accessed from the solver messages now
- Renaming of command
2018-05-31 11:40:53 +02:00
Abdullah Tahiri
14c7349e2e Sketcher: DoF finder command while using the default SparseQR
=============================================================

- Modification to transparently switch from SparseQR to DenseQR and back to SparseQR when using the DoF finder command.
- Command Tools dof finder command name change
2018-05-31 11:40:40 +02:00
Abdullah Tahiri
1d63ed717a Sketcher: Support for clickable DoFs to launch DoF finder 2018-05-31 11:40:28 +02:00
Abdullah Tahiri
9926105643 Solver: solver sketch level support for driven constraints and parameters
- Support for addition of driving information to GCS constraints
- Support for keeping track of value parameters of driven constraints
- Support for getting which QR algoritm is being used at GCS level
2018-05-31 11:40:16 +02:00
Abdullah Tahiri
858f4cb85b GCS: Full detection of dependent parameters with Dense Full Household pivoting QR decomposition
- Improve Debug information.
- Support for addition of constraints with driving information for the solver constraints.
- Removal of the driven constraints from the Jacobian for QR decomposition
- Removal of the value freewheeling parameter from the Jacobian for QR decomposition
- Full detection of dependent parameters where DoF are present for Dense QR.
2018-05-31 11:40:05 +02:00
Abdullah Tahiri
d531e98eac GCS: Support for solver constraints to store driven/driving status 2018-05-31 11:39:53 +02:00
Abdullah Tahiri
ce4503ae40 Sketcher: New Command to select geometric elements with dependent parameters 2018-05-31 11:39:41 +02:00
Abdullah Tahiri
6f7e06fa49 GCS: Extension of solver geometric elements to store whether they have dependent parameters 2018-05-31 11:39:28 +02:00
Abdullah Tahiri
ed25902e12 Solver: Solver Sketch level dependent parameters and solver geometric element management 2018-05-31 11:39:15 +02:00
Abdullah Tahiri
2e70d9c75f GCS: Solver dependent parameters retrieval 2018-05-31 11:39:02 +02:00
looooo
8e2c682a3d fix windows problem:
https://forum.freecadweb.org/viewtopic.php?f=4&t=29014
2018-05-31 11:02:33 +02:00
looooo
d38fabf264 cmake:occt: add fallback 2018-05-31 11:02:33 +02:00
looooo
baed57f01a conda: osx configuration 2018-05-31 11:02:33 +02:00
Mark Ganson TheMarkster
2c982e0c45 Remove extra definition of obj.IntervalZ
Remove extra definition of obj.IntervalZ in Draft array object.

Was:
obj.IntervalZ = Vector(0,0,1)
obj.IntervalZ = Vector(0,0,0)

Now:
obj.IntervalZ = Vector(0,0,1)
2018-05-31 10:58:58 +02:00
Yorik van Havre
262d7c0cd0 Merge branch 'master' of github.com:FreeCAD/FreeCAD 2018-05-30 19:07:48 -03:00
wandererfan
2760dabb3c Format Dxf Group Codes as 3 chars 2018-05-30 19:06:58 -03:00
wmayer
009b18a553 expose function to Python to get optimal bounding box 2018-05-30 21:27:49 +02:00
wmayer
b8fca77c5a respect settings of locatation navicube when creating a new view 2018-05-30 09:45:44 +02:00
wandererfan
3b02ff2a94 Fix typo in AddonManager 2018-05-29 09:57:10 +02:00
wmayer
b54f0353b0 revert commit d1588052ff 2018-05-29 09:38:23 +02:00
wandererfan
73d597710f Write Dimension Blocks to Dxf file 2018-05-28 19:54:45 +02:00
wandererfan
064a261cc2 Add Header with version to dxf output file 2018-05-28 19:54:45 +02:00
wandererfan
a6e9eec5ad Avoid Qt warning re mdi window not in workspace 2018-05-28 13:27:11 -04:00
wandererfan
c96d72bd67 Ignore selection changes while closing Page 2018-05-28 13:26:26 -04:00
Janne Keränen
6781a8167f Correct small bug in CompoundFilter in command line
Without this, CompoundFilter does not work in Python script in non-GUI-mode.
See:
https://forum.freecadweb.org/viewtopic.php?f=10&t=27593&p=222303
and
https://www.freecadweb.org/tracker/view.php?id=3381
2018-05-28 16:55:15 +02:00
Przemo Firszt
1a71777f5f Fix base number of commits
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2018-05-28 16:51:53 +02:00
wandererfan
0ea75683f1 Fix #3477 Unintended Deletion
- original fix for #3477 presented message box for each
  inactive selected item.  Now it presents 1 message box
  per document, like the check for deletion of linked
  objects.
2018-05-28 16:46:31 +02:00
pekkaroi
8b0b3df76c PathSimulator, fix typo false->False 2018-05-28 10:27:53 -03:00
pekkaroi
1a3996783e Improve backwards compatibility 2018-05-28 10:12:07 -03:00
pekkaroi
0c90118cb3 Cleaning 2018-05-28 10:12:06 -03:00
pekkaroi
3895c9a492 Improved naming of the new parameters 2018-05-28 10:12:06 -03:00
pekkaroi
1aa8601e07 Add IgnoreAbove parameter to not generate ramp above certain heights 2018-05-28 10:12:03 -03:00
looooo
432daa95c5 simplify cmake-setup of netgen and occt
using default cmake-configs to access cmake-variables
2018-05-28 14:23:05 +02:00
Bernd Hahnebach
6476cf4c6b FEM: mesh netgen command, fix meshing while task panel is opened 2018-05-28 12:22:11 +02:00
Bernd Hahnebach
fbf96728b8 FEM: material editor, add it to materials menue 2018-05-28 08:58:17 +02:00
Bernd Hahnebach
24a21ce83f FEM: menue entries, add submenue for materials 2018-05-28 08:58:17 +02:00
Bernd Hahnebach
c7879c28fe FEM: selection widget module, fix console print message 2018-05-28 08:58:17 +02:00
Bernd Hahnebach
be28744829 FEM: Python VP, add return variable to unSetEdit methods and improve reseting the edit mode 2018-05-28 08:58:17 +02:00
Bernd Hahnebach
7512fb5628 FEM: material widget, add button to fix material property editing 2018-05-28 08:58:10 +02:00
Abdullah Tahiri
468946bcde Sketcher: Fix crash on applying dimensional constraint to external element 2018-05-27 19:43:05 +02:00
wmayer
d1588052ff (tmp.) switch off Web module when building with Qt5 2018-05-27 19:03:26 +02:00
Przemo Firszt
db902b4622 Add fedora spec and support files
That will allow automatic fedora builds using COPR

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2018-05-27 18:46:58 +02:00
wmayer
0425c7f3c8 fixes #0003493: Python Shape.isClosed() returns false for any solid, including primitive Parts 2018-05-27 15:10:44 +02:00
wmayer
4b089f9667 fix inconsistency with default value of random shape color 2018-05-26 18:52:58 +02:00
wmayer
7c010ab9a4 implement option to change corner of navi cube 2018-05-26 18:51:53 +02:00
wmayer
d15c7d0673 + option to disable navi cube
+ handle destruction of GL context in 3d viewer class
+ fix for OpenGL error message: 'Texture is not valid in the current context. Texture has not been destroyed'
2018-05-26 15:33:45 +02:00
wmayer
865f83b574 remove unrealiable implementation of ViewNormalToSketchPlaneCmd 2018-05-26 15:33:45 +02:00