Commit Graph

37 Commits

Author SHA1 Message Date
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
86abf074c0 Toponaming: bring in missing code fragments in PartDesign 2024-05-13 08:45:26 -05: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
Florian Foinant-Willig
b5abde373d PD: Use SuppressibleExtension 2024-02-29 18:24:27 +01:00
Florian Foinant-Willig
f4763109c3 [PD] Add a Suppressed property to disable a feature 2024-02-12 17:55:51 +01:00
Zheng, Lei
99c9d9b468 PartDesign: do not include transform for sub-object in Feature 2023-03-10 02:06:24 +01:00
luz paz
d265c9ff63 PD: remove trailing whitespace 2022-11-10 10:32:04 +01:00
wmayer
3e009e2693 PD: modernize C++: replace 'typedef' with 'using' 2022-08-29 22:20:49 +02:00
wmayer
c87e1cc1c2 clang: fix warnings [-Winconsistent-missing-override] 2022-08-09 17:36:25 +02:00
berniev
71dc5ead2f Mod: Use override etc 2 2022-08-09 12:52:26 +02:00
berniev
f4ffd15864 Mod: redundant void 2 2022-08-08 10:27:50 +02:00
wmayer
1a969368cb PD: [skip ci] add PartDesignGlobal.h with export/import macros 2021-11-12 18:25:41 +01:00
Zheng, Lei
2fee0c3b0c PartDesign: fix DressUp base shape checking 2020-02-23 11:04:54 +01:00
Zheng, Lei
cd2b7e297c PartDesign changes
* Mostly for supporting in-place editing

* Add new SubShapeBinder that support cross coordinate system,
  external, and sub-object binding
2019-08-17 15:15:47 +02:00
wandererfan
0d3008e4eb Fix #3401 warning on multiple solid
- PartDesign only uses the first result shape
  of an operation and discards the rest without
  warning.

- this also fixes #1707
2018-07-13 10:23:42 -03:00
Stefan Tröger
6ae8b6482e PartDesign: Make Base Feature compatible with GeoFeatureGroup. fixes #0003080
The Original BaseFeature implementation had some serious issues with scoped links. It failed completely for e.g. sketches on the BaseFeature as it made a local link to refere to a out of body object. The only solution to make this work correctly is to add a proxy object into the body which is alloed to exactly that, to link outside oof the body. Something like shapebinder.
2017-09-21 11:40:14 +02:00
DeepSOIC
5e5b3f8b61 PartDesign: add ViewProviderPython
+ bind PartDesign::Feature to PartDesign::ViewProvider, and adjust
viewprovider of PartDesign::FeaturePython accordingly.
2017-03-04 19:16:39 -03:00
DeepSOIC
ec29adfb55 PartDesign: add FeaturePython
Opens a window to extend PartDesign with Python
2017-03-04 19:16:39 -03:00
Alexander Golubev
260fe191d6 PartDesign/Feature: minor gramma fix 2016-04-12 18:12:16 +02:00
Alexander Golubev
af385f1c57 PartDesign/Feature: add an optional parameter to getBaseObject() to prevent it from throwing exceptions
In most cases getBaseObject() is used with an exception handler which
only detects if it failed but not the reason. This modification allows
to use it without excess exception handlers.
Also add the same parameter to SketchBased::getVerifiedSketch().
2016-04-12 18:12:15 +02:00
DeepSOIC
220c88edb6 PartDesign: tidy up sketch support and base feature confusion
Not complete, transformPlacement and positionBySketch are pending...
2016-04-12 18:12:11 +02:00
jrheinlaender
d09eaa2168 Changed tree ordering of booleans and bodies 2016-04-12 18:11:51 +02:00
jrheinlaender
6a90c30a89 Draft: Accept datum lines and planes as references 2016-04-12 18:11:50 +02:00
jrheinlaender
54895922a4 Miscellaneous fixes 2016-04-12 18:11:50 +02:00
jrheinlaender
de17a3ede4 Pad/Pocket: Allow extrude up to a datum plane 2016-04-12 18:11:50 +02:00
jrheinlaender
575b6cf6df Added Reversed button to Pocket UI if the sketch plane is a datum plane 2016-04-12 18:11:50 +02:00
jrheinlaender
218f386990 Moved BaseFeature Property from SketchBased to PartDesign::Feature because all PartDesign features need it 2016-04-12 18:11:48 +02:00
jrheinlaender
cb14c7ae65 Renamed SketchBased::Base property to BaseFeature because of name clash with Revolution::Base property 2016-04-12 18:11:48 +02:00
jrheinlaender
d9ad63ba06 Integrated PartDesign::Pad into Body feature workflow 2016-04-12 18:11:47 +02:00
logari81
e0184a9d4b PartDesign: add messages frame in the task view of Transform/Pattern features 2012-09-14 12:51:59 +02:00
jrheinlaender
023c7fa0b1 PartDesign: implement Transform and Pattern features 2012-09-07 11:55:26 +02:00
wmayer
439ea23a40 + fix linker error
git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5286 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
2011-12-12 21:25:52 +00:00
wmayer
6eb79ab708 + padding with support shape can also be a set of solids as intermediate result
git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5072 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
2011-10-27 09:58:28 +00:00
wmayer
120ca87015 + unify DLL export defines to namespace names
git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5000 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
2011-10-10 13:44:52 +00:00