2013-02-12 17:35:16 +06:00
|
|
|
# Import/Export
|
|
|
|
|
|
|
|
import salome
|
2021-08-12 11:43:44 +05:00
|
|
|
salome.salome_init_without_session()
|
2013-04-04 13:06:43 +06:00
|
|
|
import GEOM
|
|
|
|
from salome.geom import geomBuilder
|
2017-06-13 14:57:14 +05:00
|
|
|
geompy = geomBuilder.New()
|
2013-02-12 17:35:16 +06:00
|
|
|
|
2016-03-11 14:03:17 +05:00
|
|
|
import tempfile, os
|
|
|
|
|
|
|
|
# create a sphere
|
|
|
|
sphere = geompy.MakeSphereR(100)
|
|
|
|
|
|
|
|
tmpdir = tempfile.mkdtemp()
|
|
|
|
|
|
|
|
# export sphere to the BREP file
|
|
|
|
f_brep = os.path.join(tmpdir, "sphere.brep")
|
|
|
|
geompy.ExportBREP(sphere, f_brep)
|
|
|
|
|
|
|
|
# export sphere to the IGES v5.3 file
|
|
|
|
f_iges = os.path.join(tmpdir, "sphere.iges")
|
|
|
|
geompy.ExportIGES(sphere, f_iges, "5.3")
|
|
|
|
|
|
|
|
# export sphere to the STEP file, using millimeters as length units
|
|
|
|
f_step = os.path.join(tmpdir, "sphere.step")
|
|
|
|
geompy.ExportSTEP(sphere, f_step, GEOM.LU_MILLIMETER)
|
|
|
|
|
|
|
|
# export sphere to the binary STL file, with default deflection coefficient
|
|
|
|
f_stl1 = os.path.join(tmpdir, "sphere1.stl")
|
|
|
|
geompy.ExportSTL(sphere, f_stl1, False)
|
|
|
|
|
|
|
|
# export sphere to the ASCII STL file, with custom deflection coefficient
|
|
|
|
f_stl2 = os.path.join(tmpdir, "sphere2.stl")
|
|
|
|
geompy.ExportSTL(sphere, f_stl2, True, 0.1)
|
|
|
|
|
|
|
|
# export sphere to the VTK file, with default deflection coefficient
|
|
|
|
f_vtk1 = os.path.join(tmpdir, "sphere1.vtk")
|
|
|
|
geompy.ExportVTK(sphere, f_vtk1)
|
|
|
|
|
|
|
|
# export sphere to the VTK file, with custom deflection coefficient
|
|
|
|
f_vtk2 = os.path.join(tmpdir, "sphere2.vtk")
|
|
|
|
geompy.ExportVTK(sphere, f_vtk2, 0.1)
|
|
|
|
|
|
|
|
# export sphere to the XAO file
|
|
|
|
f_xao = os.path.join(tmpdir, "sphere.xao")
|
|
|
|
geompy.ExportXAO(sphere, [], [], "author", f_xao)
|
|
|
|
|
2023-06-01 20:50:36 +05:00
|
|
|
# export sphere to XAO format memory buffer (bytes array)
|
|
|
|
buff_xao = geompy.ExportXAOMem(sphere, [], [], "author")
|
|
|
|
|
2016-03-11 14:03:17 +05:00
|
|
|
# import BREP file
|
|
|
|
sphere_brep = geompy.ImportBREP(f_brep)
|
|
|
|
|
|
|
|
# import IGES file
|
|
|
|
sphere_iges = geompy.ImportIGES(f_iges)
|
|
|
|
|
|
|
|
# import STEP file, taking units into account
|
|
|
|
sphere_step1 = geompy.ImportSTEP(f_step)
|
|
|
|
|
|
|
|
# import STEP file, ignoring units (result is scaled)
|
|
|
|
sphere_step2 = geompy.ImportSTEP(f_step, True)
|
|
|
|
|
|
|
|
# import STL files
|
|
|
|
sphere_stl1 = geompy.ImportSTL(f_stl1)
|
|
|
|
sphere_stl2 = geompy.ImportSTL(f_stl2)
|
|
|
|
|
|
|
|
# import XAO file
|
|
|
|
ok, sphere_xao, sub_shapes, groups, fields = geompy.ImportXAO(f_xao)
|
|
|
|
|
2023-06-01 20:50:36 +05:00
|
|
|
# import XAO data from memory buffer (bytes array)
|
|
|
|
ok_mem, sphere_xao_mem, sub_shapes_mem, groups_mem, fields_mem = geompy.ImportXAOMem(buff_xao)
|
|
|
|
|
2016-03-11 14:03:17 +05:00
|
|
|
# clean up
|
|
|
|
for f in f_brep, f_iges, f_step, f_stl1, f_stl2, f_vtk1, f_vtk2, f_xao:
|
|
|
|
os.remove(f)
|
|
|
|
os.rmdir(tmpdir)
|