Commit Graph

56 Commits

Author SHA1 Message Date
Markus Reitböck
88c6f176bb PartDesign: use CMake to generate precompiled headers on all platforms
"Professional CMake" book suggest the following:

"Targets should build successfully with or without compiler support for precompiled headers. It
 should be considered an optimization, not a requirement. In particular, do not explicitly include a
 precompile header (e.g. stdafx.h) in the source code, let CMake force-include an automatically
 generated precompile header on the compiler command line instead. This is more portable across
 the major compilers and is likely to be easier to maintain. It will also avoid warnings being
 generated from certain code checking tools like iwyu (include what you use)."

Therefore, removed the "#include <PreCompiled.h>" from sources, also
there is no need for the "#ifdef _PreComp_" anymore
2025-09-23 22:39:36 +02:00
FEA-eng
a3f49489b8 PartDesign: Correct typo in multiple solids error (#23642)
* PartDesign: Update FeatureFillet.cpp

* PartDesign: Update FeaturePipe.cpp

* PartDesign: Update FeatureLoft.cpp

* PartDesign: Update FeatureExtrude.cpp

* PartDesign: Update FeatureGroove.cpp

* PartDesign: Update FeatureBoolean.cpp

* PartDesign: Update FeatureChamfer.cpp

* PartDesign: Update FeatureHole.cpp

* PartDesign: Update FeatureDraft.cpp

* PartDesign: Update FeatureRevolution.cpp

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor
2025-09-04 14:36:15 +00:00
FEA-eng
1ffd333edd PartDesign: Fix small typo in multiple solids error (#23299)
* PartDesign: Update FeatureChamfer.cpp

* Update src/Mod/PartDesign/App/FeatureChamfer.cpp

---------

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>
2025-08-22 20:47:04 +00:00
FEA-eng
80c110764c PartDesign: Update error message about multiple solids (#23286) 2025-08-22 18:29:50 +00:00
wmayer
25e73289ae PD: Fix regression about single-solid check
For several PD features the single-solid check fails. The regression
is caused by PR 13960 and reported as issue 19002. The reason for the
failure is that the first solid of the output shape is retrieved and
then checked for a single solid. This test will always pass, of course.

The single-solid is fixed for these features:
* Pad
* Pocket (never worked there)
* Fillet
* Chamfer
* Groove (never worked there)
* Revolution (never worked there)
* Loft

Fixes: 17ad40b2c9f0 ("PartDesign: Refactor single-solid rule enforcement")
2025-06-25 00:09:33 +02:00
Benjamin Nauck
913850ef04 PartDesign: Add #include <limits> where used 2025-03-31 23:52:18 +02:00
Benjamin Nauck
c2e885d774 PartDesign: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:38 +01:00
Chris Hennes
6edce0cafa PD: Add onlyHaveRefined() to FeatureRefine 2025-02-07 21:44:43 -06:00
Florian Foinant-Willig
115667f73a PartDesign: decouple refine and other geometric computation (#17008) 2024-12-02 10:57:30 -06:00
bgbsww
e4a509cc77 Toponaming: Remove all FC_USE_TNP_FIX protected old code 2024-08-26 11:12:48 -05:00
bgbsww
c54a98718f TopoNaming: restore defenses against multisolids when enabled 2024-05-21 21:42:05 -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
5054cace46 Rework makeElementChamfer to match current parms, and add PartDesign code for Chamfers 2024-05-12 13:28:20 -05:00
bgbsww
7961e82c66 Toponaming/Part: Fix all getBaseTopoShape calls. Tests and missing code. 2024-04-26 21:15:11 -05:00
Chris Hennes
397807b72d Gui: Minor translation fixes 2023-05-11 18:31:34 -05:00
Chris Hennes
272a84ca5b PD: Add translation to error messages 2023-04-28 11:32:56 -05:00
Paddle
bc22bf9c0d PartDesign: Fillet, Chamfer, Draft, Thickness : Enable tool to start with no selection. 2023-03-28 12:52:42 +02:00
luz paz
d265c9ff63 PD: remove trailing whitespace 2022-11-10 10:32:04 +01:00
berniev
f4ffd15864 Mod: redundant void 2 2022-08-08 10:27:50 +02:00
berniev
53ba98d636 Mod: use empty 2022-08-06 19:30:13 +02:00
wmayer
d1d4b996e7 PD: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
Uwe
783655a4e3 [PD] Boolean to Groove: remove unused includes 2022-02-21 01:07:36 +01:00
Mark Ganson TheMarkster
abe0c9222a [PartDesign Fillet/Chamfer] add UseAllEdges boolean property (#5340)
- [PartDesign Fillet/Chamfer] add UseAllEdges boolean property
- add UseAllEdges checkbox to fillet and chamfer dialogs
- put UseAllEdges property into Chamfer and Fillet groups, create Fillet group for fillets and put Radius into it, too.
2022-02-05 01:50:51 +01:00
troyp76
b3dbcd9ff8 Improved chamfer behavior when faces are selected
Improved chamfer behavior when faces are selected and non equal chamfer types are used
2021-09-18 22:03:28 +10:00
luz paz
909030859d PD: Fix typo in function getContiniusEdges->getContinuousEdges
Related to PR #5029
2021-09-15 10:11:37 -04:00
wmayer
ba2ad05983 PD: move handling of changed properties of the Chamfer/Fillet to handleChangedPropertyType 2021-09-15 15:14:14 +02:00
donovaly
1376931758 [PD] make constraints static class member
the MSVC IDE warned me about different floatAngle definitions in PD
2021-03-03 15:58:22 +01:00
vosk
d667dd7102 [PartDesign]: Fix refine boolean not being obeyed at multiple places
Related to issue #3927
2021-01-07 14:04:31 +01:00
wmayer
e3a2f7f76d PartDesign: [skip ci] fix wrong property values in UI file
set step size of angle property to 1.0
2020-05-24 12:18:19 +02:00
wmayer
f4b169e811 PartDesign: [skip ci] set group name for chamfer properties 2020-05-24 11:25:15 +02:00
Abdullah Tahiri
d5f29f79d3 PartDesign: Chamfer feature corrections and improvements
========================================================

- Correction to mustExecute() to account for the new properties
- Make properties not used by the mode as read-only.
- Gui: apply() only for construction mode valid features
2020-05-23 12:24:08 +02:00
Armandas Jarušauskas
8c303d3f25 PartDesign: Chamfer direction flipping support 2020-05-23 12:24:08 +02:00
Armandas Jarušauskas
84afdc6d96 PartDesign: Chamfer - updated parameter validation code. 2020-05-23 12:24:08 +02:00
Armandas Jarušauskas
83b77f1500 PartDesign: Chamfer with multiple creation modes 2020-05-23 12:24:08 +02:00
Armandas Jarušauskas
be82131803 Fixed issues introduced in #3456
- Copy-paste error when setting angle dimensions.
- Max angle limit set to 180 degrees.
2020-05-12 14:29:28 +02:00
Armandas Jarušauskas
cce4aaab58 Added chamfer angle support to PartDesign. 2020-05-10 18:59:30 +02:00
wmayer
7f0b408ecb prepare for OCCT 7.3.1 2018-12-14 15:51:10 +01:00
wandererfan
a712d49685 Revise multiple solids message 2018-07-13 10:23:42 -03: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
wmayer
24eb8eec9b chamfer size must be greater than zero 2018-04-04 16:25:11 +02:00
wmayer
0d617f97d6 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
91cc8a4817 try to fix tolerance if shape is broken after fillet/chamfer operation 2017-07-24 12:29:46 +02:00
Peter Lama
fa4bebf2e0 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
d1d2f1f811 This commit adds getShape and setShape to TopoShape 2016-08-06 23:42:55 +02:00
Stefan Tröger
609da4749a fixes #0002512 Allow multi-face part design tools 2016-05-18 23:54:18 +02:00
Stefan Tröger
afee98c1e9 allow to add faces to fillet and chamfer 2016-04-12 18:12:07 +02:00
jrheinlaender
dbc6b1b12e Some code unification for DressUp features 2016-04-12 18:11:56 +02:00
jrheinlaender
4f643b2218 Made the rest of the PartDesign features aware of the Body 2016-04-12 18:11:49 +02:00
wmayer
2d8c48ef83 + perform validation check after partdesign chamfer operation 2016-04-09 11:47:31 +02:00
Eivind Kvedalen
e72dc31954 PartDesign: Fixed similar issue compared to #2302 with unit handling when using an expression for the chamfer size. 2015-11-09 21:37:24 +01:00