Commit Graph

102 Commits

Author SHA1 Message Date
David Osterberg
8453d41515 PartDesign: Transformed. Fix regression for Mirrored, and multiple features 2021-03-13 14:48:16 +01:00
David Osterberg
fecf9c2e84 PartDesign: Transformed: Allow explict selection of overlap mode 2021-03-13 14:48:16 +01:00
David Osterberg
03da9d3501 PartDesign: Performance improvements in Transformed (pattern)
- Use fuzzy fuse/cut method with tolerance Precision::Confusion()
- Use parallel computation feature
- Allow that individual patterned item fail to intersect the baseobject.
	Issue warning instead of error. This was done for performance reasons
	but it can also be considered a feature.
- Simplify the code a bit
- Distinguish between overlapping mode and non-overlapping mode. In non-overlapping mode
  the tool shapes are compounded instead of fused. For huge benefit in performance.
2021-03-13 14:48:16 +01:00
David Osterberg
16ff933b09 PartDesign: Transformded. Align the "property category" of Refine with other PD commands 2021-02-27 18:19:14 +01:00
Zheng, Lei
4a5cca3359 PartDesign: fix pattern transformation 2020-07-31 14:46:33 +02:00
Zheng, Lei
7fadfd0439 PartDesign: change feature DressUp behavior when used for pattern
Repurpose DressUp.SupportTransform property to define the following
behavior,

* When disabled (default), only the dressing will be used for patterning.

* When enabled, the additive/subtractive shape of the dressed base
  feature will be used for patterning. Any dressing that is not applied
  to the based feature will be ignored.

* If the dressing is applied to non-additive/subtractive feature, then
  only the dressing will be used for patterning.

New API FreatureAddSub::getAddSubShape() is added to account for the
fact that a dressing (e.g. a fillet) can be either additive or
subtractive, which means that a DressUP feature may contain both
additive and subtractive shapes.

FeatureTransformed is modified to perform both fusion and cut if
required.
2020-07-11 13:03:21 +02:00
Zheng, Lei
233e6f931a PartDesign: fix line ending in source code 2020-07-11 13:02:49 +02:00
luz.paz
d38f18af23 PartDesign: [skip ci] fix header uniformity
This PR fixes header uniformity across all PartDesign WB files
2019-12-22 00:58:38 +01:00
wmayer
7acdb56d92 Replace Base::Exception with appropriate subclass 2018-11-14 19:28:00 +01:00
Markus Lampert
0b40519f3f Changed all catch types to references for polymorphic exceptions. 2018-08-08 15:45:30 +02:00
wandererfan
7e781bcfd0 Revise multiple solids message 2018-07-13 10:23:42 -03:00
wandererfan
883a726d52 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
wmayer
833c2c601e add missing newlines 2018-06-09 11:47:12 +02:00
wmayer
4d36757636 improve whitespaces 2018-01-22 20:06:12 +01:00
Abdullah Tahiri
01e6cde7aa PartDesign: Fix bug of mirror transformation of multiple features
fixes #3317

This code ensures that an individual transformation or a multi-transformation have a proper
base feature and next feature.
2018-01-22 19:56:58 +01:00
DeepSOIC
27701ae852 PartDesign: #2683 add Refine property
resolves #2683

