Commit Graph

2053 Commits

Author SHA1 Message Date
Abdullah Tahiri
a4192448a9 Sketcher: redefine filters and groups of filters
================================================

Filters redefined to match:
https://forum.freecadweb.org/viewtopic.php?p=537777#p537777

Group "Datum" stops comprising group "Reference"

Datums+References are now selectable as a multi-filter.

Fixes the akward behaviour of multiselection:
https://forum.freecadweb.org/viewtopic.php?p=537722#p537722

Now when a selection of a filter causes a group of filters comprising the selection to be fulfiled, this is also checked.
2021-10-04 16:30:40 +02:00
Abdullah Tahiri
5715ceb728 Sketcher: Reorder filter entries to match toolbar
================================================

https://forum.freecadweb.org/viewtopic.php?p=537777#p537777
2021-10-04 16:30:28 +02:00
donovaly
9cea75e9b8 adjust preferred size to contain also the ALL entry 2021-10-04 16:25:14 +02:00
donovaly
8a3f8cff48 [Sketch] Selection improvements
as described here: https://forum.freecadweb.org/viewtopic.php?f=17&t=60569&p=537615#p537615
2021-10-04 16:25:14 +02:00
Abdullah Tahiri
1539467631 Sketcher: Constraint widget Multi Filter feature
================================================

This feature adds a new filter entry "Multiple Filters" in the combobox of the filter.

This enables to define a "Multiple Filter" based on the aggregation of individual filters. So it basically provides for a user defined filter based on constraint types.

This "Multiple Filter" defaults to "All Constraints", and can be defined using the button "..." next to the filter combobox.

The "Multiple Filter" works on the list of constraints, as any other filter, limiting the elements shown in the list to match the multi filter definition.

The "Multiple Filter" interacts with the visibility options as any other filter. This is, in visibility non-tracking mode, it does not change the visibility. The Buttons "Hide Listed" and
"Show Listed" can be operated in this mode as any other filter.

In visibility tracking-mode, it will adapt the visibility of the constraints in the 3D view to the "Multi Filter" definition (exactly as it would to any other filter with its own definition).
2021-10-02 18:21:23 +02:00
Abdullah Tahiri
9d7c5e48b0 Sketcher: Improve text of the constraint widget 2021-09-29 19:39:20 +02:00
wmayer
6f20e3e4d8 Gui: remove QT_TR_NOOP from command group names and use "CommandGroup" as context string 2021-09-29 16:31:55 +02:00
wmayer
3edea9891f Sketcher: [skip ci] remove superfluous QT_TRANSLATE_NOOP from Sketcher commands 2021-09-29 15:46:06 +02:00
Yorik van Havre
140e03301e Updated ts files 2021-09-29 14:32:12 +02:00
Abdullah Tahiri
086b1d2aac Sketcher: Improve the performance of showing/hiding constraints
===============================================================

Forum test and comments:
https://forum.freecadweb.org/viewtopic.php?p=536445#p536390

What?

Showing/hidding a large amount of constraints is very time consuming

Why?

Because SketchObject Constraints property was being set for each individual constraint

Solution is to use the new setVirtualSpace overload taking a list or a tuple, so that all the
constraints are set in a single operation.

In a Debug system with the test of the forum the time taken by the operation is reduced
from 7 minutes to around 2-3 seconds.
2021-09-28 20:08:46 +02:00
Abdullah Tahiri
b9dcac559c Sketcher: Python - enable using the setVirtualSpace command individually or by group 2021-09-28 20:07:41 +02:00
Abdullah Tahiri
7872d0b3bc Sketcher: Overload setVirtualSpace to allow setting a group of constraints 2021-09-28 20:06:52 +02:00
FreeCAD-Tools
5971640e11 Update CommandSketcherVirtualSpace.cpp 2021-09-27 16:09:54 +03:00
FreeCAD-Tools
1d1c126407 Update CommandSketcherTools.cpp 2021-09-27 15:59:31 +03:00
FreeCAD-Tools
b9590a7260 Update CommandSketcherBSpline.cpp 2021-09-27 15:57:12 +03:00
FreeCAD-Tools
d884273eb4 Update CommandCreateGeo.cpp 2021-09-27 15:55:48 +03:00
FreeCAD-Tools
aa4918fa71 Update CommandConstraints.cpp 2021-09-27 15:47:23 +03:00
FreeCAD-Tools
0efabc3861 Update CommandConstraints.cpp 2021-09-27 15:44:55 +03:00
FreeCAD-Tools
bbd39a4e57 Update CommandAlterGeometry.cpp 2021-09-27 15:39:17 +03:00
FreeCAD-Tools
e22335ec2e Update Command.cpp 2021-09-27 15:38:41 +03:00
Abdullah Tahiri
4847d5cab3 Sketcher: Rectangular Array Snap mode
=====================================

Rectangular Array gets a snap mode every 10 degrees when pressing CTRL (for consistency with Multiline arc, which also snaps using CTRL).

Request:
https://forum.freecadweb.org/viewtopic.php?p=535691#p535691
2021-09-25 21:58:14 +02:00
Abdullah Tahiri
380e123626 Sketcher: fix warning unreferenced local variable 2021-09-25 21:06:50 +02:00
Abdullah Tahiri
e0405d377f Sketcher: Hide/show constraints according to filter
===================================================

