FEM FemMesh2Mesh/ro: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav|[[FEM_CreateNodesSet|Nodes set]]|[[FEM_SolverCalculixCxxtools|Solver Calculix CCX tools]]|[[FEM_Module|FEM]]|IconL=FEM_CreateNodesSet.png|IconC=Workbench_FEM.svg|IconR=FEM_Solver.png}}
{{Docnav
|[[FEM_CreateNodesSet|Nodes set]]
|[[FEM_SolverCalculixCxxtools|Solver CalculiX Standard]]
|[[FEM_Workbench|FEM]]
|IconL=FEM_CreateNodesSet.svg
|IconR=FEM_SolverCalculixCxxtools.svg
|IconC=Workbench_FEM.svg
}}


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 16: Line 24:
</div>
</div>


<div class="mw-translate-fuzzy">
# Selectați un obiect FEM mesh (opțional selectați suplimentar rezultatele FEM)
# Selectați un obiect FEM mesh (opțional selectați suplimentar rezultatele FEM)
# Apasă pe butonul {{KEY|[[Image:FEM_FemMesh2Mesh.png|24px]]FEM mesh to mesh}}
# Apasă pe butonul {{KEY|[[Image:FEM_FemMesh2Mesh.png|24px]]FEM mesh to mesh}}
</div>


== Scripting ==

<div class="mw-translate-fuzzy">
== Script-Programare ==
== Script-Programare ==
Exemplu:
Exemplu:
* Încărcați exemplul 3D FEM al FreeCAD din Start Workbench și executați următorul cod
* Încărcați exemplul 3D FEM al FreeCAD din Start Workbench și executați următorul cod
</div>

{{Code|code=
{{Code|code=
femmesh_obj = App.ActiveDocument.getObject("Result_mesh").FemMesh
femmesh_obj = App.ActiveDocument.getObject("Result_mesh").FemMesh
Line 30: Line 45:
Mesh.show(Mesh.Mesh(out_mesh))
Mesh.show(Mesh.Mesh(out_mesh))
}}
}}

== Converting 2D elements ==

<div class="mw-translate-fuzzy">
== Conversia elementelor 2D ==
== Conversia elementelor 2D ==
Selectați o plasă și rulați următorul script python
Selectați o plasă și rulați următorul script python
</div>

{{Code|code=
{{Code|code=
import Mesh
import Mesh
Line 56: Line 77:
}}
}}


{{Docnav|[[FEM_CreateNodesSet|Nodes set]]|[[FEM_SolverCalculixCxxtools|Solver Calculix CCX tools]]|[[FEM_Module|FEM]]|IconL=FEM_CreateNodesSet.png|IconC=Workbench_FEM.svg|IconR=FEM_Solver.png}}


{{Docnav
{{FEM Tools navi}}
|[[FEM_CreateNodesSet|Nodes set]]
|[[FEM_SolverCalculixCxxtools|Solver CalculiX Standard]]
|[[FEM_Workbench|FEM]]
|IconL=FEM_CreateNodesSet.svg
|IconR=FEM_SolverCalculixCxxtools.svg
|IconC=Workbench_FEM.svg
}}


{{FEM Tools navi{{#translation:}}}}
{{Userdocnavi}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Revision as of 20:16, 22 August 2021

FEM FemMesh2Mesh

poziția meniului
Mesh → FEM mesh to mesh
Ateliere
FEM
scurtătură
nici unul
Prezentat în versiune
-
A se vedea, de asemenea,
FEM tutorial

Descriere

Acest instrument transformă suprafețele elementelor 3D dintr-o plasă FEM selectată într-o plasă. Alegeți fațetele elementului FEM din plasă care sunt unice (nu sunt împărțite de două elemente) și le folosiți pentru a crea fațetele unei plase. Opțional, permite crearea unei plase deformate de acțiunea forțelor definite. Acest lucru se face prin adăugarea mișcării rezultatelor FEM la nodurile de plasă.

Elementele bidimensionale din plasa FEM nu sunt luate în considerare. Dacă trebuie să le convertiți, puteți folosi mai jos un script Python.

Cum se folosește

  1. Selectați un obiect FEM mesh (opțional selectați suplimentar rezultatele FEM)
  2. Apasă pe butonul FEM mesh to mesh

Scripting

Script-Programare

Exemplu:

  • Încărcați exemplul 3D FEM al FreeCAD din Start Workbench și executați următorul cod
femmesh_obj = App.ActiveDocument.getObject("Result_mesh").FemMesh
result = App.ActiveDocument.getObject("CalculiX_static_results")
import femmesh.femmesh2mesh
out_mesh = femmesh.femmesh2mesh.femmesh_2_mesh(femmesh_obj, result)
import Mesh
Mesh.show(Mesh.Mesh(out_mesh))

Converting 2D elements

Conversia elementelor 2D

Selectați o plasă și rulați următorul script python

import Mesh

def extend_by_triangle(i, j, k):
    triangle = [input_mesh.getNodeById(element_nodes[i]),
                input_mesh.getNodeById(element_nodes[j]),
                input_mesh.getNodeById(element_nodes[k])]
    return output_mesh.extend(triangle) 

selection = FreeCADGui.Selection.getSelection()
input_mesh = App.ActiveDocument.getObject(selection[0].Name).FemMesh
output_mesh = []
for element in input_mesh.Faces:
    element_nodes = input_mesh.getElementNodes(element)
    if len(element_nodes) in [3, 6]:  # tria3 or tria6 (ignoring mid-nodes)
        extend_by_triangle(0, 1, 2)
    elif len(element_nodes) in [4, 8]:  # quad4 or quad8 (ignoring mid-nodes)
        extend_by_triangle(0, 1, 2)
        extend_by_triangle(2, 3, 0)

obj = Mesh.Mesh(output_mesh)
Mesh.show(obj)