Commit Graph

33073 Commits

Author SHA1 Message Date
Roy-043
3344bc804c Draft: fix number_length for imperial dimensions (#25369)
* The number_length function did not take imperial dimensions into account. For `9" + 7/8"` it would return 1.
* In ArchRoof reference number_length function from DraftGui.py to avoid duplicate code.
2025-11-23 22:30:09 -06:00
FEA-eng
be2b432ac4 FEM: Add Thick Pipe Internal Pressure 2D example (#25191)
Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-11-23 22:22:27 -06:00
PaddleStroke
d289153401 Assembly: BOM: fix subassembly 2025-11-23 22:20:11 -06:00
Chris
725ffc4660 Sketcher: allow grid snapping while hovering mouse over axis (#25226) 2025-11-23 21:50:35 -06:00
chris
2d4dac3fcc sketcher: fix issue #13852 resolve issue with state not updating constraint text 2025-11-23 23:28:51 +01:00
sliptonic
9fc7b074b0 Merge pull request #25570 from Connor9220/FixChipLoad
CAM: Ensure Chipload is restored and displayed with user-preferred units
2025-11-23 12:42:24 -06:00
sliptonic
e77b4aa4be Merge pull request #25106 from davidgilkaufman/tool_migrations_custom_dir
[CAM] Offer automatic migration of tools in (old) custom working directory to the new tool system
2025-11-23 12:28:17 -06:00
sliptonic
6fc3f47bde Merge pull request #22738 from tarman3/bsplinesurface
CAM: Pocket BSplineSurface
2025-11-23 11:49:52 -06:00
sliptonic
9abff5a7a4 Merge pull request #25372 from tarman3/engrave_fix22380
CAM: Engrave - Fix #22380 - duplicates
2025-11-23 11:41:03 -06:00
Billy Huddleston
89001467fb CAM: Ensure Chipload is restored and displayed with user-preferred units
Fixes an issue where Chipload and similar mixin-defined properties were added to
the schema but not reliably restored, because parameter restoration did not always
apply them to the toolbit object. This change ensures Chipload is restored from saved
data and displayed using the user's preferred unit schema, even when no document
is open. This update also ensures the toolbit editor respects the user’s unit schema
preference during editing, even outside an open document.

src/Mod/CAM/Path/Tool/toolbit/models/base.py:
- Restore Chipload (and other parameters) to toolbit.obj if the property exists.

src/Mod/CAM/Path/Tool/toolbit/ui/editor.py:
- Set units schema to user preference when opening the toolbit editor, so Chipload and other values display correctly.
2025-11-23 11:45:47 -05:00
Roy-043
eac3e7eeab BIM: fix handling of BIM_Sketch view properties (#25339)
* BIM: fix handling of BIM_Sketch view properties

The handling of the sketch view properties was not correct:
* AutoColor was not set to `False`.
* PointSize was missing.
* PointColor was not set to the DefaultShapeVertexColor preference.
* Grid values were never applied. Sketches do not have a GridSnap property and gridSize is not the correct Draft preference.
* Sketch grid snap is a global setting that affects all sketches, the code should not change that setting IMO.

* Remove trailing white space
2025-11-21 10:12:33 +00:00
PaddleStroke
327e6b3630 Assembly: Make the 'ground first part' dialog closable 2025-11-20 00:27:06 +01:00
PaddleStroke
b010300852 Assembly: Fix joint on Body-LCS not working 2025-11-19 12:23:59 +01:00
PaddleStroke
3c95dbeb00 Assembly/TechDraw: Fix exploded view views (#25426) 2025-11-18 15:54:51 -06:00
PaddleStroke
6e3a03f3aa Assembly: Fix crash on moving unconnected parts 2025-11-18 13:06:33 -06:00
Chris
6af57389de Part: fix splitting of a split that is a container / group (#25293) 2025-11-18 11:48:40 -06:00
PaddleStroke
6cddfc8217 Sketcher: ConstraintList: prevent N transaction on box selection (#25254) 2025-11-18 09:15:03 -06:00
captain0xff
b71f9d1623 PartDesign: fix the interactive controls for revolution/groove 2025-11-18 15:39:42 +01:00
Roy-043
031b1b3c9b PartDesign: Update TaskFeaturePick.cpp text (Title Case mod) 2025-11-18 15:35:12 +01:00
Furgo
7fe944bf9f BIM: Smart removal of wall bases (#24550)
* BIM: Implement smart base removal for Walls

Previously, removing the Base object from an Arch Wall would cause the
wall to reset its position to the document origin and could lead to
unintended geometric changes for complex walls.

This commit introduces a "smart debasing" mechanism integrated into the
Component Task Panel's "Remove" button:

- For walls based on a single straight line, the operation now preserves
  the wall's global position and parametric `Length`, making it an
  independent object.
- For walls with complex bases (multi-segment, curved), a warning dialog
  is now presented to the user, explaining the consequences (shape
  alteration and position reset) before allowing the operation to
  proceed.

This is supported by new API functions `Arch.is_debasable()` and
`Arch.debaseWall()`, which contain the core logic for the feature.

Fixes: https://github.com/FreeCAD/FreeCAD/issues/24453

* BIM: Move wall debasing logic into ArchWall proxy

The logic for handling the removal of a wall's base object was previously
implemented directly within the generic `ComponentTaskPanel` in
`ArchComponent.py`. This created a tight coupling, forcing the generic
component UI to have specific knowledge about the `ArchWall` type.

This commit refactors the implementation to follow a more object-oriented
and polymorphic design:

1.  A new overridable method, `handleComponentRemoval(subobject)`, has been
    added to the base `ArchComponent` proxy class. Its default implementation
    maintains the standard removal behavior.

2.  The `_Wall` proxy class in `ArchWall.py` now overrides this method. All
    wall-specific debasing logic, including the eligibility check and the
    user-facing warning dialog, now resides entirely within this override.

3.  The `ComponentTaskPanel.removeElement` method has been simplified. It is
    now a generic dispatcher that calls `handleComponentRemoval` on the
    proxy of the object being edited, with no specific knowledge of object types.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* BIM: Correct user warning

The operation can indeed be undone.

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>
2025-11-18 13:58:59 +00:00
wandererfan
1960a4a8a4 [TD]enforce center mark print rule on print preview 2025-11-17 22:28:07 -06:00
wandererfan
54b71d0265 [TD]fix center mark preferences not honored 2025-11-17 22:28:07 -06:00
wandererfan
df97a2c234 [TD]fix lost mouse event in Projection Group 2025-11-17 22:28:07 -06:00
wandererfan
e491743e02 [TD]fix cosmetic vertex outside frameRect is not selectable
- attempting to select a vertex outside the frameRect/boundingRect
  triggers hoverLeave event which hides the vertex.
2025-11-17 22:28:07 -06:00
wandererfan
d70756f000 [TD]fix no vertex select in front view of projection group 2025-11-17 22:28:07 -06:00
wandererfan
2e32a93ba7 [TD]fix fail to clear frame on selection change 2025-11-17 22:28:06 -06:00
wandererfan
92690acc85 [TD]fix fail to create vertex outside frame 2025-11-17 22:28:06 -06:00
wandererfan
ddd3a5697f [TD]fix center marks not shown 2025-11-17 22:28:06 -06:00
wandererfan
c23584964d [TD]fix giant vertex from tracker 2025-11-17 22:28:06 -06:00
wandererfan
cbc609d431 [TD]clear selection affects vertex display
- clearing the selection here causes the new vertex to not be displayed
2025-11-17 22:28:06 -06:00
wandererfan
e1cd2d744e [TD]add getExportingAny() 2025-11-17 22:28:06 -06:00
wandererfan
cdcc9df517 [TD]add preference methods for center marks 2025-11-17 22:28:06 -06:00
Chris
02bf9b2292 Import: STEP export preserve body names (#25042) 2025-11-17 22:23:21 -06:00
tarman3
6450f0a442 CAM: Pocket BSplineSurface 2025-11-17 19:53:47 +02:00
tarman3
a407e5c630 CAM: Engrave - Fix #22380 - duplicates 2025-11-17 19:40:05 +02:00
sliptonic
65ed897c2b Merge pull request #25371 from tarman3/engrave_fix9114
CAM: Engrave - Fix #9114 - Unable to engrave an arc
2025-11-17 11:19:23 -06:00
Gaël Écorchard
6ac401571c Remove functions that require Kuka files (#24984) 2025-11-17 11:15:18 -06:00
Billy Huddleston
e2f65dda6a CAM: Fix crash when Path panel widgets are deleted
Prevent RuntimeError by safely handling missing or deleted geometry import
widgets in Path operation panels. This ensures the UI update code does not
fail if the underlying C++ objects are destroyed, improving stability when
panels are closed or the UI changes.

src/Mod/CAM/Path/Op/Base.py:
- Wrap geometry import widget access in try/except to avoid crashes
- Add error handling for panel widget deletion scenarios
2025-11-17 11:11:24 -06:00
PaddleStroke
e3311825d2 Assembly: Sub-assembly: fix support for Part-wb objects (#25279)
* Assembly: Sub-assembly: fix support for Part-wb objects

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-17 17:59:40 +01:00
PaddleStroke
287ac6e9e9 Assembly: Insert link: Handle partially loaded documents (#25275) 2025-11-17 10:55:48 -06:00
PaddleStroke
83a6d679aa Sketcher: Remove transaction from TaskSketcherConstraints::doSetVisible (#25255)
* Sketcher: Remove transaction from TaskSketcherConstraints::doSetVisible

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-17 17:54:55 +01:00
chris
6478ba2227 sketcher wb: fix issue #25076, resolve grid snapping placement 2025-11-17 10:51:28 -06:00
tarman3
da8e6d71ac CAM: LeadInOut - Fix overtravel 2025-11-17 10:45:08 -06:00
David Kaufman
9266003824 Hopefully placate CodeQL 2025-11-17 09:18:30 -05:00
Jiří Pinkava
b25a2adcbe Tests: Fix value for Imperial pressure tests
The decimal was (wrongly) cahnged in 5379378626
2025-11-16 22:45:52 -06:00
Florian Foinant-Willig
40ffc1db79 TechDraw: fix "%.0w" format spec (#25367) 2025-11-16 18:51:28 +00:00
tarman3
bd345aceb8 CAM: Engrave - Fix #9114 - Unable to engrave an arc 2025-11-16 20:47:21 +02:00
Aqeel Labash
1ff464f1b9 Fix wording for On-view-parameters tool tip. (#24773)
* switch wording in tooltip-swap-wording

* switch wording in tooltip for On-View-Paramter
2025-11-15 19:27:03 +01:00
PaddleStroke
3922cbb595 TaskAttacher: Remove 'reset edit' causing trouble to assembly (#25277) 2025-11-15 10:13:56 -06:00
theo-vt
63c0ec02b9 Sketcher: Proceed to chamfer/fillet on a vertex if there are more than 2 lines but only two non-construction lines 2025-11-15 10:08:22 -06:00