smesh/doc/examples/defining_hypotheses_ex12.py

41 lines
1.5 KiB
Python
Raw Normal View History

2013-02-12 20:37:44 +06:00
# 1D Mesh with Fixed Points example
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
geom_builder = geomBuilder.New()
smesh_builder = smeshBuilder.New()
2013-02-12 20:37:44 +06:00
# Create face and explode it on edges
2022-04-11 18:28:01 +05:00
face = geom_builder.MakeFaceHW(100, 100, 1)
edges = geom_builder.SubShapeAllSorted(face, geom_builder.ShapeType["EDGE"])
geom_builder.addToStudy( face, "Face" )
2013-02-12 20:37:44 +06:00
# get the first edge from exploded result
2022-04-11 18:28:01 +05:00
edge1 = geom_builder.GetSubShapeID(face, edges[0])
2013-02-12 20:37:44 +06:00
# Define Mesh on previously created face
2022-04-11 18:28:01 +05:00
Mesh_1 = smesh_builder.Mesh(face)
2013-02-12 20:37:44 +06:00
# Create Fixed Point 1D hypothesis and define parameters.
# Note: values greater than 1.0 and less than 0.0 are not taken into account;
# duplicated values are removed. Also, if not specified explicitly, values 0.0 and 1.0
# add added automatically.
# The number of segments should correspond to the number of points (NbSeg = NbPnt-1);
# extra values of segments splitting parameter are not taken into account,
# while missing values are considered to be equal to 1.
2022-04-11 18:28:01 +05:00
Fixed_points_1D_1 = smesh_builder.CreateHypothesis('FixedPoints1D')
2013-02-12 20:37:44 +06:00
Fixed_points_1D_1.SetPoints( [ 1.1, 0.9, 0.5, 0.0, 0.5, -0.3 ] )
Fixed_points_1D_1.SetNbSegments( [ 3, 1, 2 ] )
Fixed_points_1D_1.SetReversedEdges( [edge1] )
# Add hypothesis to mesh and define 2D parameters
Mesh_1.AddHypothesis(Fixed_points_1D_1)
Regular_1D = Mesh_1.Segment()
Quadrangle_2D = Mesh_1.Quadrangle()
# Compute mesh
Mesh_1.Compute()