Commit Graph

41472 Commits

Author SHA1 Message Date
Ladislav Michl
2feb0c92c9 Main: inGuiMode() helper 2025-04-29 07:33:05 +02:00
Chris Hennes
9a5f96ac0b Merge pull request #21007 from ickby/FEM_post_fixes
Fem post fixes
2025-04-28 21:19:43 -05:00
Stefan Tröger
4479fd4d2d FEM: correct typos 2025-04-28 20:52:47 -05:00
captain0xff
101da159ec Gui: rename TaskCSysDragger to TaskTransform 2025-04-28 23:30:14 +02:00
Stefan Tröger
2c40c8291c FEM: Post task dialog opens transaction only if none is pending. Fixes item 4 in #20263 2025-04-28 18:45:05 +02:00
Stefan Tröger
95e3c08840 FEM: Add post pipeline for check analysis type. Fixes #20936 2025-04-28 18:45:05 +02:00
Stefan Tröger
c5c38a4a12 FEM: Ensure finite frame values only. Fixes #20933 2025-04-28 18:45:05 +02:00
Stefan Tröger
6cc83f470e FEM: Fix post object load of unsupported VTK data type 2025-04-28 18:45:05 +02:00
tetektoza
8d6547d519 BIM: Allow CurtainWall to have Window being assigned upon Remove/Add ops
Currently user has no possibility to insert Window to the host, if the
host is a Curtain Wall.

Solution is simple - just populate the array of acceptable hosts that
haven't been extended.

