Commit Graph

25366 Commits

Author SHA1 Message Date
wmayer
0579052cbc PD: comment out dead code 2021-12-03 20:18:46 +01:00
0penBrain
89706839e0 [Gui] Tree: implement collapse/expand system with keys
Implemented using Alt modifier + arrow keys
 * Alt+Left : collapse selected items
 * Alt+Right : expand selected items
 * Alt+Up : expand selected items with all tier-1 children collapsed
 * Alt+Down : expand selected items with all tier-1 children expanded
2021-12-03 18:08:47 +01:00
0penBrain
2f8f4d6a7f [Gui] UserEditMode : fix operating on PartDesignObject 2021-12-03 16:53:30 +01:00
wmayer
945028847a PD: avoid include generated .ui file in header file 2021-12-03 15:59:15 +01:00
wmayer
e9c4f4acc1 PD: minor cleanup in view provider headers 2021-12-03 15:58:23 +01:00
wmayer
b165947625 PD: cleanup the mess with boolean arguments and replace them with a bitmask 2021-12-03 14:46:19 +01:00
Yorik van Havre
9135b5ec90 Merge pull request #5219 from luzpaz/gender-neutral-fixes
Make source code comments use gender neutral pronouns
2021-12-03 13:36:17 +01:00
wmayer
0711f6003b PD: use button group to make mid-plane and reversed option mutual exclusive 2021-12-03 00:01:49 +01:00
sliptonic
8a5aaf35a3 Merge pull request #5217 from sliptonic/feature/rotationgenerator
[PATH] rotation generator and tests
2021-12-02 15:40:06 -06:00
luz paz
d877ee4d47 Make source code comments use gender neutral pronouns
The changes also include some grammatical fixes as well.
2021-12-02 16:18:04 -05:00
wmayer
d4f0eb5bfb PD: fix ProfileBased::getAxis
Introduce an enum to verify the axis depending on the used context.
* For helix no restriction is needed
* For Pad/Pocket the axis must not be parallel with the sketch plane
* For Revolve/Groove the axis must not be perpendicular with the sketch plane
2021-12-02 17:24:18 +01:00
wmayer
5824a64b61 App: expose more methods of Document class to Python 2021-12-02 11:46:13 +01:00
wmayer
74c4d17695 TD: fix C++20 warning: bitwise operation between different enumeration types [-Wdeprecated-enum-enum-conversion] 2021-12-02 10:12:35 +01:00
wmayer
b2c1b574d4 Gui: fix C++20 warning: bitwise operation between different enumeration types [-Wdeprecated-enum-enum-conversion] 2021-12-02 09:59:31 +01:00
Syres916
32a01cab14 Change macro path selection from File to Folder 2021-12-02 02:09:51 +01:00
wmayer
8dd1101506 Gui: fix C++20 warning: bitwise operation between different enumeration types [-Wdeprecated-enum-enum-conversion] 2021-12-01 23:45:26 +01:00
wmayer
5e66475757 PD: fix build failure with C++20 2021-12-01 23:24:16 +01:00
wmayer
f610cdf2a0 Gui: fix build failure with C++20 2021-12-01 21:50:00 +01:00
sliptonic
4c31c729c0 draft generator and tests 2021-12-01 13:15:09 -06:00
0penBrain
f568cc6d96 [Sketcher][Bugfix] Slot: fix segfault accessing empty vector 2021-12-01 18:48:05 +01:00
Yorik van Havre
b5d5f1ef04 Merge pull request #5214 from mdkus/master
Tools: small bug fix
2021-12-01 15:04:25 +01:00
Yorik van Havre
ea195ab2be Merge pull request #5178 from Roy-043/Draft-housekeeping-import-is_group-get_windows
Draft housekeeping: import is_group and get_windows in Draft.py
2021-12-01 15:02:54 +01:00
Yorik van Havre
f938c74929 Merge pull request #5202 from Roy-043/Draft-fix-3-snap-issues
Draft: fix 3 snap issues
2021-12-01 15:01:27 +01:00
Yorik van Havre
c40f919d43 Merge pull request #5206 from Roy-043/Draft-fix-layer-and-style-handling-of-point-color-and-point-size
Draft: Draft_SetStyle and Draft_Layer did not handle PointColor and PointSize.
2021-12-01 14:57:09 +01:00
wmayer
33fa183392 App: [skip ci] improve importing a Python module when passed as program argument 2021-12-01 13:34:24 +01:00
mdkus
ad5e61c216 Merge branch 'master' of https://github.com/mdkus/FreeCAD 2021-12-01 09:21:31 +01:00
mdkus
335a489783 Update CreatePyModule.py
Small bug fix: in comparison to CreateModule.py this codeline is missing in CreatePyModule.py, so CreatePyModule.py doesn't work,fine without it (tested under Win 7 and Win11)
2021-12-01 09:20:36 +01:00
Mark O'Donovan
710fec7062 Replace deprecated qt functions toList() & toSet() (#5213)
* Replace deprecated qt functions toList() & toSet()

QSet<QString>::toList() and QStringList::toSet() are both
deprecated.

* Add back support for qt < 5.14
2021-12-01 04:31:34 +01:00
wmayer
1a96fa60ce Part: add exception handling to Face.makeEvolved/Wire.makeEvolved 2021-11-30 20:04:31 +01:00
wmayer
c5ffdd4318 Part: add module with enums 2021-11-30 20:03:26 +01:00
wmayer
d41a9a1e5c Part: implement Part.Wire.makeEvolved and Part.Face.makeEvolved 2021-11-30 18:17:29 +01:00
wmayer
d56b05678f PD: refactoring of TaskHelixParameters 2021-11-30 11:47:06 +01:00
wmayer
1ecc59d6a4 PD: fix crash in TaskHelixParameters::updateStatus() 2021-11-30 10:36:36 +01:00
wmayer
0cd9ed7429 PD: refactoring of TaskHelixParameters, update status after each recompute 2021-11-29 22:14:14 +01:00
wmayer
3b4012719e PD: handle language change in TaskHelixParameters 2021-11-29 20:14:29 +01:00
0penBrain
1188f7d7a1 [Sketcher] Allow to autoconstraint slot horizontal/vertical 2021-11-29 14:38:53 +01:00
0penBrain
9b59233e53 [Sketcher] Introduce hack to be able to vertically/horizontally auto-constrain primitives
Adds a new type "VERTEX_FOR_PRIMITIVE" that will analyze the direction for vertical/horizontal but not for tangent

 If defined, makes use of GeoId item of AutoConstraint struct (instead of last geometry) to apply the horizontal/vertical
 constraint. This allow this constraint to be applied on an arbitrary geometry.
2021-11-29 14:38:53 +01:00
0penBrain
a00f2877f3 [Sketcher] Ability to snap slot horizontal/vertical
Triggered by pressing Ctrl key when creating the slot
 Extra constraint is added in case snapping is enabled
2021-11-29 14:38:53 +01:00
Uwe
2f82eee220 [GUI] set dialog width to the one of the other preferences ones 2021-11-29 12:54:21 +01:00
Uwe
6051148b66 [PD] use existing definition for PI in Helix
- also a lot of style fixes kindly done by MSVC
2021-11-29 12:05:10 +01:00
Uwe
bd2dbeb906 [PD] allow negative helix growth
Helices that become smaller with every turn are geometrically perfectly valid. Therefore we cannot forbid this.

(For example when creating a helix from a face you often cannot move it so that you can apply a positive growth.)
2021-11-29 11:29:27 +01:00
Uwe
4a3d211378 [PD] prevent invalid helix geometry
in the height-turns-growth model height and growth must not be equally zero
2021-11-29 01:34:03 +01:00
Uwe
c302582823 [PD] allow to move sweep sections
Now that we have the feature that sweeps can have vertices as end or begin of a sweep, there is the need for the feature to move sections. For example vertices may only be the last section.
2021-11-29 00:13:23 +01:00
Uwe
42c3843bed [PD] fix increment of helix growth
- it is not sensible that all helix geometries use 1 as increment in the dialog but the growth uses 5. Looking at the PR that introduced this feature it seems that this was just a copy issue from the angle edit since this uses 5 as increment.

- the other changes are from Qt's Designer
2021-11-29 00:11:40 +01:00
Jonas Bähr
021cdd7acc [PD] Helix: Offer profile's normal as axis
Previously, only the vertical and horizontal axis of the profile was
selectable in the task panel of the additive/subtractive helix. Now the
profile's normal axis can be selected, too. This now allows to create
helical extrusions or "twisted pockets".

The order of the GUI entries was chosen to be in line with the order of
axis selection of the multi-transform parameters.
The actual feature's implementation needed adaption for this special case
as in some places a unit vector (`gp_Dir`) was derived from the cross-
product of axis and profile normal -- a null-vector when the axis *is*
the normal. This caused the gp_Dir's ctor to throw.
2021-11-28 23:57:41 +01:00
Ajinkya Dahale
5e3ad45ef4 [PD] Use compare to compare strings instead of substr
Used when finding subelements of a feature. Many of the comparisons used to also
check for string lengths, but as far as I can tell they are not strictly
necessary (see https://www.cplusplus.com/reference/string/string/substr/) and
just `substr` can be used without them. However, `compare` explicitly is for
comparing, and does not make a new object that `substr` does.
2021-11-28 22:05:46 +01:00
Ajinkya Dahale
2fcee8ea82 [PD] Support "punctual" sections for PD Pipe
Similar to PR #5170 for loft. This commit squashes the following commits.

[PD] Refactor `Pipe::execute` and support point sections

[PD] Allow point profile in selection-based pipe workflow

[PD] Only add sketch subs if it is vertex

[PD] Make both end faces of pipe regardless of point sections

Earlier we were checking if these faces correspond to point sections, but
apparently the end faces are independent of the order in which the sections are
added, so the "front" may be the face closest to the last added section, rather
than the "profile". Creating null faces and adding them for sewing together into
a solid does not appear to have side-effects so far.
2021-11-28 19:19:16 +01:00
Roy-043
b6381e325f Draft: fix layer handling of PointColor and PointSize
Draft_Layer did not handle PointColor and PointSize.
2021-11-28 11:52:07 +01:00
Roy-043
cbf9fbd79d Draft: fix style handling of PointColor and PointSize
Draft_SetStyle did not handle PointColor and PointSize.
2021-11-28 11:50:49 +01:00
0penBrain
0d52ef4c13 [Sketcher] Floating point computation immunity for carbon copy parallel/aligned checks 2021-11-27 08:58:25 +01:00