Updates the visibility to the filter selection on the moment of checking the "track filter selection" checkbox.
2021-09-24 13:33:27 +02:00
Abdullah Tahiri
4cc6fbfc5d Sketcher: Minor fixes sketcher radius/diameter presentation
===========================================================

Some minor fixes:

https://forum.freecadweb.org/viewtopic.php?p=535406#p535406

https://forum.freecadweb.org/viewtopic.php?p=535511#p535511
2021-09-24 06:57:59 +02:00
0penBrain
7485c7d805 [Sketcher] Add an option to get randomness in radius/diameter display angle 2021-09-24 06:57:09 +02:00
0penBrain
e0ca4cf93c [Sketcher] Display radius/diameter constraints with some angle
So they are easily differentiated from distance constraints
 Default angle can be customized with 'BaseApp/Preferences/Mod/Sketcher/RaDiaAngle'
2021-09-24 06:57:09 +02:00
0penBrain
50623c73ee [Sketcher] Code simplification by systematically using 'finishDistance' to determine label distance 2021-09-24 06:57:09 +02:00
Yorik van Havre
6ad3530981 Merged crowdin translations 2021-09-23 17:14:48 +02:00
Yorik van Havre
3573c5b21f Updated ts files 2021-09-23 17:04:05 +02:00
Abdullah Tahiri
6b9545fb0a Sketcher: Fix hide/show operations on Constraint Widget taking too long
=======================================================================

Fixes delay reported here:
https://forum.freecadweb.org/viewtopic.php?f=17&t=60569#p519685
2021-09-22 18:30:03 +02:00
Abdullah Tahiri
a7dc075790 Sketcher: Show All and Hide All buttons on Constraint Widget 2021-09-22 18:29:41 +02:00
Abdullah Tahiri
4cb0e4125b Sketcher: Constraint hiding/showing not working properly for combined constraint icons
======================================================================================

Hiden constraint icons should not be grouped into combined icons. This may also improve selection of combined (stacked) icons.

fixes #4590
2021-09-22 18:29:21 +02:00
Abdullah Tahiri
0facbfc140 Sketcher: Tracking of constraint visibility via contraint widget filter
=======================================================================

Add new option so that the 3D view constraint visibility track the constraint widget filter selection.

It maintains internally two mutually exclusive virtual spaces and the ability to select one as visible (the other remaining hiden).
2021-09-22 18:29:10 +02:00
Abdullah Tahiri
113b78c1d8 Sketcher: Constraint Widget extended filter
===========================================

- Remove "Normal" as it did exactly the same as "All".
- Add "Geometric" to filter only Geometric (non datum) constraints
- Add all individual constraint types to filter.

As per request:
https://forum.freecadweb.org/viewtopic.php?p=534176#p534176
2021-09-22 18:28:59 +02:00
Chris Hennes
9afc4503ab [Sketcher] Refactor split code
LGTM complains about using continue statements inside a loop
whose condition is always false. In addition, the C++ core guidelines
recommend against using the do...while construct, and in this case it
was really serving as a goto, just hiding the actual goto keyword.
This commit replaces the loop and continue structure with simple
conditionals.
2021-09-17 23:43:12 +02:00
luz paz
c4d6bc1d9e Sketcher: fix mislabeled .ui cstring tag
Closes https://github.com/FreeCAD/FreeCAD-translations/issues/59  
Thanks @jakub-swierk for the patch!
2021-09-08 10:21:43 -04:00
Yorik van Havre
a9717a1e17 Merged crowdin translations 2021-09-07 11:26:48 +02:00
Yorik van Havre
73d5e2c7e1 Updated ts files 2021-09-06 15:32:07 +02:00
Yorik van Havre
0e32655826 Merge pull request #4945 from 0penBrain/sk3ptCircle
[Sketcher] 3-pt circle : allow tangent constraint for any click
2021-09-01 16:24:46 +02:00
Dirk Olbrich
29b6cd6579 Sketcher: display dimensional constraint name
- checkbox in sketcher settings ui to display dimensional constrain name
- option to format dimensional presentation string
2021-09-01 10:27:42 +02:00
Yorik van Havre
199e8a8d6e Merged crowdin translations 2021-08-26 14:51:36 +02:00
luz paz
4d21ffa904 Fix various typos 2021-07-31 09:46:50 +02:00
0penBrain
ae16290c23 [Sketcher] 3-pt circle : allow tangent constraint for any click 2021-07-28 14:21:55 +02:00
Yorik van Havre
834933866e Merged crowdin translations 2021-07-08 16:06:38 +02:00
Yorik van Havre
da508e30b0 Merged crowdin translations 2021-07-01 13:56:25 +02:00
luz paz
be5faf55c4 Sketcher: FIx typos in source comments [skip ci] 2021-06-29 20:07:30 +02:00
Yorik van Havre
acedf491f3 Merged crowdin translations 2021-06-24 17:22:19 +02:00
Yorik van Havre
7980f7b318 Updated ts files 2021-06-24 17:18:01 +02:00
donovaly
b841321fb4 [Sketch] fix menu entry wording
all other menu entries use lower case letters, thus do so also for the new tool
2021-06-21 13:56:23 +02:00
donovaly
e1756f8a16 [Sketch] change slot icons
change the slot icons to reflect the new selection/definition behavior
2021-06-21 13:56:03 +02:00