NOTE: Although this feels wrong, I've noted to change it as having some
kind of an internal flag allowing for add/remove for the host, since
extending this array looks like a really bad approach.
2025-04-28 18:20:16 +02:00
Graic
8d2cb99712 Gui: Added classic trackball orbit style (#20535)
* Gui: add classic trackball orbit

* Gui: add rounded arcball orbit
2025-04-28 11:12:53 -05:00
Ajinkya Dahale
350a416708 Sketcher: Avoid an unnecessary geometry update when trimming 2025-04-28 11:11:57 -05:00
bofdahof
21f7e7eb86 Amend script so that it works on macOS 2025-04-28 11:02:58 -05:00
Jackson Oursland
fe9ac47c6b CI: Check file name case sensitivity in lint workflow. (#20903) 2025-04-28 11:01:21 -05:00
Roy-043
ea6a30efba Draft: Add Global mode to ShapeString task panel
This PR adds the Global mode option to the ShapeString task panel.

Additionally:
* Rounding of coordinates caused by reading values from the task panel is avoided.
* Improved task panel layout: Height input above String input.
* Some code reformatting.
2025-04-28 17:57:41 +02:00
dependabot[bot]
ca5bfb17c0 Bump actions/download-artifact from 4.2.1 to 4.3.0
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4.2.1 to 4.3.0.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](95815c38cf...d3f86a106a)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 10:50:43 -05:00
João Neves
0d38b2f7c5 Core: Fixed a bug where an empty document disappears (#20554)
* Core: Fixed a bug where an empty document disappears

Created a flag named autoCreated to distinguish an autoCreated
document created in the startup from a manually document.
Implemented a setter and a getter for this new flag.
Added a codition that verifies if a document is autoCreated
when opening another document to close it in the correct case.
Implemented unit tests for theses cases. Fixes #19868.

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>

* Tests: Fix failing auto-created document tests

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>

* Tests: moved created tests to the existing Document test framework.

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>

---------

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>
2025-04-28 10:46:52 -05:00
Furgo
9c1e3d8bc5 BIM: BIM_TDView, add tooltip info on how to insert the view on a particular page (#20932)
* BIM: add tooltip info on how to insert the view on a particular page

* Fix typo

* BIM: split tooltip comment for better code readability

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

---------

Co-authored-by: Benjamin Nauck <benjamin@nauck.se>
2025-04-28 17:46:09 +02:00
Bas Ruigrok
5765f416ca Gui: MayaGesture navigation fixes (#20948)
* Gui: Gesture and MayaGesture style disable H key in editing mode

* Gui: MayaGesture style go back to IDLE after dragging/panning/zooming

* Gui: MayaGesture more Maya like zoom behavior
2025-04-28 10:45:21 -05:00
J-Dunn
28620363fd CAM: Remove comment (#20931)
* Update helix.py

* [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-04-28 10:39:57 -05:00
tarman3
b9ed43f222 CAM: Fix array warning 2 2025-04-28 10:38:24 -05:00
David Carter
a6ffcf63b6 Materials: Model Manager External Interface (#20825)
* Materials: Model Manager External Interface

Implement the ModelManagerExternal class for the external Materials
interface.

This is part of the ongoing merges of code to support external material
interfaces. In this PR the ModelManagerExternal class is implemented,
along with changes to supporting classes required for this class.

* Apply reviewer feedback
2025-04-28 10:29:04 -05:00
muezabdalla
56d3ca7b72 making the buttons of the temperature constrain expandable (#20894) 2025-04-28 10:11:40 -05:00
paul
ed85cd3a5d [ArchStairs] ArchSketch Support and Refactoring Phase 2 (#21025)
* [ArchStairs] ArchSketch Support and Refactoring Phase 2

Phase 2 Subsequent to https://github.com/FreeCAD/FreeCAD/pull/20069

FC Forum Discussion:-
https://forum.freecad.org/viewtopic.php?p=814274#p814274

ArchSketch Support, PropertySet, and Refactoring to enable more complex Stairs shape.

* [ArchStairs] ArchSketch Support and Refactoring Phase 2 - Typo fix

* [ArchStairs] ArchSketch Support and Refactoring Phase 2 - Clean up Tab
2025-04-28 10:04:40 +02:00
Roy-043
0d6a07728a BIM: Update working plane related code
Some code stemming from the old BIM external workbench still used `FreeCAD.DraftWorkingPlane`.
2025-04-28 10:01:35 +02:00
Luz Paz
4619ab1bff Misc: Fix various typos
Found via codespell
2025-04-27 19:32:19 -05:00
tetektoza
b138276a15 Core: Introduce PDF Import-Export dialog (#20860)
* Core: Introduce PDF Import-Export dialog

Currently, we only have hardcoded exporting to one pdf version, which
leads to (as in one of the below issues) to problems, such as
non-transparent layers, which are by default not supported in PDF/A-1b.

So, this patch adds an option to the user to select their preferred PDF
version by introducing new dialog under Import-Export in Preferences,
and allowing to update that version before exporting.

* Core: Add informational messages regarding selected PDF format

* Gui: Handle Qt < 6.8 unsupported PDF format

* Gui: Switch PDF export prefs dialog to use tr()

* Gui: Remove center alignment of PDF version description

---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2025-04-27 19:31:34 -05:00
Ladislav Michl
47c1565edf Base: remove explicit namespace-name qualifier from *PyImp.cpp
Explicit Base namespace-name is used randomly across PyImp sources.
Remove it.
2025-04-27 00:05:32 +02:00
Ladislav Michl
24d55dc616 Base: cleanup includes in *PyImp.cpp
Sort includes and implicitely add missing ones. While there
consistently explain where generated files some from.
2025-04-27 00:05:32 +02:00
Kacper Donat
b14d3a224b Misc: Replace dynamic_cast with qobject_cast 2025-04-26 14:23:25 +02:00
Kacper Donat
f2cd99c50a Material: Replace dynamic_cast with qobject_cast 2025-04-26 14:23:25 +02:00
Kacper Donat
c704622605 Sketcher: Replace dynamic_cast with qobject_cast 2025-04-26 14:23:25 +02:00
Kacper Donat
119dc079c1 Spreadsheet: Replace dynamic_cast with qobject_cast 2025-04-26 14:23:25 +02:00
Kacper Donat
216166d853 TechDraw: Replace dynamic_cast with qobject_cast 2025-04-26 14:23:25 +02:00
Kacper Donat
6e2583cdcd Gui: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
d586447a7d Sketcher: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
4487dc84a0 Fem: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
ecdadf7955 Part: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
f2c3b19198 Spreadsheet: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
5738341584 Robot: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
b5119d996b PartDesign: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
d9d518f905 TechDraw: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
81c772938e Mesh: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
6d99872b0f Assembly: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
76013ab7e0 Points: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
7accf81bbe App: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Kacper Donat
019a25ad75 Surface: Add missing SurfaceExport in Surface classes 2025-04-26 14:23:25 +02:00
Kacper Donat
caa841c960 Part: Add missing PartExports in Part Features 2025-04-26 14:23:25 +02:00
Kacper Donat
01241245a1 Merge pull request #20732 from furgo16/bom-properties
Assembly: enable BOM columns to be autopopulated with given properties
2025-04-25 23:22:49 +02:00
Syres916
b2a9f0f7d2 [Gui] Fix bottomRight index by correcting last row count 2025-04-25 17:50:11 +02:00
aprospero
5f8eac49f3 importSVG - Path generation Overhaul (#20749)
* add precision Parameter for importSVG to preferences

* rewrite svgpath import

reorganize the existing svg interpretation code snippets by dividing the responsibilities for data provision and actual shape generation.
That bears the opportunity to optimize the resulting construction data regarding consistency and precision.

* create cuts from inner paths

organize paths in a tree structure where completely contained paths are children of their sorrounding paths

In a second step the even depth paths are cut with their respective (uneven depth) children.

* move svg path import logic into its own module

* Restructure how the import result is controlled by preferences.

* reintroduce alternative transform function

Using transformGeometry() on shapes results in degenerations like lines mutating to bsplines of 1st order. For non-orthogonal Transformations this can't be avoided. But for orthogonal transformations (the majority) we can apply those transformations without degeneration.

The necessary function including fallback to transformGeometry() is already in the code but was disabled due to a regression.

See: https://tracker.freecad.org/view.php?id=2062

Associated commits: f045df1e 2509e59b d4f3cb72

I reactivate the code since the degeneration of paths seems a bigger issue to me than misformed svg files producing incorrect measurements. Degenrated paths are often the culprit for later arising 3D-calculation errors.

* avoid path degeneration by keeping scale transformations uniform

* repair style application on shapes

the style should be based on the configured svgstyle mode in the svgimport preferences.

* improve logging of face generation.

* refactor: rename _precision_step to _tolerance

naming according to example set in draft utils.

* fix: indentation

* spelling
2025-04-25 16:44:03 +02:00