Commit Graph

30 Commits

Author SHA1 Message Date
tetektoza
9e58650477 BIM: Fix beam rotation when Base property is cleared (#24831)
When a profile-based beam had its Base property cleared and the model
was recomputed, the beam would rotate 90 degrees, changing its direction
completely.

Profile objects are always created in the XY plane with Width along X,
height along Y and normal along Z. However, if Base is cleared, fallback
code always used YZ plane orientation for beams. This resulted in a
different orientation during cleaned Base property.

Fix is to check if we are profile-based or not and if yes, use XY plane
orientation, while we don't have this property then just use YZ plane
orientation (preserving traditional horizontal behavior).
2025-10-25 14:10:37 +02:00
Furgo
b23d580941 Add BIM workbench to .pre-commit-config.yaml (#21591)
* Add BIM workbench to .pre-commit-config.yaml

* pre-commit: ignore translations

* pre-commit: add additional ignore pattern

* [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-10-13 13:07:48 +02:00
Roy-043
23691409e0 BIM: fix self.Type regression for Wall, Stairs and Structure (#23476)
* BIM: fix self.Type regression for Wall

* BIM: fix self.Type regression for Stairs

* BIM: fix self.Type regression for Structure
2025-09-01 17:44:10 +02:00
David Balch
7d38cc45ec BIM: Remove wrong IfcType for Column/Beam
Removes check on function parameters for height & length (first
introduced in commit 5217b24), relying on values assigned in "obj".

If those params are present, they're assigned to "obj" anyway, so
the check is redundant.

Fixes #22585
2025-09-01 17:38:27 +02:00
Paul Lee
5af7ad5df4 [ArchStructure] Fix Regression : FaceMaker
Fix #22822

See discussion and example model file in github :-
https://github.com/FreeCAD/FreeCAD/issues/22822
2025-08-27 12:30:32 +02:00
Max Wilfinger
9fc40b33de Fix source string mistakes reported on Crowdin (#23157)
* Fix source string mistakes reported on Crowdin

* Update src/Mod/Draft/Resources/ui/TaskPanel_CircularArray.ui

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

* Update src/Mod/Draft/Resources/ui/TaskPanel_CircularArray.ui

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

* Update src/Mod/Draft/draftfunctions/upgrade.py

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

* Update src/Mod/Draft/draftfunctions/upgrade.py

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

* Update src/Mod/Draft/draftguitools/gui_downgrade.py

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

* Update src/Mod/Draft/Resources/ui/TaskPanel_SetStyle.ui

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>

---------

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>
2025-08-24 20:51:32 -05:00
Max Wilfinger
70f4221993 Fix missed strings for UI consistency
Fix ellipsis rendering
2025-08-08 06:37:59 -05:00
Ryan Kembrey
627a89d8db BIM: Update UI string for consistency
Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

Closes: #22328
2025-08-04 20:14:15 +02:00
Roy-043
680be1548c BIM: fix profile selection (#22223)
* Update params.py

* Update ArchStructure.py

* Update BimProfile.py
2025-07-07 14:39:55 +02:00
Roy-043
d8889c3ca4 BIM: fix setting of self.Type
Fixes #21364.

`self.Type` should be set in `__init__` and `loads`, and not in `onDocumentRestored`.

Additionally:
fixed mistake in `loads` in ifc_objects.py.
2025-06-30 11:05:41 -05:00
Syres916
f674589fbe [BIM] Fix Runtime Error when creating Wall (#21862)
* [BIM] Fix Runtime Error when creating Wall

* [BIM] Fix continueMode functionality for Wall, Panel and Structure
2025-06-23 13:59:13 +02:00
Furgo
f5737a9c5a BIM: add support for bsplines in Arch structures 2025-05-23 10:14:40 +02:00
tetektoza
bda260336c BIM: Fix missing IFC attributes for certain BIM objects
Some of the objects, like Column, or Beam do not contain `IFC
Attributes` if they are initially created.

As it turns out, they are not being created as we are checking for
`onDocRestoredDone` attribute, which is assigned in `onDocumentRestored`
function. Since users can usually just not restore a document, but just
play on a newly created document, this attribute won't be available,
thus we won't be going through whole `onChanged` logic which populates
`IFC Attributes`.

To preserve current functionality of this additional parameter and not
cause the previous errors to happen, this patch just changes from the
custom flag to globally available `Restoring` flag which tracks document
being restored more reliably.
2025-05-12 17:50:11 +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
Florian Foinant-Willig
4a61a49456 BIM: prevent user to remove core properties 2025-04-22 23:52:17 +02:00
tetektoza
2a983b587d Draft/BIM: Change Continue behavior and caching among commands (#20748)
* Draft: Cache ContinueMode setting for every tool separately

Currently ContinueMode is done to be held globally, so this patch
changes this to cache it inside `user.cfg` for every cmd separately.

* Draft: Add Chained Mode option for Dimension

Added new option under Dimension, although this is simply porting the
existing logic of "Continue" under "Chained Mode", whereas allowing
existing "Continue" mode to retrigger the command instead of placing
Dimensions in a chain.
2025-04-18 17:56:21 +02:00
marcuspollio
74e5f7c500 Merge branch 'main' into bim-cleanup-license 2025-04-11 15:13:45 +02:00
marcuspollio
637c21c18f BIM: use FreeCAD Dev Handbook license block 2025-04-05 17:55:51 +02:00
marcuspollio
fcd0be749c BIM: add FreeCAD notice in license 2025-04-04 18:15:43 +02:00
marcuspollio
d57339ee19 BIM: cleanup license and add SPDX 2025-04-04 17:46:58 +02:00
marcuspollio
ba67de4c05 BIM: cleanup imports at module root 2025-03-23 23:32:16 +01:00
Yorik van Havre
b62f971ed4 BIM: Fixed structures calculation mode - fixes #18453 2024-12-20 11:40:24 -05:00
paul
b1119ccc4f ArchStructure.py : Delete some trailing white space 2024-12-09 12:05:30 +01:00
Paul Lee
3dae0f09f1 [ArchStructure] Variant PropertrySet Support in ArchSketch
Now, user can create :

- Variant Layout / combination of ArchStructure (Slab) in addition to ArchWall and CurtainWall based on same ArchSketch, with another PropertySet
- Variant Properties / layer of ArchWall on same ArchSketch with different Width, Offset, Material, Height etc. to create Layers, Composite walls etc. (Layout, Layer, Combination, Composite, Elemented etc.)

FreeCAD Forum Discussion:

- https://forum.freecad.org/viewtopic.php?t=87721&start=130#p794785
2024-12-09 12:05:30 +01:00
Yorik van Havre
8ba34888fd BIM: ensure the Base has the correct type (#17264)
* BIM: ensure the Base has the correct type - fixes #16409

* BIM: refactor according to chenne's comment
2024-12-02 10:44:11 -06:00
Roy-043
c366ec1baa BIM: Remove calls to end_all_events to avoid Linux crash
Fixes #15723.
2024-10-10 13:47:09 +02:00
Max Wilfinger
7d21d9edb8 Fix source string typos mentioned on Crowdin (#15261) 2024-07-08 17:18:31 -05:00
Yorik van Havre
a877b36b70 BIM: Fixed IsActive of BIM commands (#14384) 2024-05-30 22:33:43 +02:00
Yorik van Havre
e7433585cf Arch: Fixed trackers ending too soon - fixes #13915 2024-05-17 12:14:25 +02:00
Yorik van Havre
76e901861d BIM: Renamed Arch to BIM 2024-05-16 17:23:10 +02:00