Commit Graph

958 Commits

Author SHA1 Message Date
Florian Foinant-Willig
7ffddb6f7d PD Extrude up to multiple faces or shape 2024-06-03 11:26:19 -05:00
Chris Hennes
5f601eb6c7 Merge pull request #12589 from NomAnor/pd-trans-body
Add a new mode to PD patterns that will transform the base feature's shape instead of the tool shapes
2024-06-03 10:46:33 -05:00
Chris Hennes
f331c91b89 Merge pull request #13317 from Ondsel-Development/add-prop-varset
Core: Add properties to variable sets
2024-06-03 10:34:57 -05:00
bgbsww
c4d0f3ed97 Toponaming: Restore use of AttachmentSupport 2024-06-01 11:49:58 -05:00
wmayer
3e23bd759b Mod: Fix several compiler warnings 2024-05-30 08:55:11 +02:00
wmayer
560cab6f31 clang/gcc: Add build option FREECAD_WARN_ERROR to force to make warnings into errors 2024-05-29 13:37:07 +02:00
Zheng, Lei
3c112b466d Toponaming: Missing code for shapebinder 2024-05-23 09:47:25 -04:00
André Althaus
ebad053c70 Change MultiTransform child detection to the previous method
isMultiTransformChild() tried to do a better job by checking
for a parent MultiTransform in the dependency list, but this
is unusable during initialization, when these dependencies are
not established.

The method is changed back to the previous one which only checks for
default property values. This will give false results during
initialization but not cause problems.
2024-05-23 12:23:32 +02:00
André Althaus
f4aa5879cc Fix solid feature detection for "Transform Body" mode
Because the Origins property is empty in "Transform Body" mode, the
features are detected as not solid.
This messes with the feature order on insertions and moves.

This is fixed by calling the isMultitransformChild() method of the
Transformed features instead of checking the Origins property in the
Body code.
2024-05-23 12:23:32 +02:00
André Althaus
f021ea6c7f Fix ambiguous setValue() call 2024-05-23 12:23:32 +02:00
André Althaus
f2c3ade1f5 Remove unused function 2024-05-23 12:23:32 +02:00
André Althaus
5c0aaa40d9 Modernize code 2024-05-23 12:23:32 +02:00
André Althaus
75bba376c4 Format code with clang-format 2024-05-23 12:23:28 +02:00
André Althaus
5790795f03 Add a TransformMode property to the pattern features
This property controls wether the selected features tool shapes are
transformed or the whole base feature's shape.
2024-05-23 12:22:26 +02:00
André Althaus
d213827319 Add function to check if a Transformed feature is a sub-feature of MultiTransform
This will check the in-list instead of relying on an empty Originals property.
2024-05-23 12:22:26 +02:00
bgbsww
c54a98718f TopoNaming: restore defenses against multisolids when enabled 2024-05-21 21:42:05 -04:00
bgbsww
db85748e7d Toponaming: fix shapebinder selection error 2024-05-21 21:41:26 -04:00
Pieter Hijma
b6026c98c9 Core: Add VarSets to Groups
If a Group is selected, add the VarSet to the group.
2024-05-21 09:59:49 +02:00
bgbsww
9e2a8343a0 Toponaming: Cleanup verified face calls 2024-05-20 17:48:01 -05:00
Florian Foinant-Willig
cded7480bf PartDesign: hide Suppressed property with FC_USE_TNP_FIX flag 2024-05-20 11:32:34 -05:00
Kacper Donat
302706be38 Gui: Add ability to disable single-solid rule by default 2024-05-20 12:25:36 -04:00
Kacper Donat
e4ed0d883f PartDesign: Introduce ability to disable single-solid rule
This adds "SingleSolidRuleMode" enum that controls if PartDesign will
enforce singular solid. By default the single-solid is enforced so
nothing changes for the user, it must be explicitly disabled by setting
new Allow Compound boolean property on a given body.

