Commit Graph

18 Commits

Author SHA1 Message Date
Florian Foinant-Willig
ffb2ebe4c6 [PD] helix fix 2024-08-24 20:38:58 -05:00
Chris Hennes
74e5c3fafb Revert "[PD] Revert 316506f, back to shell algo for some helix cases (#15678)"
This reverts commit dcfae6a897.
2024-08-06 18:54:46 -05:00
Florian Foinant-Willig
dcfae6a897 [PD] Revert 316506f, back to shell algo for some helix cases (#15678)
* [PD] Revert 316506f, back to shell algo for some helix cases

* fix test accuracy
2024-08-05 10:40:00 -05:00
Florian Foinant-Willig
c7d85ff9d9 [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
wmayer
2062f9ce87 clang: fix warnings [-Winconsistent-missing-override] 2022-08-09 17:36:25 +02:00
berniev
ddafb98813 Mod: Use override etc 2 2022-08-09 12:52:26 +02:00
berniev
da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
David Österberg
2ba95b3423 PartDesign: Improve orientation behaviour for conical helices (#5363)
* PartDesign: Improve orientation behavior for conical helices

As identified in the forum
https://forum.freecadweb.org/viewtopic.php?f=3&t=65136

The Freenet orientation mode does not give expected results for helices with cone angle.
By using an auxiliary helix that is axially offset it is guaranteed that the orientation frame
is always consistent with a cylindrical coordinate system.

Results will be the same as before when cone angle is 0.
2022-01-09 22:13:15 +01:00
jbaehr
f4fe2efe19 PD: Fix helix property visibility/writability (#5254)
[PD]: Fix helix property visibility/writeability

* Hide irrelevant and internal helix properties
- The `HasBeenEdited` property is only used internally to check whether to
  fill certain other parameters with initial values. So there is no need
  show it in the property grid at all.
- The `Outside` property is only used in the subtractive helix and thus
  hidden for the additive helix.

* Make derived helix properties read-only
Depending on the input mode, some properties are primary input, others
are derived. Prior to this change, also the derived properties have been
writable but their values are ignored and overwritten on the next
recompute. Now, when changing the input mode, only the primary input
props are writable.

* Reorder some helix properties
This change puts the reference axis and input mode at the top to become
more prominent. Only "Base" and "Axis" are higher in the list for
consistency with the other axis-based features.
2021-12-19 16:50:51 +01:00
Uwe
955af2fa8d [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
35683883cb [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
Yorik van Havre
2f70ddc3dd Removed redundant namespace
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2021-08-30 13:30:06 +02:00
donovaly
8b9afbd921 [PD] fix property issues
- Helix: the property Turns has the App::PropertyFloatConstraint thus also the pointer to it must have the same property

- LinearPattern and Helix: make constraints static class member (forgot this in commit 3704ad68)

- Draft: make the constraint const

- PolarPattern and LinearPattern assure that the header file is loaded at last to avoid potential troubles
2021-07-11 01:43:38 +02:00
wmayer
ac3ce00b63 PD: replace error-prone strings with enum to handle different helix modes 2021-03-28 13:37:13 +02:00
David Osterberg
98b52b09d6 PartDesign: New input mode, and allow spirals to be created 2021-03-10 15:36:40 +01:00
donovaly
f982112e24 [PD] set constraints for helix properties
at the moment it is possible by a click to set e.g. -1 turn which would cause an error
2021-03-03 17:25:40 +01:00
David Osterberg
8efbe8861f PartDesign: [Helix] Fix helix starting point bug 2021-02-05 19:17:00 +01:00
David Osterberg
59ec3cb141 PartDesign: New features AdditiveHelix and SubtractiveHelix
These features, based on the code for the Pipe class, allow the user
to simply create a helical sweep within PartDesign workbench.

Sample application is threads, springs, coils, augers, etc.

Also, remove needless requirement for positive cone angle on helixes.

Thanks to @bitacovir for helping with the icons
Thanks to @chennes for review
Thanks to @vosk for review
Thanks to @wwmayer for review

Enforce that links stay within scope for ProfileBased features
This also ensures that the Body itself is not used for creating features within
the body, causing a "Graph not a DAG" error.
2021-02-04 13:01:12 +01:00