smesh/doc/examples/modifying_meshes_ex16.py

48 lines
1.1 KiB
Python
Raw Permalink Normal View History

2013-02-12 20:37:44 +06:00
# Diagonal Inversion
import salome
salome.salome_init_without_session()
2022-04-11 18:28:01 +05:00
from salome.geom import geomBuilder
from salome.smesh import smeshBuilder
2022-04-11 18:28:01 +05:00
smesh_builder = smeshBuilder.New()
2013-02-12 20:37:44 +06:00
# create an empty mesh structure
2022-04-11 18:28:01 +05:00
mesh = smesh_builder.Mesh()
2013-02-12 20:37:44 +06:00
# create the following mesh:
# .----.----.----.
# | /| /| /|
# | / | / | / |
# | / | / | / |
# |/ |/ |/ |
# .----.----.----.
bb = [0, 0, 0, 0]
tt = [0, 0, 0, 0]
ff = [0, 0, 0, 0, 0, 0]
bb[0] = mesh.AddNode( 0., 0., 0.)
bb[1] = mesh.AddNode(10., 0., 0.)
bb[2] = mesh.AddNode(20., 0., 0.)
bb[3] = mesh.AddNode(30., 0., 0.)
tt[0] = mesh.AddNode( 0., 15., 0.)
tt[1] = mesh.AddNode(10., 15., 0.)
tt[2] = mesh.AddNode(20., 15., 0.)
tt[3] = mesh.AddNode(30., 15., 0.)
ff[0] = mesh.AddFace([bb[0], bb[1], tt[1]])
ff[1] = mesh.AddFace([bb[0], tt[1], tt[0]])
ff[2] = mesh.AddFace([bb[1], bb[2], tt[2]])
ff[3] = mesh.AddFace([bb[1], tt[2], tt[1]])
ff[4] = mesh.AddFace([bb[2], bb[3], tt[3]])
ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]])
# inverse the diagonal bb[1] - tt[2]
2017-03-20 17:27:30 +05:00
print("\nDiagonal inversion ... ", end=' ')
2013-02-12 20:37:44 +06:00
res = mesh.InverseDiag(bb[1], tt[2])
2017-03-20 17:27:30 +05:00
if not res: print("failed!")
else: print("done.")