Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 import salome
00028 import geompy
00029 import smesh
00030
00031
00032
00033
00034 box = geompy.MakeBox(0., 0., 0., 100., 200., 300.)
00035 idbox = geompy.addToStudy(box, "box")
00036
00037
00038
00039 subShapeList = geompy.SubShapeAll(box, geompy.ShapeType["FACE"])
00040 face = subShapeList[0]
00041 name = geompy.SubShapeName(face, box)
00042 print name
00043 idface = geompy.addToStudyInFather(box, face, name)
00044
00045
00046
00047 subShellList = geompy.SubShapeAll(box, geompy.ShapeType["SHELL"])
00048 shell = subShellList[0]
00049 name = geompy.SubShapeName(shell, box)
00050 print name
00051 idshell = geompy.addToStudyInFather(box, shell, name)
00052
00053
00054
00055 edgeList = geompy.SubShapeAll(face, geompy.ShapeType["EDGE"])
00056 edge = edgeList[0]
00057 name = geompy.SubShapeName(edge, face)
00058 print name
00059 idedge = geompy.addToStudyInFather(face, edge, name)
00060
00061
00062
00063
00064 smesh.SetCurrentStudy(salome.myStudy)
00065
00066
00067
00068 mesh = smesh.Mesh(box, "Meshbox")
00069
00070 print "-------------------------- add hypothesis to box"
00071 algoReg1 = mesh.Segment()
00072 hypNbSeg1 = algoReg1.NumberOfSegments(7)
00073 print hypNbSeg1.GetName()
00074 print hypNbSeg1.GetId()
00075 print hypNbSeg1.GetNumberOfSegments()
00076 smesh.SetName(hypNbSeg1, "NumberOfSegments_7")
00077
00078 algoMef1 = mesh.Triangle()
00079 hypArea1 = algoMef1.MaxElementArea(2500)
00080 print hypArea1.GetName()
00081 print hypArea1.GetId()
00082 print hypArea1.GetMaxElementArea()
00083 smesh.SetName(hypArea1, "MaxElementArea_2500")
00084
00085
00086 print "-------------------------- add hypothesis to edge"
00087 edge = salome.IDToObject(idedge)
00088
00089 algoReg2 = mesh.Segment(edge)
00090 hypLen1 = algoReg2.LocalLength(100)
00091 smesh.SetName(algoReg2.GetSubMesh(), "SubMeshEdge")
00092 print hypLen1.GetName()
00093 print hypLen1.GetId()
00094 print hypLen1.GetLength()
00095 smesh.SetName(hypLen1, "Local_Length_100")
00096
00097
00098 print "-------------------------- add hypothesis to face"
00099 face = salome.IDToObject(idface)
00100
00101 algoMef2 = mesh.Triangle(face)
00102 hypArea2 = algoMef2.MaxElementArea(500)
00103 smesh.SetName(algoMef2.GetSubMesh(), "SubMeshFace")
00104 print hypArea2.GetName()
00105 print hypArea2.GetId()
00106 print hypArea2.GetMaxElementArea()
00107 smesh.SetName(hypArea2, "MaxElementArea_500")
00108
00109 mesh.Compute()
00110
00111 salome.sg.updateObjBrowser(1);
00112
00113 sg = salome.ImportComponentGUI('SMESH')
00114 if type(sg) != type(salome.salome_ComponentGUI):
00115 sg.CreateAndDisplayActor('0:1:2:3')