Commit Graph

40610 Commits

Author SHA1 Message Date
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
Kacper Donat
49ff7b8bf0 Part: Use TopoShape instead of TopoDS_Shape
This changes Attacher to use more our own TopoShape class which is more
information rich.
2025-01-04 16:32:52 +01:00
Kacper Donat
23bdfeb672 ServiceProvider: Use std::string as key for services map
This fixes potantial crash that can happen on certain platforms like
macOS due to `typeid(T).name()` returning different pointers to string
which does not happen on all platforms.
2025-01-04 16:32:47 +01:00
Kacper Donat
878dd55ed0 ServiceProvider: Better naming of methods
This commit renames methods of ServiceProvider to be easier to
understand. It also replaces the misleading singleton with more correct
here global instance of class.
2025-01-04 16:32:47 +01:00
Roy-043
19b4470ce9 Draft: comment out 3 test files with only dummy tests
Some Draft test files contain only dummy tests (`aux.fake_function`). Running them will just open a new file and then immediately close it. This can result in issues with code that is called with a delay. See #18679. Disabling these tests by commenting them out avoids this.
2025-01-04 12:20:33 +01:00
Roy-043
a974e413fa Merge pull request #18857 from Roy-043/Draft-Minor-cosmetic-changes-to-test-files
Draft: Minor cosmetic changes to test files
2025-01-04 01:16:48 +01:00
Roy-043
2b35ad2281 Draft: Minor cosmetic changes to test files 2025-01-03 22:11:05 +01:00
Roy-043
b639b20148 Merge pull request #18851 from Roy-043/Draft-Introduce-base-classes-for-Draft-tests
Draft: Introduce base classes for Draft tests
2025-01-03 21:04:21 +01:00
Roy-043
28d177a725 Add another missing import 2025-01-03 20:32:17 +01:00
Roy-043
4ba16cebb7 Add missing import 2025-01-03 20:10:47 +01:00
Roy-043
4d37256877 Update CMakeLists.txt 2025-01-03 19:56:20 +01:00
Roy-043
0bc9737ca6 Draft: Introduce base classes for Draft tests
To avoid code duplication.
2025-01-03 16:51:42 +01:00
Roy-043
7b548bee7f Merge pull request #18841 from Roy-043/Draft-Make-test_modification-tests-independent-of-fillmode
Draft: Make test_modification tests independent of fillmode
2025-01-03 14:42:31 +01:00
Zheng, Lei
89ec079fbf Toponaming: import code related to ElementMapVersion from LS3
*Imported original code
2025-01-03 14:15:19 +01:00
Vincenzo Calligaro
e5b1d05813 Toponaming: import code related to ElementMapVersion from LS3
*Added test

Signed-off-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>
2025-01-03 14:12:04 +01:00
Roy-043
c7630ac065 Draft: Make test_modification tests independent of fillmode
Fixes #18315.

In the issue discussion the more obvious solution (change the MakeFace property of the Draft_Wires) was missed.
2025-01-03 11:38:51 +01:00
wmayer
7cfa0df4ad Gui: Remove migration warning 2025-01-02 13:34:26 +01:00
wmayer
ad314fea7e Core: Fixes #18717
Neither in #18332 nor in any of the referenced issues a reason is given why the placement of the coordinate axes must be changed.
Only doing it to make the client code look more consistent is not a valid reason.

This change breaks forward and backward compatibility and with #18717 we already have a hard to solve issue. Furthermore, at this
point of time it's not even clear what other collateral damage the change may cause.

So, this commit hides all the implementation details of the DatumElement and restores the original placement for the axes.
This commit makes the line migration code obsolete
2025-01-02 13:27:54 +01:00
wmayer
90d8c34631 App: Fix const correctness 2025-01-02 13:24:57 +01:00
wmayer
b3a1fd9676 App: Add methods to get base and direction of datum element
Add the methods DatumElement::getBasePoint() and DatumElement::getDirection() to hide implementation details and guarantee consistent behaviour.

Using the methods fixes several regressions in:
* Constraint::getDirection
* PolarPattern::getTransformations
2025-01-02 13:24:57 +01:00
marioalexis
604a764a6f Fem: Use property constraints on mesh netgen object 2025-01-01 11:21:44 -03:00
marioalexis
96aea8545b App: Assign constraints for integer and float properties using dictionary 2025-01-01 11:21:37 -03:00
wmayer
cbd116b451 Gui: Use bitmask instead of three booleans in setTemporaryVisibility to improve readability 2024-12-31 13:29:01 +01:00
Kohei Takahashi
cc77739c6d Base: Expanded FindAttribute() to get rid of frequent constant transcode 2024-12-31 10:30:23 +09:00
wmayer
63088a29a9 Gui: Reduce cognitive complexity of ViewProviderCoordinateSystem::setTemporaryVisibility 2024-12-30 19:03:58 +01:00
wmayer
8d4ddac85e Gui: Reduce code duplication in ViewProviderCoordinateSystem 2024-12-30 18:42:50 +01:00
wmayer
72cfd14768 Gui: const correctness in ViewProviderPlane 2024-12-30 17:44:04 +01:00
PaddleStroke
e977eb49e3 Core datums: Rework to improve new sketch 2024-12-30 09:05:44 +01:00
Joao Matos
9eb55a0414 CMake: Try searching for Coin3D in config mode 2024-12-28 20:49:36 +00:00
Joao Matos
11af126717 CMake: Use Coin3d CMake target directly if one exists. 2024-12-28 20:49:01 +00:00