Commit Graph

40439 Commits

Author SHA1 Message Date
Yorik van Havre
b5e2e8c007 BIM: Added classifications support to nativeifc (#18444)
* BIM: Added classifications support to nativeifc

* BIM: Fixed lint warnings
2025-01-07 10:35:37 +01:00
Roy-043
6deb424539 Draft: Closed corners for extruded Facebinders (#18901)
* Draft: props_changed_placement_only should ignore material props

The new material related properties (Density, Volume and Mass) must be ignored by the `props_changed_placement_only` function.

Without this moving a Draft_Point will fail for example.

* Draft: Closed corners for extruded Facebinders

Fixes #13816.

The `makeOffsetShape` method that creates the extruded shape is quite picky. For example, it will work for a pyramidal shell (4 triangles) with a square floorplan, but not if the floorplan is slightly rectangular. To get closed corners the `Sew` property of the Facebinder must be set to `True`. If extruding does not work properly, the code will retry with `Sew` disabled.

There is also some code that tries to convert flat B-spline faces created between the main offset faces into planar faces. In some cases that code will fail (the results of `makeOffsetShape` can already contain errors). If that is the case the original shape created by `makeOffsetShape` is used.

* Rebase to restore base.py
2025-01-07 10:23:33 +01:00
JULIEN MASNADA
049f42c887 SH3DImporter: Fix walls Length attribute (#18854)
* Make IFC project optional

* make sure wall.Length is properly set

---------

Co-authored-by: Yorik van Havre <yorik@uncreated.net>
2025-01-07 10:03:02 +01:00
Roy-043
f34a8b5bfd Merge pull request #18899 from Roy-043/Draft-props_changed_placement_only-should-ignore-material-props
Draft: props_changed_placement_only should ignore material props
2025-01-06 20:33:41 +01:00
Roy-043
8c5a87e894 Part: Rename new datum commands
Fixes #18853.
2025-01-06 20:28:00 +01:00
lorenz
013eb6e635 pixi: update to py3.13 (#18832)
* pixi: update to py3.13

* pixi: Update gh-action to use pixi v0.39.4

* Pixi: add dep. xorg-xproto for linux

* update lock-file
2025-01-06 14:34:17 -03:00
Syres916
b86e1adb22 [Techdraw] Import SVG files with UTF-8 encoding (#18816)
* [Techdraw] Fix importing SVG files with UTF-8 encoding

* [Techdraw] fix Lint feedback
2025-01-06 18:32:56 +01:00
FEA-eng
5236541045 FEM: Add accuracy parameter for CalculiX buckling analysis (#18790)
* FEM: Update solver.py

* FEM: Update write_step_equation.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-01-06 18:24:56 +01:00
FEA-eng
73ce3b15d6 FEM: Update magnetodynamic_writer.py 2025-01-06 18:24:05 +01:00
Roy-043
af667d6fd8 Part: copy_visual_attributes did not handle Draft Link arrays
Fixes #16541.
Fixes #18760.
2025-01-06 18:16:46 +01:00
Benjamin Nauck
af1aa403e2 Spreadsheet: Center text (v+h) vertical headers 2025-01-06 18:15:30 +01:00
Yury Shvedov
f48ccba2d9 Macro: allow to specify extra system paths for macro
This introduce new option `-E [ --macro-path]` to specify extra system
paths of macros. The macro found in this paths will appear in `Macros`
dialog at `System macros` tab.

Change-Id: Ic21631ec0ebe8af5c7f42b4fe95400cfb67807d5
2025-01-06 18:14:15 +01:00
WandererFan
93aa3b312f [TD]Fix RichText parent in scene (fix #18283) (#18768)
* [TD]allow DrawViewAnno to be attached to another view

* [TD]allow image and spreadsheet attach to view

* [TD]ensure correct parent in scene

* [TD]refactor command helpers to separate file

- gathering the helpers in one place
- helper redundancy to be address in another change

* [TD]create symbol, spreadsheet, image with parent

* [TD]fix claimChildren for some views

- also includes many lint fixes
2025-01-06 18:11:25 +01:00
wmayer
b1d6a82178 Gui: Check for exising layout before accessing it
It still must be checked if the crash in #18747 will be fixed.
2025-01-06 18:09:46 +01:00
David Carter
3576640691 Materials: Physical properties reversion
Reverts PR #17438

The PR experienced sever performance issues when the file contained
objects with errors. This PR removes the physical properties attributes
and its associated calculations.

It retains changes to the material filter funtions which were not
affected by the errors.
2025-01-06 18:07:59 +01:00
mosfet80
d8794b3a14 Clean OpenSCAD2Dgeom.py 2025-01-06 18:04:07 +01:00
wmayer
d0eb91c4cc Part: Fix doc string of TopoShape.inTolerance 2025-01-06 18:03:10 +01:00
WandererFan
a3e49023d1 [TD]Symbol scaling (fix #14400) (#18757)
* [TD]add legacy/new svg scaling pref

* [TD]Change Svg scaling logic (fix 14400)
2025-01-06 18:02:37 +01:00
marioalexis
9e6f3660e5 Fem: Add suppressible extension to mesh element objects 2025-01-06 17:56:30 +01:00
marioalexis
3d830b5b2e Fem: Add suppressible extension to objects - fixes #12115 2025-01-06 17:56:30 +01:00
Yorik van Havre
6edd0daa1e BIM: Quantities support for nativeIFC objects (#18689)
* BIM: Quantities support for nativeIFC objects

* BIM: Added nativeIFC support for schedules
2025-01-06 11:55:50 -05:00
MisterMaker
6acd1fe3d0 Stylesheets spreadsheets visual fix. (#18719)
* this fixes the spreadsheet alignment and the corner button

* missed a line
2025-01-06 17:55:13 +01:00
wmayer
d979235a48 Gui: Remove code duplication in PythonConsole class 2025-01-06 17:53:59 +01:00
wmayer
0dba0a3b31 Gui: Hide line marker and do not highlight current line in Python console 2025-01-06 17:53:59 +01:00
wmayer
35700db40e Sketcher: Add an option to always add ext. geometry as reference 2025-01-06 17:48:00 +01:00
wmayer
7566200f0a Fix German translation
until the next download from crowdin
2025-01-06 17:25:44 +01:00
Roy-043
f773dfad91 Draft: props_changed_placement_only should ignore material props
The new material related properties (Density, Volume and Mass) must be ignored by the `props_changed_placement_only` function.

Without this moving a Draft_Point will fail for example.
2025-01-06 17:23:37 +01:00
Roy-043
b359a2c46c Draft: make_sketch.py: Use sketcher methods to add constraints (#18805)
* Draft: make_sketch.py: Use sketcher methods to add constraints

A sketch object has its own methods to add coincident, horizontal and vertical constraints. Using those methods allows to simplify the make_sketch.py code. The new code applies the mentioned constraints to the whole sketch,  instead of per object. The old code would not add coincident constraints between seperate, but connected, objects. the new code does.

Note that the code for point objects (not changed in this PR) does not work properly.

* Fix 2 issues

* The Sketcher detect functions need a tolerance argument.
* obj.Shape.copy() does not work properly for a Draft_Point. As a workaround a Part Vertex is created instead.
2025-01-06 14:56:53 +01:00
Yorik van Havre
2a726471ce BIM: Fixed nativeIFC license - issue #18622 2025-01-06 14:36:34 +01:00
Paul Lee
742ca3204c [ArchWall] Fix Regression - EnsureBase prevent creation without Base
Refer to discussion at -
https://github.com/FreeCAD/FreeCAD/pull/18651
https://github.com/FreeCAD/FreeCAD/issues/16409

Wall should do without Base. Base validity tested in execute() prevented the desired and documented behaviour.

EnsureBase() is remarked out in execute() and to be run in getExtrusionData().  With this fix, if there is no Base, or Base is not valid, Wall would be created as declared.
2025-01-06 11:49:50 +01:00
Paul Lee
23284cd08d [ArchStairs] Improve Stairs Creation and ensureBase
Refer to discussion at -
https://github.com/FreeCAD/FreeCAD/pull/18864
https://github.com/FreeCAD/FreeCAD/pull/18651
https://github.com/FreeCAD/FreeCAD/issues/16409

Like Wall, Stairs should do without Base. Base validity tested in execute() prevented the desired and documented behaviour.

With this improvement, EnsureBase() is now only to be run when there is Base. If there is no Base, or Base is not valid, Stairs would be created as declared.
2025-01-06 11:46:10 +01:00
SurajDadral
e15285ae41 BIM: fixes stirrups placement in ifc export
Fixes: https://github.com/amrit3701/FreeCAD-Reinforcement/issues/223
2025-01-06 10:32:23 +01:00
Roy-043
03c167ec47 BIM: getDefaultColor: change transparency to alpha 2025-01-06 10:03:44 +01:00
Roy-043
26536c9725 Merge pull request #18863 from Roy-043/Draft-comment-out-3-test-files-with-only-dummy-tests
Draft: comment out 3 test files with only dummy tests
2025-01-05 16:10:16 +01:00
Kacper Donat
8062779ffe Gui: Initialize reference rotation properly 2025-01-04 16:32:52 +01:00
Kacper Donat
62cdaaff56 Gui: Zero out rotation only if more than 1 axis changed 2025-01-04 16:32:52 +01:00
Kacper Donat
178535980e Gui: Use extrinsic angles for absolute position mode in transform dialog 2025-01-04 16:32:52 +01:00
Kacper Donat
27c1eaa39c Gui: Disable controls when selecting origin in transform dialog 2025-01-04 16:32:52 +01:00
Kacper Donat
df2e0ba895 Gui: Fix crash on qBounds for imperial units 2025-01-04 16:32:52 +01:00
Kacper Donat
fe96e7e194 Gui: Reset UVW coordinate system in transform when rotation changes 2025-01-04 16:32:52 +01:00
Kacper Donat
d08810c649 Part: Extract methods from AttachEngine::readLinks 2025-01-04 16:32:52 +01:00
Kacper Donat
a3bf63bae2 PD: Forward transform requests to Body 2025-01-04 16:32:52 +01:00
Kacper Donat
736fbee539 App: Fix GeoFeature::getGlobalPlacement when rootObj is Link
This fixes a case when in case of rootObj being Link placement was not
calculated correctly due to not changing of the document. While for
original use it was fine as this was mostly used in case where there was
defined non-link root for general case Links can be root objects of the
document.
2025-01-04 16:32:52 +01:00
Kacper Donat
25cf119c60 Gui: Add Dragger placement preview in Transform dialog 2025-01-04 16:32:52 +01:00
Kacper Donat
fab235682d Gui: Make ViewProviderLink based on ViewProviderDragger 2025-01-04 16:32:52 +01:00
Kacper Donat
1df3b5be6c Gui: Rework TaskCSysDragger into new Transform Dialog
This commit refactor ViewProviderDragger and TaskCSysDragger to be more
modern and to support selecting TransformOrigin.
2025-01-04 16:32:52 +01:00
Kacper Donat
b470f74398 Gui: Add QuantitySpinBox normalization 2025-01-04 16:32:52 +01:00
Kacper Donat
8813a0c115 Gui: Refactor TDragger 2025-01-04 16:32:52 +01:00
Kacper Donat
2a69e3d878 Base: Add ComplexGeoData::centerOfGravity helper
This adds a simple quality of life helper returning center of gravity as
std::optional instead of C style method accepting reference and
returning bool to indicate method success.
2025-01-04 16:32:52 +01:00
Kacper Donat
88141d6dce Part: Add midpoint attachement mode
This adds midpoint attachement mode to Attacher. It works just like
method for finding placement of JCS in Assembly.
2025-01-04 16:32:52 +01:00