Commit Graph

540 Commits

Author SHA1 Message Date
Furgo
9b0ac4370b BIM: enable live updates of the cut when changing placement 2025-09-25 14:26:54 +02:00
Furgo
e00e0011ab BIM: redesign rotation, center and resize controls 2025-09-25 14:26:54 +02:00
Furgo
a1bfc2afb5 BIM: separate scope and placement & visuals in Task panel 2025-09-25 14:26:54 +02:00
Furgo
f4e642a729 BIM: Fix inverted cut direction for rotated SectionPlane
Rotating an ArchSectionPlane object caused its cutting effect to flip,
affecting both the live `CutView` and 2D projections. The
`_SectionPlane.execute()` method incorrectly tried to auto-correct the
orientation of a temporary plane before applying the object's final
placement. The fix refactors this to a "transform-then-verify" pattern:
the object's full `Placement` is now applied to the temporary plane
first, and only then is the resulting face's actual normal validated
against the intended normal from the `Placement`. This ensures the
`Shape` is always geometrically consistent with the `Placement`, making
the cut direction predictable at all angles.
2025-09-25 14:26:54 +02:00
Furgo
50d98ceeb7 BIM: make cut view a toggle button 2025-09-25 14:26:54 +02:00
Furgo
9359af070a BIM: Use correct icon for SectionPlane 2025-09-25 14:26:54 +02:00
Furgo
4e2ea3bc2d BIM: Change SectionPlane task panel button from OK to Close 2025-09-25 14:26:54 +02:00
Furgo
d0ff3e8dee BIM: Fix SectionPlane's label being editable on double-click 2025-09-25 14:26:54 +02:00
Furgo
50122d651c BIM: add Cut View toggle on SectionPlane task panel 2025-09-25 14:26:54 +02:00
Pascal de Bruijn
ea30e5bbb9 TechDraw: reorganize Templates (#23719) 2025-09-23 13:40:13 -05:00
Paul Lee
c379d5d713 [ArchCurtainWall] Regression Curve Support
Fix https://github.com/FreeCAD/FreeCAD/issues/23945

"Arch_CurtainWall results in an error when trying to create it based on a sketch consisting of spline or arc."

This fixes the regression introduced in -
147e97d407 (diff-b4849bbc0941a0f60f25d13c40d4bfeca94171f55bd78a6196362343c3fdcf6fR287)
2025-09-22 17:30:35 +02:00
Roy-043
a5763bee07 BIM: fix material handling of equipment 2025-09-22 17:26:58 +02:00
luzpaz
975b8103ff BIM: Pin upstream pyshp shapefile.py URL to version 2.4.1
This is the safest solution for now until someone can vet the upstream breaking changes (https://github.com/GeospatialPython/pyshp/blob/master/README.md#breaking-changes)
2025-09-19 09:58:43 +02:00
luzpaz
a7d8cdecd6 BIM: Update shapefile import URL to latest version
Fixes #23911
2025-09-19 09:58:43 +02:00
Chris Hennes
02721eec37 Update translations 2025-09-15 2025-09-16 09:55:13 +02:00
FEA-eng
06737f7dee Fix typos in the strings reported in Crowdin (#23956)
* BIM: Update dialogWelcome.ui

* BIM: Update dialogWelcome.ui

* Mesh: Update Command.cpp

* MeshPart: Update Tessellation.cpp

* Mesh: Update Selection.ui

* Robot: Update TaskTrajectoryDressUpParameter.ui

* Core: Update MayaGestureNavigationStyle.cpp

* [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-09-15 21:51:56 -05:00
Roy-043
a44ac1aa58 BIM: fix material handling of component 2025-09-15 15:29:55 +02:00
Furgo
02bc3f60b1 BIM: fix double click both editing label and opening task panel 2025-09-15 15:28:58 +02:00
Roy-043
daba1fc8a5 BIM: fix issues with T-slot profile (#23813)
* BIM: fix issue with T-slot profile

* BIM: fix issue with T-slot profile

* BIM: fix issue with T-slot profile

* Update ArchProfile.py: remove temp print
2025-09-15 15:28:16 +02:00
Furgo
0347248925 BIM: fix double click both editing label and opening task panel 2025-09-15 15:24:11 +02:00
Paul Lee
eb4db5466a [Arch] Fix makeStairs Move & Addition Behaviour Consistency
Consistent Addition

1. Additions are hidden by onChanged()
2. makeStairs() previously made 1st segment of a Complex Stairs went to Base and the rest segments went to Additions
3. For consistency in grouping and visibility, all segments in go to Additions with this commit

Consistent Move With Host

1. A Complex Stairs has multiple segment (in Additions) and railings (in RailingLeft/Right), they should move togther.
2. All segments and Railing set MoveWithHost to True upon creation, and thus move together, regardless system setting default with this commit

Other Associated Inconsistency

    Other visibility default behaviour as discussed in https://forum.freecad.org/viewtopic.php?p=844965#p844920 would be added in subsequent PR

Last associated PR/commits :
2025-09-15 15:19:49 +02:00
Chris Hennes
23bcfd12ff Update translations 2025-09-09 2025-09-10 08:53:41 +02:00
Roy-043
993a5a6ac9 BIM: fix transparency of windows 2025-09-08 14:36:18 +02:00
Paul Lee
b315ac3605 [ArchStairs] Fix-hideSubobjects
Arch Objects usually has hideSubobjects to hide children.

ArchStairs does not have this and children (e.g. Additions, Subtraction [Railing to be added]) does not hide; this fix the problem.

Other Associated Inconsistency
- Other movable childre and visibility behaviour (like Railing of Stairs should be children) as discussed in https://forum.freecad.org/viewtopic.php?p=844965#p844920 would be added in subsequent PR
2025-09-08 14:34:33 +02:00
Paul Lee
3f5570106c [ArchComponent] Fix 1st Addition Placment & MovableChildren Includes Railings
I.  Fix 1st Addition Placement

1. Arch Object can have no Base.
2. ArchComponent.processSubShapes() would keep the placement of Additions by treating with inverse placement when the parent Arch Object placemnet is changed.
3. However, when there is not base/Base, 1st Addition becomes 'base' and the placement is not treated by inverse placement and the displacement is doubled
4. This commit identify the above case and apply same inverse placment

II.  MovableChildren Includes Railings

1. getMovableChildren() does not includes Railing (on top of Additions/Subtraction)
2. This commit fix the behaviour to make it consisteny

Other Associated Inconsistency
- Other visibility default behaviour as discussed in https://forum.freecad.org/viewtopic.php?p=844965#p844920 would be added in subsequent PR

Last associated PR/commit -  https://github.com/FreeCAD/FreeCAD/pull/23556
2025-09-08 14:32:16 +02:00
Roy-043
0a47b6da26 BIM: fix Arch_Reference colors 2025-09-08 14:30:40 +02:00
Roy-043
8a13cbba67 BIM+Draft: change object related version info to log messages
To inform the user warnings are shown if an object has new or modified properties in the current version. These warnings can however be confusing, especially if there are many. With this PR they are turned into log messages. They are also moved out of translation, and instead of the object Label the object Name is displayed.

Additionally:
Zero path length warnings for path arrays are now only displayed if the Align property is True.

See: #21180.
2025-09-08 10:58:28 +02:00
Furgo
aa20af4dd5 BIM: Fix sun ray creation in Arch Site solar study, suppress ladybug log messages (#23524)
* BIM: disable root logger propagation to imported modules

Prevents noisy log messages from third-party modules, such as ladybug,
from appearing in the console. A context manager temporarily sets the
root logging level to WARNING during the import process, which avoids
altering the application's permanent logging configuration. Ultimately,
this is a workaround: FreeCAD seems to set the root logging level to
INFO at least, which propagates to all loaded modules. It should set it
to WARNING or ERROR at least, but changes outside the BIM module were
out of scope for this PR.

* BIM: make module import error explicit, do not mask exceptions

* BIM: adapt code to the new Draft.Line properties (PR #11941)

Adapts the code to a Draft.Line API change. Property names for the sun
ray object are updated (e.g., from ArrowType to ArrowTypeEnd) to align
with the new definitions, which prevents errors and ensures the sun
ray's arrow displays correctly.

* BIM: do not update sun position until all properties are initialized

Prevents an AttributeError error when loading files. During the loading
sequence, the onChanged callback is triggered for related properties
until they all have been initialized. A hasattr guard is added to ensure
the dependent logic is not executed until the object is in a consistent
state.

* BIM: restore property constraints at the right time

Fixes an unconstrained properties issue when loading files. Constraint
metadata is not saved in files, and the UI is built before the Python
code can re-apply it. The fix defers the constraint restoration using
QTimer.singleShot(0) to run after the file has fully loaded. The
restoration logic also correctly preserves user-saved values by reading
them from the object before re-applying the non-persistent constraints.
2025-09-08 10:57:50 +02:00
marcuspollio
ac7fb5c5df BIM: update Views Panel and Status Bar icons and some more (#23561)
* BIM: update View Panel and Status Bar icons and some more

* BIM: update icons - address review

* Update src/Mod/BIM/bimcommands/BimViews.py

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

* Update src/Mod/BIM/bimcommands/BimViews.py

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>

---------

Co-authored-by: Max Wilfinger <6246609+maxwxyz@users.noreply.github.com>
2025-09-04 19:37:45 +02:00
Chris Hennes
c0d1151633 Update translations 2025-09-03 2025-09-04 11:37:11 +02:00
Edgar Robles
196ada07e2 BIM: Add T slot profile option (#23334)
* feat(profiles): Add square metric t-slot profiles

Request also allows to use profiles in quetzal workbench

* fix(ProfileTaskPanel): fix class name on proxy & sufix

* refactor(ArchProfile, Arch): Modify T-s to TSLOT

and also fix hole_diameter not assigned

* fix(ArchProfile,profiles): Change t slot profile class Name
2025-09-01 17:54:20 +02:00
Chris Hennes
e36d5db583 Update translations 2025-08-30 2025-09-01 17:44:54 +02:00
Roy-043
c1132475ef 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
14a5094bc6 BIM: Remove wrong IfcType for Column/Beam
Removes check on function parameters for height & length (first
introduced in commit ed0c80d), 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
luzpaz
86baf505a0 BIM: fix trailing whitespace and refine source comment grammar (#23496)
* BIM: fix trailing whitespace and refine source comment grammar

* BIM: remove unnecessary newline
2025-08-31 23:22:39 -05:00
luzpaz
f38e1bdfbb Fix various typos
Found via codespell
2025-08-29 10:03:57 +02:00
Chris Hennes
f3c675ed5b Update translations 2025-08-28 16:14:49 +02:00
Paul Lee
43eafe9dc2 [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
Roy-043
ac02b86521 Bim: Fix direction of panel waves (#23271)
* Update ArchPanel.py

* Update ArchPanel.py
2025-08-25 18:09:31 +02:00
Paul Lee
67178b953d [ArchWindow] Clone and Link to Support Sill Change
Problems / Course of Developement:

  1. Allow changing Sill feature was added in
  - https://github.com/FreeCAD/FreeCAD/pull/21005

  2. Bug fix was added in
  - f6bba5d58e

  3. Further Problems were identified as discused in
  - https://github.com/FreeCAD/FreeCAD/pull/21005#issuecomment-3010959162

  'New Observation-

      1. Clone or Link to a Window does not work and return error
      2. This PR/Commit (21005) translate the Base Sketch when Sill property is changed, to change the final disposition of a Window object; however, it will also shift the disposition of a Clone and Link as a result (with error message above fixed). This is apparently not an expected behaviour.

  (Sidenote- When SketchArch Addon is installed and parametric placement is used, there would not no impact)

Current Commit:

  1. Support Link and Clone of Arch Windows (bug fix)

  2. Instead of changing base Sketch disposition, the Placement of Arch Window, Clone, or Link is adjusted.
2025-08-25 17:30:13 +02:00
Furgo
3a3b4a89c0 BIM: add interactive sun position and ray visualization to Arch Site (#22516)
* BIM: add properties for static sun sphere representation

* BIM: create Coin3D nodes for the sun sphere

* BIM: implement logic for static sun representation

* BIM: add additional info properties to sun ray

* BIM: use Draft.Line for sun ray, improve visual appearance

* BIM: color code the sun path arc

* BIM: add hour marker points to the sun path arc

* BIM: make sun path diagram smoother

* BIM: add conditional sun hour marker labels

* BIM: set constraints to time values

* BIM: remove redundant import
2025-08-25 11:37:30 +02:00
Max Wilfinger
3129bc9a1e Fix UI strings reported on Crowdin (#23297)
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2025-08-25 06:10:53 +00:00
Max Wilfinger
ab5e9e0ded 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
Roy-043
e6dcbe66de BIM: change shortcut for Arch_Space 2025-08-24 22:30:14 +02:00
Chris Hennes
40b1ea294c Update translations 2025-08-18 17:55:24 +02:00
Vincenzo Calligaro
439cb2122e [Feature Request] [Draft] [UI/UX] Allow to turn dimension arrows on/off individually (#11941)
* Update additional files

* The LineColor and LineWidth properties are removed from Text objects.
* Arrow properties are added by the ViewProviderDraftAnnotation class only. This avoids code duplication.

* gui_annotationstyleeditor.py fix except

* view_draft_annotation.py fix except

---------

Co-authored-by: Roy-043 <info@b-k-g.nl>
Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>
2025-08-14 10:44:49 +02:00
Max Wilfinger
1850c5dc0f Fix missed strings for UI consistency
Fix ellipsis rendering
2025-08-08 06:37:59 -05:00
Ryan Kembrey
99f7699be5 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
luzpaz
2d39b21517 Fix various typos (#22836)
* Fix various typos
Found via codespell

* [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-08-04 11:14:15 -05:00
Roy-043
ee1eda281e BIM: ArchPanel: FontFile parameter name has changed
The parameter name has been changed from FontFile to ShapeStringFontFile. See #21054.
2025-08-04 10:58:52 -05:00