Default for this value is controled using user parameter under
Mod/PartDesign/AllowCompoundDefault
2024-05-20 12:25:36 -04:00
Kacper Donat
d0a35c8c03 PartDesign: Refactor single-solid rule enforcement
This refactors a single solid rule checking code from using the solid
count directly to using well abstracted `isSingleSolidRuleSatisfied`
method. This makes code easier to read and is the basis for next step
which is allowing users to disable this checks.
2024-05-20 12:25:36 -04:00
bgbsww
52ed6eb848 Toponaming: Bring in Chamfer, Fillet code and add tests (#14035)
* Toponaming: bring in missing code fragments in Sketcher

* Toponaming: Fix infinite recursion, remove debug cruft, rough in fillet test

* Bring in missing code; fix chamfers

* Toponaming: Add code for fillets and test
2024-05-15 19:43:30 -04:00
bgbsww
86abf074c0 Toponaming: bring in missing code fragments in PartDesign 2024-05-13 08:45:26 -05:00
bgbsww
5054cace46 Rework makeElementChamfer to match current parms, and add PartDesign code for Chamfers 2024-05-12 13:28:20 -05:00
wmayer
c2e3d61059 PD: Fix ShapeBinder::execute() if Support is empty
This fixes the reported regression: https://forum.freecad.org/viewtopic.php?t=87229
2024-05-10 15:06:22 +02:00
wmayer
f3637096e3 PD: Fix linter warnings 2024-05-10 15:06:22 +02:00
bgbsww
20cae6c026 Toponaming/Part: unify revolution changes 2024-05-02 18:50:02 -05:00
wmayer
2ea6bc17b6 Fix various compiler warnings:
* fix -Wunused-parameter
* fix -Wunused-function
* fix -Wunused-private-field
* fix -Wunused-variable
* fix -Winconsistent-missing-override
2024-04-30 16:59:31 +02:00
hlorus
6318586353 [PD] Add handlers for unified measurement facility 2024-04-29 09:27:22 -04:00
wmayer
491cb5ffcb PD: Fixes crash if sub-element name of reference axis is empty
This fixes #13656
2024-04-27 07:43:40 +02:00
bgbsww
7961e82c66 Toponaming/Part: Fix all getBaseTopoShape calls. Tests and missing code. 2024-04-26 21:15:11 -05:00
bgbsww
0d8631973e Toponaming/Part: Fix hashing, hasher mismatches, and adjust test results to match 2024-04-15 23:00:27 -05:00
bgbsww
98880ca5df Merge branch 'main' into bgbsww-toponamingFeatureDressup10399 2024-04-14 18:16:03 -04:00
bgbsww
bd406dbcfd TopoNaming/PartDesign: Implement shapebinders 2024-04-14 17:13:14 -05:00
bgbsww
ccc03e8e60 Merge branch 'main' into bgbsww-toponamingFeatureDressup10399 2024-04-14 18:08:58 -04:00
Chris Hennes
2aaa856661 Merge pull request #13387 from bgbsww/bgbsww-toponamingPD5FeaturePad
Toponaming/Part Transfer more python ElementMapVersion and add feature pad testing
2024-04-14 16:06:40 -05:00
wmayer
4f8606fddb PD: Fixes #13446: Crash with hole in additive loft 2024-04-14 21:24:06 +02:00
bgbsww
459644be31 TopoShape/Part: Bug fixes; pass Hasher parms, OCCT 7.8 compatibility, ElementMaps correct item count 2024-04-14 13:56:07 -04:00
Zheng, Lei
01498d92d5 Bring in missing code 2024-04-11 18:20:26 -04:00
bgbsww
92e8a391c6 Toponaming/Part: Clean and add tests 2024-04-11 11:30:04 -04:00
Zheng, Lei
5a0ac5cafd TopoShape/Part: Bring in FeatureDressup 2024-04-11 10:22:11 -04:00
bgbsww
239c3e6f78 Toponaming/Part: Fix review items 2024-04-10 12:14:01 -04:00
bgbsww
942ebd58f0 Toponaming/Part: Add deprecation comments, clean up code 2024-04-09 21:17:08 -04:00
Zheng, Lei
231a638fc7 TopoShape/Part: Bring in PartDesign dependencies 2024-04-09 21:17:08 -04:00
André Althaus
6b721ac797 Ignore suppressed features in patterns
This will remove all suppressed features from the Originals list
before calculating the patterns.
2024-04-01 10:58:24 -05:00
wmayer
b908e46b26 PD: Mirror feature should be more permissive
If you have a mirror feature and set the mirror plane with the normal feature editing the recompute works. But if the mirror plane is set with the property editor then the recompute fails with the message that no mirror plane reference is set.

This is related to a an empty sub-name list of the link property instead of a single and empty sub-name element.

This PR allows to specify a sketch, plane or datum plane without a sub-name.

For more details see: https://forum.freecad.org/viewtopic.php?t=86568

This fixes #13238
2024-03-31 17:32:27 +02:00
wmayer
5adb384e20 PD: refactor Mirrored::getTransformations 2024-03-31 17:32:27 +02:00
Florian Foinant-Willig
4beeafbedd [PartDesign] Still a helix fix (#12977)
* [PartDesign] Still a helix fix

If we don't break the helix path at each turns we get a vaild path for
MakePipe (solid) even with an angle.

* Decrease helix tests requirements
2024-03-25 18:31:20 +01:00