Commit Graph

865 Commits

Author SHA1 Message Date
wwmayer
8944fd7d5e Fem: Fix crash when writing mesh to z88 file
For the z88 export the FemMesh must be passed to its Python wrapper which will increase the counter upon construction and decrease it upon destruction. If the counter becomes 0 the FemMesh will be destroyed too which causes a crash.

To fix the crash the counter must be increased and safely decreased after the lifetime of the Python wrapper.

This fixes https://github.com/FreeCAD/FreeCAD/issues/23380
2025-08-27 14:57:50 +02:00
Ian Abreu
8533b4fbb8 Core: Fixing missing python bindings. (#23054)
* Adding missing python interfaces.

* fixing interface includes.

* attempting fix for CI build error related to path resolution.

* testing build

* More testing via Github Actions...

* renaming files

* fixing comparison operator.

* reverting...

* fixing CMakeLists

* fixing binding generation issue
2025-08-24 22:43:39 -05:00
Stefan Tröger
80f3b21184 FEM: Extract postprocessing data only if available. Fixes #22193 (#23127)
* FEM: Extract postprocessing data only if available. Fixes #22193

* [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-24 22:16:29 -05:00
Chris Hennes
5e4fe3a3c3 Merge pull request #23164 from ickby/FEM_post_fixes_4
Fem: Fix for 3 issues
2025-08-19 19:00:55 -05:00
Stefan Tröger
27c7eca010 FEM: Fix post processing branch working with data extraction. Fixes #23030 2025-08-18 10:35:42 -05:00
FEA-eng
b110102ca5 FEM: Amplitude support for rigid body constraint (#22898)
* FEM: Update FemConstraintRigidBody.cpp

* FEM: Update FemConstraintRigidBody.h

* FEM: Update write_constraint_rigidbody_step.py

* FEM: Update write_amplitude.py
2025-08-18 10:35:23 -05:00
Stefan Tröger
70685aaa5d FEM: Purge tool deletes all result objects. Fixes #23028
- Correctly deletes children of pipeline without error on delete
- Ensures visualizations are also deleted as they are result objects too
- Ensures purge tool uses a transaction, like all tools should
2025-08-17 18:29:31 +02:00
FEA-eng
f371622d6f FEM: Update FemConstraintDisplacement.cpp 2025-08-07 18:36:53 -05:00
Ian Abreu
4aa0aff389 Core: Generation of FEM interface bindings (#22581)
* Initial commit of FEM bindings.

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

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

* running black.

* Fixing imports.

* Update src/Mod/Fem/Gui/ViewProviderFemMeshPy.pyi

Co-authored-by: João Matos <joao@tritao.eu>

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: João Matos <joao@tritao.eu>
2025-08-04 10:48:00 -05:00
FEA-eng
a83f34e31c FEM: Add support for amplitudes with CalculiX (#22851) 2025-08-01 15:22:01 -05:00
FEA-eng
fb4c739619 FEM: Add support for references for CalculiX's initial temperature (#22864)
* FEM: Update checksanalysis.py

* FEM: Update FemConstraintInitialTemperature.cpp

* FEM: Update meshsetsgetter.py

* FEM: Update writer.py

* FEM: Update write_constraint_initialtemperature.py

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

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

* FEM: Update thermomech_bimetal.inp

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-01 14:03:37 -05:00
FEA-eng
949767ea69 FEM: Add cavity radiation with CalculiX (#22593) 2025-07-20 21:26:03 -05:00
FEA-eng
fa694ff4c5 FEM: Add hard contact with CalculiX (#22513) 2025-07-18 09:56:39 -05:00
FEA-eng
18acfabea6 FEM: Add thermal contact with CalculiX (#22121) 2025-07-14 11:03:43 -05:00
Max Wilfinger
a0fe944393 Update src/Mod/Fem/App/AppFem.cpp
Co-authored-by: Ryan K <114723629+ryankembrey@users.noreply.github.com>
2025-06-30 10:35:42 -05:00
Max Wilfinger
dd702da1bc FEM: Update UI strings for consistency 2025-06-30 10:35:42 -05:00
Chris Hennes
a833ed0785 FEM: Fix missing VTK headers in PreCompiled.h 2025-06-28 16:21:25 +02:00
pre-commit-ci[bot]
da4d5c919f [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-06-16 18:27:13 +00:00
Stefan Tröger
6ba5c0d0a5 FEM: port DataAlongLine filter to use arc length.
This makes it easier for the new data extraction to also plot data over line length.
2025-06-15 10:57:47 +02:00
Stefan Tröger
974f41fc96 FEM: Adopt post extraction code to updated main 2025-06-15 10:57:47 +02:00
Stefan Tröger
6e4fab1f50 FEM: Draft architecture of post data extraction with histogram example 2025-06-15 10:57:46 +02:00
Ladislav Michl
1c955c9347 Fem: get unit via quantity
Unit is interally using Quantity to parse string input, so use it
explicitely as string constructor for Unit is going to be dropped.
2025-06-03 09:31:38 +02:00
mosfet80
96c0acb825 FEM: clean code (#21526)
* FEM: clean code

clean code

* [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-06-02 12:13:35 +02:00
marioalexis
b6da328bb7 Fem: Add support for VTK < 9.1 in calculator filter - fixes #21346 2025-05-19 17:50:17 +02:00
Luz Paz
5d052cc043 Fix various typos
Missed by the codespell CI not being functional for a period of time.
2025-05-15 10:59:48 -05:00
Chris Hennes
f5806841b6 Merge pull request #19907 from benj5378/getAttribute
Base: make getAttribute template
2025-05-12 10:39:55 -05:00
Benjamin Bræstrup Sayoc
492b8312b3 Base: make getAttribute template 2025-05-09 15:54:57 +02:00
Stefan Tröger
4a78446e84 FEM: Fix test if VTK or VTK python is not available (#21168)
* FEM: Fix test if VTK or VTK python is not available
* FEM: Make test work if vtk python not installed
2025-05-08 15:55:45 -05:00
bofdahof
998f4e4d45 Console: rename PascalCase named methods to camelCase 2025-05-06 17:50:21 +02:00
pre-commit-ci[bot]
3ef7ba2d9d [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-05-02 07:29:09 +00:00
Stefan Tröger
ce25de290e FEM: Fix typos in python post processing code 2025-05-02 09:25:57 +02:00
Stefan Tröger
0304faa2bc FEM: Handle python vtk user installs that conflict with FreeCAD VTK 2025-05-02 09:25:57 +02:00
Stefan Tröger
d51d5a3b0b Fem: correctly handle python filters if vtk python is not available 2025-05-02 09:25:56 +02:00
Stefan Tröger
0217a2176e Fem: make python filter build process more elegant 2025-05-02 09:25:56 +02:00
Stefan Tröger
491923e41e Fem: Implement basic python filter functionality and glyph example 2025-05-02 09:25:56 +02:00
Stefan Tröger
4479fd4d2d FEM: correct typos 2025-04-28 20:52:47 -05:00
Stefan Tröger
c5c38a4a12 FEM: Ensure finite frame values only. Fixes #20933 2025-04-28 18:45:05 +02:00
Stefan Tröger
6cc83f470e FEM: Fix post object load of unsupported VTK data type 2025-04-28 18:45:05 +02:00
Chris Hennes
813dc84c65 Merge pull request #20609 from marioalexis84/fem-ccx_refactor
Fem: SolverCalculiX refactor - Add option to import results as pipeline - Fixes #20541
2025-04-21 11:01:23 -05:00
Jacob Oursland
5b81cd741a python: apply const method annotations to impls. 2025-04-16 20:32:04 -07:00
marioalexis
1126723284 Fem: Add option to set data mode for SolverCalculiX 2025-04-15 08:49:23 -03:00
Benjamin Nauck
f932c7e4e0 Use Base::toRadians() instead of manually converting 2025-04-15 07:16:36 +02:00
marioalexis
47bdf1d01d Fem: Add properties to FemSolverObject 2025-04-12 02:10:25 -03:00
Kacper Donat
b300c80b90 Base: Use explicit pointer syntax for freecad_cast (#20694)
* Base: Use explicit pointer syntax for freecad_cast

This aligns our custom cast with other casts

* All: Use explicit pointer syntax for freecad_cast
2025-04-11 14:11:33 +00:00
Kacper Donat
35a9673a75 Base: Rename Base::freecad_dynamic_cast into freecad_cast
This is to make it shorter and easier to use. QT does the same thing
with their qobject_cast.
2025-04-07 10:32:28 -05:00
marioalexis84
f4adf2e0e9 Fem: Update modification time for FemFrameSourceAlgorithm - fixes #20543 (#20548) 2025-04-01 23:19:53 -05:00
Kacper Donat
db08735e10 Merge pull request #20559 from hyarion/refactor/add-limits
Add `#include <limits>` in all files where it is used
2025-04-01 17:11:50 +02:00
marioalexis
6d376dc77a Fem: Add method to rename pipeline VTK data arrays 2025-04-01 06:35:17 +02:00
Benjamin Nauck
a6e1b894fe Fem: Add #include <limits> where used 2025-03-31 23:51:06 +02:00
Luz Paz
f809e34ea0 Fix typos
Found via `codespell -q 3 -L aci,addmin,ake,aline,alle,alledges,alocation,als,ang,anid,anormal,aply,apoints,ba,beginn,behaviour,bloaded,bottome,brushin,bu,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childrens,childs,colour,colours,commen,connexion,currenty,documentin,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,findn,fle,freez,graphin,hist,iff,incrementin,indexin,indicies,initialisation,initialise,initialised,initialises,initialisiert,inout,ist,itsel,kilometre,leadin,localy,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oce,oder,ontop,orgin,orginx,orginy,ot,pard,parm,parms,pres,programm,que,rady,recurrance,renderin,rin,ro,rougly,sectionin,seperator,serie,shs,sinc,siz,som,strack,substraction,te,technic,thist,thru,tread,tru,ue,uint,unter,uptodate,vas,vertexes,vew,wallthickness,whitespaces -S "./.git,*.po,*.ts,*.pdf,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml,./src/Base/StackWalker.cpp,./build/doc/SourceDoc,./tools/build/WindowsInstaller/lang,./src/Mod/TechDraw/Templates/locale"`
2025-03-31 23:00:32 +02:00