Commit Graph

1716 Commits

Author SHA1 Message Date
Abdullah Tahiri
830932db4e Sketcher: Ability for SketchObject to create a list of dependent geometric elements 2018-06-09 11:02:43 +02:00
Abdullah Tahiri
0b37a92596 GCS: Improved point symmetry constraint
=======================================

The original implementation won't work when the point is already on the line. See:
https://forum.freecadweb.org/viewtopic.php?f=3&t=29115#p237397

The new implementation works on the projections of the vectors linking the two first points with the symmetry point on the vector linking the two first points.

This assures that there is no stability problem when the point is already on the symmetry axis.
2018-06-09 10:50:05 +02:00
Abdullah Tahiri
ed0c22cf56 GCS: Add convenience point constructor 2018-06-09 10:49:55 +02:00
Abdullah Tahiri
d02d0da7de Sketcher: Do not update point height when highlighted i.e. (pre)selected 2018-06-02 16:44:57 +02:00
Abdullah Tahiri
bf03c7bcb1 Sketcher: Empty list means all geometry for Python addCopy addRectangularArray and addMove 2018-05-31 14:36:21 +02:00
Abdullah Tahiri
39e82c79f6 Sketcher: New tool bar icon under the copy command to move 2018-05-31 14:35:54 +02:00
Abdullah Tahiri
7c586b6c1a Sketcher: move icon art 2018-05-31 14:35:14 +02:00
Abdullah Tahiri
cffa76b0cc Sketcher: Python support for moving Geometry 2018-05-31 14:34:58 +02:00
Abdullah Tahiri
7df7667774 Sketcher: Moving Geometry Support 2018-05-31 14:34:31 +02:00
Abdullah Tahiri
ec6eaa509d Sketcher: Improved B-Spline creation 2018-05-31 14:33:58 +02:00
Abdullah Tahiri
4805927170 Sketcher: Extend existing rendering order for lines to points 2018-05-31 14:31:29 +02:00
Abdullah Tahiri
dccb86a5db Sketcher: Optional extended naming for constraints widget giving first-second-third information 2018-05-31 14:29:00 +02:00
wmayer
3cb6890bcc suppress warning C4996 2018-05-31 13:42:35 +02:00
wmayer
717abd0cf3 fix string 2018-05-31 13:27:38 +02:00
wmayer
d4354af79b fix const correctness 2018-05-31 13:15:31 +02:00
wmayer
63cefaf4a6 fix const correctness 2018-05-31 12:49:23 +02:00
Abdullah Tahiri
8d7622b4a9 Sketcher: error message when trying to increase the degree of not-a-bspline fixes #3471 2018-05-31 11:42:24 +02:00
Abdullah Tahiri
bfef80f9c0 Sketcher: bspline knot increase wrong string fixes #3470 2018-05-31 11:42:11 +02:00
Abdullah Tahiri
8a31a6c5b4 Tests: Update test to remove redundants that failed to be detected with the old solver 2018-05-31 11:41:59 +02:00
Abdullah Tahiri
60a57107cf Sketcher: fix failure to notify solver issues, like redundancies, when using setUpSketch in SketchObject 2018-05-31 11:41:48 +02:00
Abdullah Tahiri
61b1a15524 Fix MatrixIndexType 2018-05-31 11:41:37 +02:00
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
Abdullah Tahiri
468946bcde Sketcher: Fix crash on applying dimensional constraint to external element 2018-05-27 19:43:05 +02:00
Abdullah Tahiri
ab478f947c Sketcher: Section Command enabling the clipping planes 2018-05-25 17:24:57 -03:00
Abdullah Tahiri
c3f0513cca Sketcher: Section view artwork 2018-05-25 17:24:57 -03:00
Abdullah Tahiri
c039bfb011 Sketcher: Snap polyline arcs to 45 degrees pressing ctrl fixes #3472 2018-05-21 10:45:13 -03:00
luz.paz
ed1470e3d2 whitespace cleanup 2018-05-19 12:06:34 -04:00
luz.paz
6e64b4f75d Misc. typos 2018-05-19 12:06:34 -04:00
luz.paz
6656d9c6de follow-up source typos 2018-05-11 10:02:56 -03:00
luz.paz
420c2d7c03 Source typos fixes 2018-05-11 10:02:56 -03:00
luz.paz
d4fa4ec21e removed newline altogether 2018-05-02 15:48:01 -04:00
luz.paz
6de9a32066 Used QChar::fromLatin1('\n') instead 2018-05-02 14:57:49 -04:00
luz.paz
5cd5c6ad8c Added QString::fromUtf8("\n") 2018-05-02 00:50:06 -04:00
luz.paz
a529ba1787 Crowdin: more fixes 2018-05-02 00:50:06 -04:00
luz.paz
fb224b0090 Crowdin: fix in different WBs 2018-05-02 00:50:06 -04:00
Abdullah Tahiri
dc79d4172d Sketcher: fix menu periodic bspline call 2018-04-22 07:39:15 +02:00
Abdullah Tahiri
0ac32464e4 Sketcher: Bug fix - prevent inter part/body links
=================================================

With the support for external geometry during carbon copy, it was introduced a way for creating inter-part/inter-body links. See:
https://forum.freecadweb.org/viewtopic.php?f=10&t=27700&p=223736#p223736

This commit closes this door, while still allows carbon copy with external geometry support within the same body.
2018-03-30 21:00:24 +02:00
Yorik van Havre
d4f835ab39 Merged translations from crowdin 2018-03-26 18:52:02 -03:00