Adds Refine property to sketch-based and transformation features. The
property is initialized according to preferences, and can be altered in
property editor on per-feature basis.
2018-01-20 13:58:39 +01:00
luzpaz
c1152f2a2c PartDesign: typos 2017-12-25 11:04:43 +01:00
wmayer
949c86d364 Port to occ7.2:
+ Standard_Failure::Caught() is now marked as deprecated and should be replaced with standard C++ exception handling
2017-09-01 16:27:46 +02:00
wmayer
488c1a1fdf handle exception thrown by BRepBuilderAPI_RefineModel 2017-07-23 15:46:57 +02:00
Kurt Kremitzki
6f18ce63ed Show failure message when part design transformation does not intersect 2017-06-16 00:15:22 +02:00
Abdullah Tahiri
ff188383a1 Fix transformation support, so that support is updated with any previous transformation executed 2017-06-16 00:15:22 +02:00
Peter Lama
a75a98ef27 Use OCCT Handle macro for Handle_ classes
This is the result of running OCCT's upgrade script provided
with OCCT 7.0. See
https://www.opencascade.com/content/freecad-occt710-and-windows-rtti-data-missing#comment-form
and
https://www.forum.freecadweb.org/viewtopic.php?f=4&t=21405&start=120#p169019
for why this is necessary for OCCT >= 7.1
2017-04-20 12:27:34 +02:00
Wolfgang E. Sanyer
7f4a437cc2 This commit adds getShape and setShape to TopoShape 2016-08-06 23:42:55 +02:00
Stefan Tröger
83ce80f133 fixes #0002512 Allow multi-face part design tools 2016-05-18 23:54:18 +02:00
Stefan Tröger
4ec7fe6303 PartDesign: Adopt pattern to face based features 2016-04-12 18:12:22 +02:00
Stefan Tröger
f712f5e4ac PartDesign: Modeling features work with faces
-Rename Sketchbased to ProfileBased to show new behavior
-Adopt ProfileBased to make the relevant helper functions work with faces too
-Adopt features for unified use of helper functions
-Adopt commands to allow face selection
2016-04-12 18:12:22 +02:00
Alexander Golubev
113c10a2b7 PartDesign: make transform parameter dialogs use common base code with other dialogs
subj;
Make PasrtDesign::Transformed provide common for all features
classes interface getBaseObject() instead of specific getSupportObject ();
Refactor some TransformedParameters methods.
2016-04-12 18:12:16 +02:00
Stefan Tröger
d923bebccc make transform features work with non-sketch based features 2016-04-12 18:12:07 +02:00
Stefan Tröger
9a2f5eea65 allow non-sketch based additive and subtractive features 2016-04-12 18:12:06 +02:00
blobfish
4b2f107cc1 Part Design: support for overlapping and coincident patterns
Fixed crash after rejecting a MultiTransform dialog
    remove overlap check
    adding getSolid to cut operation
    add extrema method to part::checkinterference
    move refineshape call out of loops
    divideTools functions
2016-04-12 18:12:00 +02:00
Jan Rheinländer
1772eb70bc PartDesign::Transformed: Transformed shapes that touch are now rejected as overlapping in the interest of boolean operation stability 2016-04-12 18:12:00 +02:00
jrheinlaender
fcea39b0d8 Enable multiple originals for the transformed features 2016-04-12 18:11:56 +02:00
jrheinlaender
4645fdcd37 Miscellaneous fixes 2016-04-12 18:11:50 +02:00
jrheinlaender
7330d4357e Made the rest of the PartDesign features aware of the Body 2016-04-12 18:11:49 +02:00
wmayer
50d7793442 + introduce proper enum for property status to replace plain integers 2016-01-01 15:36:24 +01:00
wmayer
b7be7aec13 + Prefer prefix ++/-- operators for non-primitive types 2015-10-07 13:38:17 +02:00
wmayer
60062892a6 + backward compatibility of Linear and Polar pattern 2015-09-22 18:04:07 +02:00
wmayer
e47b85994c + fix possible crashes in mirror and polar pattern feature 2014-03-31 16:35:22 +02:00
wmayer
aaeba38e78 + Fix crash when editing the linear pattern feature, suppress some warnings in release mode 2014-03-31 14:42:55 +02:00
wmayer
3cc032c11e + Add option to refine solid on sketch-based features 2013-09-21 09:16:44 +02:00
wmayer
ce0e6e5cef Make FeaturePython Python binding a template class to avoid code duplication 2013-03-22 00:34:18 +01:00
jrheinlaender
8235008ae7 PartDesign: Show overlapping transformations as rejected 2013-02-26 11:29:03 +01:00
jrheinlaender
18da371546 Re-worked Part::checkIntersection to give less false positives for pattern features 2013-02-08 14:32:00 +01:00
logari81
525cddaaf3 PartDesign: Refactor pattern features and gui
- remove StdDirection,StdAxis and StdMirrorPlane properties
- support sketch H_Axis, V_Axis, N_axis as valid references in patterns
- polish reference selection gui (unified for standard axes and custom references)
2013-01-09 23:18:38 +01:00
logari81
afb3355193 Make Multitransform children inherit its Placement 2013-01-06 23:33:00 +01:00
wmayer
8b006b27dd Disable Placement editing for part design transformation features 2012-12-18 10:35:30 +01:00
wmayer
515f30c1a0 0000906: Segmentation Fault when try to use linear pattern on Part, fix some issues with selection gate 2012-12-07 14:01:49 +01:00
jrheinlaender
256cbd2842 PartDesign: minor comment improvements 2012-10-22 17:49:54 +02:00
jrheinlaender
32628462c2 PartDesign, Transformed features: Improved intersection check 2012-10-22 17:49:54 +02:00
logari81
68995739d6 PartDesign: add messages frame in the task view of Transform/Pattern features 2012-09-14 12:51:59 +02:00