Commit Graph

268 Commits

Author SHA1 Message Date
Ian Abreu
0e4dbbe8d2 Core: Generation of python bindings for Assembly (#22574)
* adding XML, CmakeLists, and interfaces.

* removing Dict, List from typing imports.

* Normalizing imports.
2025-08-04 10:36:22 -05:00
PaddleStroke
bc207c0a07 Assembly: Fix https://github.com/FreeCAD/FreeCAD/issues/22815 2025-07-29 13:49:41 -05:00
PaddleStroke
ae5564d50c Assembly: Replace "Activated" property by the core "Suppressed" mecha… (#22409)
* Assembly: Replace "Activated" property by the core "Suppressed" mechanism.

* Fix inaccuracy

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* move the change to migrationScript5 function

* Update JointObject.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-07-28 18:20:01 +02:00
PaddleStroke
a8b655d602 Assembly: Use icon overlay for unconnected joints instead of annoying warning. (#22662)
* Core: FeaturePython : Add getOverlayIcons to python interface

* Assembly: unconnected joints icon overlay Fix #22643

* Update src/Mod/Assembly/Gui/ViewProviderAssembly.cpp

Co-authored-by: Kacper Donat <kadet1090@gmail.com>

* Update AssemblyObject.cpp

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update ViewProviderFeaturePython.h

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update ViewProviderFeaturePython.h

* Update JointObject.py

* Update ViewProviderFeaturePython.h

* Update ViewProviderFeaturePython.cpp

* Update Application.cpp

* Update ViewProviderFeaturePython.cpp

* Update ViewProviderFeaturePython.h

* Update ViewProviderAssembly.cpp

---------

Co-authored-by: Kacper Donat <kadet1090@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-26 22:35:24 +02:00
PaddleStroke
e141cb7a49 Assembly: Fix infinite loop with subassembly. Fix #19319 (#22685)
* Assembly: Fix infinite loop with subassembly. Fix #19319

* squash

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update AssemblyObject.h

* [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-07-25 00:11:24 +02:00
PaddleStroke
80935791fd Assembly: Fix unconnected Joints always touched
Fix https://github.com/FreeCAD/FreeCAD/issues/22642
2025-07-21 13:24:28 -05:00
PaddleStroke
facfbeb47e Assembly: Fix crash 20614 (#22538) 2025-07-18 09:53:35 -05:00
Tayler Miller
8acbb224fc Assembly: Fixes bug for origins in Sub-AssemblyLink (#22415) 2025-07-17 08:03:28 -05:00
bofdahof
998f4e4d45 Console: rename PascalCase named methods to camelCase 2025-05-06 17:50:21 +02:00
Kacper Donat
6d99872b0f Assembly: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Furgo
c567ed60cf Assembly: BOM, handle enumerations as well 2025-04-25 01:53:11 +02:00
Furgo
cfe797e8f8 Assembly: BOM, use getUserString to simplify code 2025-04-24 14:20:35 +02:00
Furgo
59ea0d6e84 Assembly: BOM, use freecad_cast 2025-04-24 14:20:35 +02:00
Furgo
04af6c5b37 Assembly: BOM, support superset property type only 2025-04-24 14:20:35 +02:00
Furgo
d4925e7a04 Assembly: BOM, apply suggestion: do not copy baseName
Co-authored-by: Kacper Donat <kadet1090@gmail.com>
2025-04-24 14:20:35 +02:00
Furgo
3b295f9d43 Assembly: BOM, internationalize strings 2025-04-24 14:20:35 +02:00
Furgo
57c5b1f987 Assembly: BOM custom columns can now return property values 2025-04-24 14:20:35 +02:00
Chris Hennes
318e0a6c45 Merge pull request #20835 from oursland/python-binding-generator-const
python: Make const methods declared const in C++.
2025-04-21 10:58:21 -05:00
Jacob Oursland
926757a258 Assembly: align parameter names between decl and impl. 2025-04-17 15:11:36 +02:00
Jacob Oursland
ea7845f0fa Assembly: Remove unused headers. 2025-04-17 15:11:36 +02:00
Jacob Oursland
c432b28ec2 Assembly: convert if-else to switch. 2025-04-17 15:11:36 +02:00
Jacob Oursland
5436ff85e7 Assembly: declare python methods const. 2025-04-16 20:33:08 -07:00
mosfet80
71317baa52 MOD: assembly clean (#20557)
* MOD: assembly clean

clean code

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update AssemblyLink.cpp

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-04-14 11:05:55 -05:00
Chris Hennes
e7156aa326 Merge pull request #20496 from hyarion/refactor/cppify-constants 2025-03-29 18:43:40 -05:00
Andrea
0f4f47e313 [Mod] assembly clean
clean code
2025-03-29 14:31:40 -05:00
Benjamin Nauck
984c0d43fd Assembly: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:38 +01:00
PaddleStroke
3b6cb37dd9 Assembly: ignore joints in error (#20253)
Co-authored-by: drwho495 <drwho495555@gmail.com>
2025-03-22 18:27:24 +01:00
tritao
6c2c6847eb CMake: Cleanup targets with transitive dependencies 2025-03-17 12:12:06 +00:00
bofdahof
c4eeaa2d11 Assembly: apply std::ranges 2025-03-16 17:15:26 -05:00
Benjamin Bræstrup Sayoc
755229df23 Build: suppress warnings from 3rd party libraries
Warnings from 3rd parties are not relevant and are only polluting the warning output. Marking these libraries as SYSTEM suppresses warning.

https://gcc.gnu.org/onlinedocs/cpp/Invocation.html#index-I
https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html
2025-02-25 14:39:05 +00:00
Joao Matos
cc6ffb44de Core: Move PyCXX library to src/3rdParty. 2025-02-24 16:36:06 +00:00
Joao Matos
27ebc68a11 CMake: Modernize build files using outdated Python variables. 2025-02-16 10:21:26 -06:00
PaddleStroke
fa8b273f7d Merge branch 'main' into core_LCS3 2024-12-13 18:48:35 +01:00
Andrea
f5a4ec01f8 [Mod] Clean AssemblyObject.cpp
Removed dead code

[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

.
2024-12-13 12:34:46 -05:00
PaddleStroke
1ce8f2c859 AssemblyObject: Use std::unordered_set instead of vector. 2024-12-13 18:04:10 +01:00
PaddleStroke
024fee7f97 Assembly: Enable the use of App::Datums 2024-12-13 18:04:10 +01:00
efferre79
fe57e3176d cmake fixes for external OndselSolver building (#18379)
* Assembly: fix building with external OndselSolver

This commit pairs with f35b075e271e9cb3451f3439f7dc0274841a0838.
It solves two issues:

- remove hardcoded includes of 3rdparty files
- add missing include_directories()

* Assembly: add check for external OndselSolver includes
2024-12-13 10:46:46 -06:00
Aik-Siong Koh
3326c33d83 Assembly: Simulation implementation 2024-12-03 20:07:04 +01:00
wmayer
7fdc3b807a Fix compiler warnings 2024-12-03 10:16:08 +01:00
Fabio Rossi
18f63edadb add local OndselSolver includes only when not external 2024-12-02 12:04:54 -05:00
Benjamin Nauck
e5c2c81685 Move back the assembly util functions to AssemblyUtil (#18020)
* Move back util functions to AssemblyUtils again

* Add getPropertyByName<T>() helper

* Improve constness in AssemblyUtils

* [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>
2024-12-02 10:48:48 -06:00
PaddleStroke
a049641771 Assembly: Store DocumentObject instead of mbdPart for the dragged parts. Fixing the bug where doDragStep was 50% of time failing to find the correct DocumentObject due to bundling. 2024-11-18 17:43:53 +01:00
PaddleStroke
761e5a43e8 Assembly: AssemblyLinks. 2024-10-16 15:39:23 +02:00
Furgo
df639075b1 Assembly: make "Solve failed" error more verbose (#17117)
* Add FC_ERR macro for the 'Solve failed' Assembly error

* Handle standard exceptions during assembly solve

* [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>
2024-10-14 10:43:15 -05:00
PaddleStroke
28b1112451 AssemblyObject.cpp : add failsafe checks 2024-10-14 08:58:35 -05:00
PaddleStroke
8b1baaef8f AssemblyObjectPyImp.cpp : make sure PyObjects are valid 2024-10-14 08:58:35 -05:00
Furgo
32e09d9554 Prepend a single quote to BOM index to be interpreted as a string in generated spreadsheets 2024-10-04 08:53:02 -05:00
PaddleStroke
bdfcb6bfb2 Assembly: Fix lag during dragging of large assemblies. Bundle fix joints together. Show only the movingJoint during dragging. Do not recompute joints during dragging. 2024-09-30 17:38:54 +02:00
Bas Ruigrok
cb98abcc42 Move isLink and isLinkGroup from AssemblyObject to DocumentObject 2024-09-08 11:56:14 +02:00
Bas Ruigrok
e9fc6fb89a Move getGlobalPlacement from AssemblyObject to GeoFeature 2024-09-07 13:27:59 +02:00