# Basic Properties import salome salome.salome_init() import GEOM from salome.geom import geomBuilder geompy = geomBuilder.New(salome.myStudy) import SMESH, SALOMEDS from salome.smesh import smeshBuilder smesh = smeshBuilder.New(salome.myStudy) # create a box box = geompy.MakeBoxDXDYDZ(100,100,100) face = geompy.SubShapeAllSorted(box, geompy.ShapeType['FACE'])[0] # mesh a box mesh = smesh.Mesh(box) submesh_1d = mesh.Segment().NumberOfSegments(5) submesh_2d = mesh.Quadrangle() submesh_3d = mesh.Hexahedron() submesh_2d_face = mesh.Triangle(face) mesh.Compute() # create a group group_2d = mesh.Group(face) # compute basic properties print "Get basic properties: approach 1 (via measurements tool) ----" measure = smesh.CreateMeasurements() print "* for mesh:" print " length:", measure.Length(mesh.mesh) print " area:", measure.Area(mesh.mesh) print " volume:", measure.Volume(mesh.mesh) print "* for group (2d):" print " length:", measure.Length(group_2d) print " area:", measure.Area(group_2d) print " volume:", measure.Volume(group_2d) print "* for submesh (2d):" print " length:", measure.Length(submesh_2d_face.GetSubMesh()) print " area:", measure.Area(submesh_2d_face.GetSubMesh()) print " volume:", measure.Volume(submesh_2d_face.GetSubMesh()) measure.UnRegister() print "Get basic properties: approach 2 (via smeshBuilder) ----" print "* for mesh:" print " length:", smesh.GetLength(mesh) print " area:", smesh.GetArea(mesh) print " volume:", smesh.GetVolume(mesh) print "* for group (2d):" print " length:", smesh.GetLength(group_2d) print " area:", smesh.GetArea(group_2d) print " volume:", smesh.GetVolume(group_2d) print "* for submesh (2d):" print " length:", smesh.GetLength(submesh_2d_face) print " area:", smesh.GetArea(submesh_2d_face) print " volume:", smesh.GetVolume(submesh_2d_face) print "Get basic properties: approach 3 (via smeshBuilder.Mesh) ----" print "* for mesh:" print " length:", mesh.GetLength() print " area:", mesh.GetArea() print " volume:", mesh.GetVolume() print "* for group (2d): unsupported" print "* for submesh (2d): unsupported"