Commit Graph

42513 Commits

Author SHA1 Message Date
PaddleStroke
75edcba686 PartDesign: TaskFeaturePick : Fix LCS temporary visibility 2025-04-15 21:19:34 +02:00
Jackson Oursland
844ada3727 CI: make daily build occur at 18:00 UTC. (#20814)
* CI: make daily build occur at 18:00 UTC.
2025-04-15 13:59:36 -05:00
Furgo
3add923fc0 Stylesheets: fix undo button arrows on FreeCAD Dark/Light themes
Co-authored-by: MisterMakerNL <marijn82@gmail.com>
Fixes: #19372
2025-04-15 20:33:45 +02:00
PaddleStroke
cd423f04ad Sketcher: Refactor SketchObject::Fillet() (#20544)
* Sketcher: Refactor SketchObject::Fillet()

* Update Geometry.h

* Update Geometry.cpp

* Update SketchObject.cpp

* Fix line-circle tangent issue

* Replace M_PI

* Update Geometry.cpp

* Update Geometry.cpp

* Update src/Mod/Part/App/Geometry.cpp

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>

* Update Geometry.cpp

---------

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-04-15 20:01:31 +02:00
Sameer Mishra
8db5b1ff74 BIM: Fix 'Convert to type' dialogue unhandled placeholder #20676 (#20705)
Handle %1 placeholder that was appearing in text strings
in the 'Convert to type' dialogue. This was affecting multiple
language files in the translation system.

This change improves the readability and correctness of the displayed text
in the application interface.

The dialog now dynamically shows the correct type (e.g., 'WallType', 'BeamType')
in the user's interface language.

---------

Co-authored-by: _sameer <sameer.mishra@infra.market>
2025-04-15 12:58:28 -05:00
Alfredo Monclus
a7dce4e4b3 Gui: inputfield only show invalid states 2025-04-15 13:52:33 +02:00
marioalexis
da3af1af5b Fem: Update command FEM_SolverRun 2025-04-15 08:49:23 -03:00
marioalexis
006b73bf54 Fem: Add option to set data mode for SolverCalculiX 2025-04-15 08:49:23 -03:00
Jacob Oursland
9b8efeefed CMake: use job pools to restrict number of concurrent compilers and linkers.
When using Ninja build system, CMake can specify job pools for number of concurrent compilers
and concurrent linkers.  This PR employes the heuristic of max number of compilers as available
physical ram / 1 GiB and a single linker instance to prevent using excessive RAM.  Modern
linkers are multithreaded and should not be run concurrently due to risk of resource exhaustion.
2025-04-15 13:04:22 +02:00
Jacob Oursland
e72c95943f pixi: use clang on Linux.
clang uses considerably less memory on Linux allowing more concurrent instances than with g++.
Using clang reduced build times on a machine from 63m to 32m.
2025-04-15 13:04:13 +02:00
Kacper Donat
abbd2a6c65 Merge pull request #20747 from hyarion/refactor/use-toDegrees-and-toRadians
Use toDegrees and toRadians
2025-04-15 09:21:34 +02:00
Benjamin Nauck
f22f3705db Use Base::toDegrees() instead of manually converting 2025-04-15 07:16:39 +02:00
Benjamin Nauck
21fbf8e539 Use Base::toRadians() instead of manually converting 2025-04-15 07:16:36 +02:00
mosfet80
1f8c8043fc Update sub_buildPixi.yml
https://github.com/prefix-dev/setup-pixi/releases

https://pixi.sh/dev/CHANGELOG/
2025-04-15 06:46:27 +02:00
Jacob Oursland
b9ca0db183 pixi: Use the mold linker on Linux. 2025-04-15 06:42:55 +02:00
Kacper Donat
8d04d66c30 Merge pull request #20713 from hyarion/refactor/tighten-up-tools
Tighten up types in Base/Tools.h math functions
2025-04-14 23:58:26 +02:00
Jackson Oursland
df1c5e73b2 CMake: set optimization of debug builds to -Og. (#20780)
* CMake: set optimization of debug builds to -Og.

* Update cMake/FreeCAD_Helpers/SetGlobalCompilerAndLinkerSettings.cmake

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>

* Fix indentation level

---------

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-04-14 21:34:46 +00:00
Roy-043
47037105b1 BIM: fix BIM_WPView command (#20741)
* BIM: fix BIM_WPView command

The BIM_WPView command did not work properly. This was mainly due to a faulty import.

* Updated to avoid a linter warning
2025-04-14 11:28:55 -05:00
Chris Hennes
6eea3d4b85 Merge pull request #20549 from davesrocketshop/external_manager_pr
Material: Interface with an external module
2025-04-14 11:23:53 -05:00
Roy-043
a0796f6625 BIM: fix Arch_Schedule column width handling
Fixes #20723.

The clearAll method resets the column widths of the sheet. The code now stores the old widths and restores them after calling the method.

The old problem that the method would remove the custom property no longer occurs so that code was removed.
2025-04-14 11:21:26 -05:00
Bas Ruigrok
7b46ac4cd6 Use longest edge in face for horizontal/vertical alignment (#20374)
* App: Add second direction to getCameraAlignmentDirection()

* Part: Find longest face edge for horizontal/vertical alignment

* Gui: Use longest face edge for horizontal/vertical alignment

* App: Improve horizontal/vertical alignment for Datums and LCS
2025-04-14 11:20:49 -05:00
Chris Mayo
1f30874e7a CMake: Fix duplicating DESTDIR in Designer plugin installation path
CMake already handles DESTDIR.
2025-04-14 11:18:26 -05:00
PaddleStroke
7e49be4f0f Sketcher: Refactor DrawSketchHandler::seekAutoConstraint (#20476)
* Sketcher: Refactor DrawSketchHandler::seekAutoConstraint

* to squash

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

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

* Update DrawSketchHandler.h

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

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

* move to protected. To squash

* remove arc of ellipse forgotten if

* Update DrawSketchHandler.cpp

* Update src/Mod/Sketcher/Gui/DrawSketchHandler.h

Co-authored-by: Benjamin Bræstrup Sayoc <benj5378@outlook.com>

* Update DrawSketchHandler.h

* Update DrawSketchHandler.cpp

* revert hitshapedir

* Remove never used if condition

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Benjamin Bræstrup Sayoc <benj5378@outlook.com>
2025-04-14 11:15:00 -05:00
mosfet80
3eabb0a29b MOD: assembly clean (#20557)
* MOD: assembly clean

clean code

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

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

* Update AssemblyLink.cpp

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-04-14 11:05:55 -05:00
Roy-043
6c3d85221d Draft: Simplify working plane view observer callback
The old callback contained unnecessary checks that prevented the working plane from working correctly if the Tray was missing.
2025-04-14 11:01:48 -05:00
Roy-043
046d6af286 BIM: HorizontalArea prop did not detect islands
Forum topic:
https://forum.freecad.org/viewtopic.php?t=95973

This was fixed by using `Part::FaceMakerCheese`.
2025-04-14 11:00:40 -05:00
David Carter
58cc0014e1 Dependencies: Add lru-cache library
Adds a generic C++ based caching library to support material external
modules. This is a template based library which means there is nothing
to build or link.

The only modification is to the CMakeLists.txt file to enable
integration with FreeCAD,

Original source: https://github.com/goldsborough/lru-cache
2025-04-14 11:00:05 -05:00
Benjamin Bræstrup Sayoc
8e7d3325b3 TechDraw: refactor click handles for editable fields
Fixes #19387
2025-04-14 10:46:09 -05:00
Chris Hennes
e2c2017df5 Merge pull request #20649 from pieterhijma/viewprovider-toggle-visibility
[Core] Allow setting visibility toggling in the ViewProvider
2025-04-14 10:45:14 -05:00
Roy-043
122dc056ab BIM: BIM_Leader would create a wire with fewer than 2 points
If the BIM_Leader was escaped without clicking a point, or after cicking only 1 point, a Draft_Wire object would still be created.
2025-04-14 10:34:13 -05:00
Jackson Oursland
f6df2b1c5f Add cmake to Ubuntu package dependencies. (#20578) 2025-04-14 10:16:58 -05:00
tarman3
9ca9d1b1f1 Fix typos in warning message 2025-04-14 14:20:20 +02:00
tarman3
4434cebcac Less warning with Array DressUp 2025-04-14 14:20:20 +02:00
Jacob Oursland
d1918be11c pixi: Unset CFLAGS, CXXFLAGS, DEBUG_CFLAGS, and DEBUG_CXXFLAGS.
pixi sets a variety of environment variables, which unfortunately includes compiler optimization flags.
This PR unsets the compiler flags for parity with other environments.

A consequence of this is that debug builds are no longer build with high optimization, which is a desirable outcome.
2025-04-14 10:05:41 +02:00
Benjamin Nauck
282662e735 Base: make our fmod require floating point values 2025-04-14 08:00:57 +02:00
Benjamin Nauck
494434fc5f Base: Make degrees and radians convertions safer and faster 2025-04-14 08:00:57 +02:00
Benjamin Nauck
f12a63af87 Base: Make sgn branchless 2025-04-14 08:00:57 +02:00
Benjamin Nauck
ac0e188141 Base: Require clamp to take arithmetic values
use std::clamp internally, function should probably be removed
2025-04-14 08:00:48 +02:00
pre-commit-ci[bot]
ed53455c22 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-04-13 23:21:39 +00:00
jalapenopuzzle
6e190328a8 CAM: Snapmaker use manufacturer's data table instead of calculating boundary offsets 2025-04-14 08:03:17 +10:00
pre-commit-ci[bot]
8f7488479c [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-04-14 08:03:17 +10:00
jalapenopuzzle
89a0faf8ee CAM: snapmaker add --quick-swap and --bracing-kit options 2025-04-14 08:03:16 +10:00
jalapenopuzzle
e22eb3cce9 CAM: snapmaker clean output_header() 2025-04-14 08:03:16 +10:00
jalapenopuzzle
25ba7b3c84 CAM: snapmaker add linear module lead screw pitch 2025-04-14 08:03:15 +10:00
jalapenopuzzle
394046df36 CAM: snapmaker toolheads and spindle speeds
* Removed generic snapmaker machine and toolhead configuration. The idea of running a CNC code that is not matched to the machine's abilities and work area seems dangerous.
* --machine argument is required
* --toolhead argument is required when the selected machine is compatible with more than one toolhead. When the selected machine only supports one toolhead, it is selected as the default.
* --spindle-percent defaults according to the selected toolhead capabilities. If the toolhead can do RPM, then RPM is used, otherwise falls back to percent. This option now functions as an override.
* fixed a bug in convert_spindle() when RPM is selected. The gcode was not returned.
2025-04-14 08:03:14 +10:00
jalapenopuzzle
26c8aacc54 CAM: snapmaker --machine is a required option 2025-04-14 08:03:14 +10:00
jalapenopuzzle
f6e12966dc CAM: snapmaker machines separate T machines and capitalise names 2025-04-14 08:03:13 +10:00
jalapenopuzzle
c6f62b0523 CAM: snapmaker machines separate boundaries 2025-04-14 08:03:12 +10:00
jalapenopuzzle
9d819f1ad3 CAM: snapmaker use order {min,max} 2025-04-14 08:03:12 +10:00
jalapenopuzzle
cb5966371c CAM: snapmaker unit tests fix type lint
NOTE get_gcode() can return an argparse.Namespace if something goes wrong with parsing the arguments.
This is contrary to the str specification.
2025-04-14 08:03:11 +10:00