Commit Graph

39261 Commits

Author SHA1 Message Date
Chris Hennes
7ba8b1f2ba Merge pull request #20891 from ickby/FEM_python_filter
FEM: Enabling postprocessing filters written in python, and adding a glyph example
2025-05-05 21:19:49 -05:00
Ladislav Michl
3189030c11 Gui: fix warning in NavigationStyle
Fix warning: suggest braces around empty body in an ‘if’ statement.
While there also guard similar debug messages instead of commenting
them out.

Fixes: 8d2cb99712 ("Gui: Added classic trackball orbit style")
2025-05-05 19:45:01 +02:00
Kacper Donat
67e5d730fe Merge pull request #20754 from hyarion/coverty/sketchobject
Sketcher: Fix some of the coverity issues in SketchObject.cpp
2025-05-05 19:28:55 +02:00
Jacob Oursland
8f57c46f3a Base: use nullptr instead of 0 in Base. 2025-05-05 12:12:15 -05:00
David Carter
8abb9f0128 Materials: Default units (#20909)
Improves handling and assignment of default units

When creating a material without specifying units, no units are
currently assigned. This commit will assign the default units when none are
given, or throw an error when incompatible units are given. In the
latter case, the units are set to the property defaults.

This commit also incidentally fixed an issue when saving the material that
resulted in accessing an uninitialized pointer.
2025-05-05 11:31:25 -05:00
tetektoza
fe7d3e9071 BIM: Pass correct object for Compass while updating Visibility property
Currently, if user selects `Site` object in the Model tree, and hides it
while having `Compass` property selected to `true` and then unhides it,
the Compass is not appearing even though the property still remains to
be true.

This is because for the `Compass` property itself and `Visibility`
property we're using two different object types. For `Compass` property
we're using View provider geometry object, whereas for the `Visibility`
property we're using `Part::Feature` object. Since `Part::Feature`
object doesn't have compass attribute and Compass directly under it,
we're never hitting the logic to show the compass.

So, this patch just changes the object type that is being passed to
`updateCompassVisibility` during change of `Visibility` property, to
match the same object type passed during change of `Compass` property.
2025-05-05 18:19:22 +02:00
Roy-043
2e02c6a944 Draft: ShapeString: use an actual font file as default, allow TTC files
* To help novice users supply an actual font file from the OS as the default for ShapeStringFontFile.
* The Draft code blocked the use of TTC font files. `Part.makeWireString()` can however handle them (although only the first font in the file can be used).

Additonally:
In a previous PR the bottom spacer was removed from the task panel. This PR brings it back as it is required in some cases. Without it  the "..." button of the file selector can become huge.
2025-05-05 18:15:47 +02:00
Furgo
be62ecc023 BIM: group 2D view creation commands 2025-05-05 18:10:18 +02:00
Roy-043
ffd99499fb Draft: fix dim unit override for Building US unit system
Fixes #21092.
2025-05-05 18:01:36 +02:00
tetektoza
7f6b3dcf70 Draft: Preserve direction vector upon Continue Mode for Dimension (#20974)
So, currently, if we use Vertical/Horizontal Dimension which is
constrained in one direction vector, upon `Continue`, the direction
vector is not being preserved.

The cause of that is that everytime we recall the command in Continue
Mode, we also call base class' `Activated` method, which in turn calls
`finish()` if we have already initialized an active Draft command. This
doesn't happen during first usage of the command, because this variable
is not yet populated, but upon second (and next) runs it is. In turn,
this causes to call `finish()`, and clean up the direction vector. So,
in essence, we are specifying the vector and cleaning it every
"Continue" run.

So, as a solution, just move the direction vector as an argument to
populate super class with it, and do that after super class' `Activated()`
call, so it won't get cleaned up in `finish()`.

Co-authored-by: Yorik van Havre <yorik@uncreated.net>
2025-05-05 17:58:54 +02:00
Roy-043
57da6ac140 BIM: close task panels on doc close
Fixes #17952.

This PR is a continuation of #20719.

It mainly involves adding `self.doc`. This new attribute is then also used in the rest of the modified classes. In some cases code was slightly reordered for consistency.

The `_finish_command_on_doc_close` function has been modifief to also handle `Gui.Snapper.ui.escape` and the code in gui_arcs.py has been updated accordingly.

Additionally:
Removed the `done` and `spacedone` variables in BimWall.py by tweaking the code.
2025-05-05 17:52:37 +02:00
Shai Seger
c90bb3cd9e [CAM Simulator] Auto resizing of simulator slider based on window size (#21027)
* [CAM Simulator] Auto resizing of simulator slider based on widow size. Replaces PR #20885.

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

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

* Add tooltips

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

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

* Add missing includes

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-05-05 10:51:28 -05:00
sliptonic
205c556e69 Merge pull request #20591 from jalapenopuzzle/jalapenopuzzle/cam_snapmaker_machine_types
CAM: snapmaker improve support for different machine variants and toolheads
2025-05-05 10:47:07 -05:00
marcuspollio
953063ca09 BIM: add missing license (#20906)
* BIM: add missing license

* BIM: add SPDX License id to init.py

* Revert Dice3DS license
2025-05-05 17:45:38 +02:00
Chris Hennes
9b1467cef3 Merge pull request #20540 from 3x380V/cleanup-schemas-management
Simplify UnitsSchemas management
2025-05-05 10:43:27 -05:00
Max Wilfinger
3fcadd01f5 Set RoundedArcball as default orbit style.
Reorder status bar entries.
2025-05-05 10:33:33 -05:00
Chris Hennes
e4b301a048 Merge pull request #20449 from hyarion/refactor/cpp20-contains
Avoid using `count` and `std::find` where `contains` and `isEmpty` express intent better
2025-05-05 10:31:33 -05:00
sliptonic
37edce115e Merge pull request #20877 from knipknap/cam-postprocessor-errors
CAM: fix postprocessor errors
2025-05-05 10:03:50 -05:00
David Carter
2117d5aef1 Material: Database manager fixes (#21132)
* Remove duplicate code from previous merge

* Caatch potential unknoiwn exceptions
2025-05-05 10:22:50 +02:00
Chris Hennes
4dc4185319 Merge pull request #21051 from WandererFan/ComplexSectionCrash
[TD]Complex section crash (fix #20155)
2025-05-04 20:53:05 -05:00
David Carter
24df826865 Merge pull request #21046 from davesrocketshop/issue_13922_2
Update module dependencies to ensure that automated testing code is considered as well as direct dependencies. Update some automated tests to eliminate unwanted dependencies.
2025-05-04 17:02:50 -05:00
Chris Hennes
12fb3b989c Merge pull request #21100 from marioalexis84/fem-elmer_quantity_format
Fem: Use string format to round Elmer quantity values - fixes #20938
2025-05-04 16:57:31 -05:00
Benjamin Nauck
93ea68a23b Gui: Add tests to automatically verify the axonometric views 2025-05-04 13:21:08 +02:00
Benjamin Nauck
3f79626799 Sketcher: Fix 513269 Variable copied when it could be moved 2025-05-03 23:38:05 +02:00
Benjamin Nauck
47a43e21b2 Sketcher: Fix · · ·
532547 Variable copied when it could be moved
2025-05-03 23:38:05 +02:00
Benjamin Nauck
6b87d7df22 Sketcher: Fix 512328 Use of auto that causes a copy 2025-05-03 23:38:05 +02:00
Benjamin Nauck
70d11e33dc Sketcher: Fix 529853 Variable copied when it could be moved 2025-05-03 23:38:05 +02:00
Benjamin Nauck
be264928fc Sketcher: Fix 515688, 513858, 515692, Variable copied
# Conflicts:
#	src/Mod/Sketcher/App/SketchObject.cpp
2025-05-03 23:38:05 +02:00
Benjamin Nauck
7f49a4e668 Sketcher: Fix 513105 Variable copied when it could be moved 2025-05-03 23:37:26 +02:00
Benjamin Nauck
de17a7acee Sketcher: 532658 Use of auto that causes a copy
Also fixes 532658
2025-05-03 23:37:26 +02:00
Benjamin Nauck
6adebe348e Sketcher: Fix 512301 Variable copied when it could be moved 2025-05-03 23:37:26 +02:00
Benjamin Nauck
53b9c54f97 Sketcher: Fix 512831 Variable copied when it could be moved 2025-05-03 23:37:26 +02:00
Benjamin Nauck
78e2a12d2d Sketcher: Fix 463717 Variable copied when it could be moved 2025-05-03 23:37:26 +02:00
Benjamin Nauck
04ac555ae4 App: use contains() instead of count() 2025-05-03 22:22:10 +02:00
Benjamin Nauck
ae76f89759 Sketcher: Use contains instead of std::find 2025-05-03 22:22:10 +02:00
Benjamin Nauck
588d26937b Gui: Use contains instead of std::find 2025-05-03 22:22:10 +02:00
Benjamin Nauck
a43989dfbf App: Use contains instead of std::find 2025-05-03 22:22:10 +02:00
Benjamin Nauck
c70b649dff Spreadsheet: use isEmpty() instead of count() where possible 2025-05-03 22:22:10 +02:00
Benjamin Nauck
b9ee64792d Part: use empty() and isEmpty() instead of count() where possible 2025-05-03 22:22:10 +02:00
Benjamin Nauck
e69c372056 Material: use contains() and isEmpty() instead of count() where possible
# Conflicts:
#	src/Mod/Material/App/ModelLibrary.cpp
2025-05-03 22:22:10 +02:00
Benjamin Nauck
4bf7048534 Import: use contains() instead of count() where possible 2025-05-03 22:19:51 +02:00
Benjamin Nauck
dd2172e463 CAM: use contains() instead of count() where possible 2025-05-03 22:19:51 +02:00
Benjamin Nauck
a882289995 Gui: use contains() and isEmpty() instead of count() where possible 2025-05-03 22:19:51 +02:00
Benjamin Nauck
65ee1339de App: use contains() instead of count() where possible 2025-05-03 22:19:51 +02:00
pre-commit-ci[bot]
3ef7ba2d9d [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-05-02 07:29:09 +00:00
Stefan Tröger
ce25de290e FEM: Fix typos in python post processing code 2025-05-02 09:25:57 +02:00
Stefan Tröger
0304faa2bc FEM: Handle python vtk user installs that conflict with FreeCAD VTK 2025-05-02 09:25:57 +02:00
Stefan Tröger
96e9e7a17a FEM: Fix test with new python filter and other small fixes 2025-05-02 09:25:56 +02:00
Stefan Tröger
d51d5a3b0b Fem: correctly handle python filters if vtk python is not available 2025-05-02 09:25:56 +02:00
Stefan Tröger
0217a2176e Fem: make python filter build process more elegant 2025-05-02 09:25:56 +02:00