Commit Graph

2846 Commits

Author SHA1 Message Date
Chris Hennes
3ff2f04bca Merge pull request #23710 from kadet1090/fix-transform-basefeature-outside-body
Gui: Add handling for BaseFeatures outside of Body edge case
2025-09-22 11:15:53 -05:00
André Althaus
73106df0dd PartDesign: Fix mirror Add/remove buttons 2025-09-22 11:12:31 -05:00
Alfredo Monclus
40f12db928 PD: hole prefer finding closest diameter if pitch is 0 2025-09-22 11:10:54 -05:00
Alfredo Monclus
25ce768dcd PD: fix hole thread depth being reset when changing to through all
the property is correctly updated by the updateThreadDepthParam below
2025-09-22 11:09:27 -05:00
theo-vt
15bd51259a PartDesign: Hole: Print error when no axis was found (#23659)
* PartDesign: Hole: Print error when no axis was found

* Remove unrelated string update
2025-09-22 10:47:20 -05:00
jffmichi
aa120cf7dd PartDesign: fix crash when creating new sketch 2025-09-17 22:34:00 -05:00
captain0xff
6282b7c08d Gui: refactor gizmo attachment code 2025-09-17 15:46:35 +02:00
Chris Hennes
02721eec37 Update translations 2025-09-15 2025-09-16 09:55:13 +02:00
PaddleStroke
93ab6f1a33 PartDesign: remove duplicate scale during sketch creation with attach task 2025-09-13 11:43:17 +02:00
Markus Reitböck
496b31b087 do not use precompiled header for setting global compiler definitions and to disable compiler warnings
only 4 of these warnings are still relevant, CMake shall be used to disable them

Compiler definitions:

  NOMINMAX:
    * is already globally defined in SetGlobalCompilerAndLinkerSettings.cmake

  WIN32_LEAN_AND_MEAN:
    * use CMake target_compile_options on relevant targets

Warnings that still occur:

  C4251, C4273, C4275: all related to dllimport / export
    * use CMake target_compile_options on relevant targets

  C4661: no suitable definition provied for explicit template instantiation request
    * triggered in Mesh because of Vector3D in Base - not all functions are defined in header
    * use CMake target_compile_options on relevant targets

Warnings that are Currently not triggered (fix code if they appear again):

  C4005: macro redefinition

  C4244: argument conversion, possible loss of data

  C4267: conversion from size_t to type, possible loss of data

  C4305: truncation from type1 to type2
    * only occurrence disabled in Reader.cpp

  C4522: multiple assignment operator specified

  C5208: unnamed class in typedef name

Obsolete Compiler warnings:

  C4181: not mentioned in Microsoft docs anymore

  C4290: C++ exception specification ignored except to indicate a function is not __declspec(nothrow)
    * throw(optional_type_list)  deprecated in C++17

  C4482: nonstandard extension used: enum 'enumeration' used in qualified name
    * not generated for compilers that support C++11

  C4503: 'identifier': decorated name length exceeded, name was truncated
    * obsolete since Visual Studio 2017

  C4786: not mentioned in Microsoft docs anymore
2025-09-11 20:21:04 -05:00
captain0xff
edb9ed61f6 Gui: update gizmo state based on new property 2025-09-11 22:54:47 +02:00
PaddleStroke
f2643925b6 PartDesign: NewSketch: fix crash when no body 2025-09-11 16:23:48 +02:00
Chris Hennes
ff349c81d6 Merge pull request #23746 from 3x380V/cmake
CMake: Use scoped include and library directories
2025-09-10 21:54:51 -05:00
PaddleStroke
23a3ed8433 PartDesign: Extrude: Fix twoLength/uptoshape broken (#23812)
* PartDesign: Extrude: Fix twoLength/uptoshape broken

* Update FeaturePocket.cpp

* Update FeatureExtrude.cpp

* fix test
2025-09-10 19:12:02 +02:00
Chris Hennes
23bcfd12ff Update translations 2025-09-09 2025-09-10 08:53:41 +02:00
Benjamin Nauck
05224215bf Merge pull request #23274 from kadet1090/enlarge-planes
Gui: Enlarge planes on mouse over and selection
2025-09-09 06:20:15 +02:00
Kacper Donat
d718586463 Gui: Make datum planes bigger 2025-09-08 23:16:29 +02:00
wmayer
10bc43a842 CMake: Replace link_directories with target_link_directories 2025-09-08 19:04:38 +02:00
wmayer
ac51455a0a CMake: Replace include_directories with target_include_directories 2025-09-08 19:04:34 +02:00
PaddleStroke
d22b44cc70 PartDesign: FeatureLinearPattern fix Axis-Y not working (#23637)
* PartDesign: FeatureLinearPattern prevent error message

* To squash
2025-09-08 18:26:30 +02:00
Kacper Donat
28e1a3b654 PartDesign: Reorder fields in Hole dialog
This makes order of fields in Hole Parameters more natural with typical
input flow of the parameters, i.e. moves the size of the hole more to
the top as it is the most important parameter.
2025-09-08 10:48:13 -05:00
Kacper Donat
322f51dd88 Gui: Disallow dragging features outside of body 2025-09-07 01:26:14 +02:00
Kacper Donat
25e9a8b7b7 Gui: Add handling for BaseFeatures outside of Body edge case 2025-09-07 01:25:24 +02:00
PaddleStroke
eb2c4616b2 PartDesign: Fix pattern Add/remove buttons #23626 2025-09-04 22:24:37 +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
PaddleStroke
f7fe6cd697 PartDesign: Polar pattern: Spacings off by one. 2025-09-04 13:56:06 +02:00
Chris Hennes
c0d1151633 Update translations 2025-09-03 2025-09-04 11:37:11 +02:00
captain0xff
c55010d817 PartDesign: fix the draggers for pad type and hole 2025-09-03 00:42:39 +05:30
PaddleStroke
0d5995d6b3 Syntax error 2025-09-02 14:40:37 +02:00
drwho495
bc72b6e85d PartDesign: Fix revolution's Toponaming support (#23342)
* PartDesign: Fix revolution's Toponming support

* fix test
2025-09-01 10:56:43 -05:00
Chris Hennes
e36d5db583 Update translations 2025-08-30 2025-09-01 17:44:54 +02:00
Kacper Donat
86e3a0a011 PartDesign: Highlight profile for profile based features
This adds highlight for sketches etc that are used to create certain
featuires.
2025-09-01 10:44:29 -05:00
PaddleStroke
defb2773a9 PartDesign: Enable selecting a sketch as base plane of another sketch (#23428)
* PartDesign: Enable selecting a sketch as base plane of another sketch

* to squash

* Part: Attacher: enable attaching to empty objects such as empty Sketch or Body.

* Update SketchWorkflow.cpp
2025-09-01 17:39:51 +02:00
PaddleStroke
ef443ad094 PartDesign: TaskExtrudeParameters improve ui by letting line visible 2025-09-01 08:40:29 +02:00
Kacper Donat
332ba3854a PartDesign: Change preview parameter to opacity from transparency 2025-08-31 21:12:07 +02:00
Kacper Donat
1c54b97d7f PartDesign: Implement preview for Booleans 2025-08-31 21:12:07 +02:00
luzpaz
7a1b55ddfb PartDesign: remove trailing whitespace
Removed from src/Mod/PartDesign/App/FeatureExtrude.cpp
2025-08-30 21:53:58 -05:00
captain0xff
66c458f9dc PartDesign: add interactive gizmos 2025-08-30 17:02:52 +02:00
marioalexis
1ae6ab2d08 Part: Remove PartDesign header 2025-08-30 15:06:31 +02:00
wwmayer
a161932408 PD: Fix creation of pad from base feature
In versions prior to 1.0 there was never the requirement that the shape of a FeatureBase must contain a solid. This has changed with ea0a7b0679 for no obvious reason. This requirement should be dropped again.

In versions prior to 1.0 the method Feature::getBaseShape() was used within the Pad feature to check if the base feature has a solid. This method throws an exception if the shape doesn't have a solid.
Since version 1.0 the new method Feature::getBaseTopoShape() is used. As parameter a boolean is passed to either throw an exception or silently return a null shape. The implementation of this function is inconsistent:
If the parameter is false it throws an exception if the base feature's shape has no solid but if the parameter is true it doesn't check if the shape has a solid and returns it as is.

This leads to incorrect behaviour in the calling instance where the shape of the base feature is tried to be fused with the padded shape. This operation will fail if the shape of the base feature has no solid.

This fixes https://github.com/FreeCAD/FreeCAD/issues/23348
2025-08-29 16:28:38 +02:00
PaddleStroke
af802ff04f PartDesign: Fix symmetric regression & LengthAlongSketchNormal (#23418)
* PartDesign: Fix symmetric regression

* to squash

* Fix LengthAlongSketchNormal not working

* to squash

* Fix checkbox not initially visible
2025-08-29 10:03:16 +02:00
Max Wilfinger
3b215da227 Update UI strings from Crowdin reports for consistency 2025-08-28 11:45:38 -05:00
Chris Hennes
f3c675ed5b Update translations 2025-08-28 16:14:49 +02:00
Kacper Donat
51dd4c1869 Gui: Do not compute preview while restoring 2025-08-28 10:30:52 +02:00
Kacper Donat
5719bb8bf8 Merge pull request #22389 from PaddleStroke/pd_transform
PartDesign: Transform tools
2025-08-27 15:22:26 +02:00
FEA-eng
513208f328 PartDesign: Update missed error message about multiple solids (#23392)
* PartDesign: Update FeatureLoft.cpp

* PartDesign: Update FeatureExtrude.cpp

* PartDesign: Update FeaturePipe.cpp

* PartDesign: Remove empty lines added by GitHub editor

* PartDesign: Remove empty lines added by GitHub editor
2025-08-27 09:37:53 +00:00
paddle
0ddb804ab1 PartDesign: Patterns: Tooltips. 2025-08-26 09:13:17 +02:00
PaddleStroke
c1ccf75918 PartDesign: Transform rework 2025-08-26 08:46:51 +02:00
Benjamin Nauck
1b49998f6f Merge pull request #23291 from 3x380V/measurement
Measure: Useability improvements
2025-08-26 06:51:50 +02:00
PaddleStroke
679a072a4a PartDesign: Extrude 2 sides (#21794)
* PartDesign: extrude 2 sides

* Part: OpCodes XOR

* PartDesign: Remove deprecated generatePrism functions

* PartDesign: Extrude : Update Sides combobox strings

* Change "Sides" to "Mode"

* Use OpCodes::Extrude instead of Prism.
2025-08-25 17:17:23 +00:00