]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
Merge Python 3 porting.
authorrnv <rnv@opencascade.com>
Thu, 22 Jun 2017 15:09:29 +0000 (18:09 +0300)
committerrnv <rnv@opencascade.com>
Tue, 27 Jun 2017 16:23:43 +0000 (19:23 +0300)
118 files changed:
1  2 
doc/salome/examples/cartesian_algo.py
doc/salome/examples/creating_meshes_ex01.py
doc/salome/examples/creating_meshes_ex03.py
doc/salome/examples/creating_meshes_ex04.py
doc/salome/examples/creating_meshes_ex05.py
doc/salome/examples/defining_hypotheses_ex06.py
doc/salome/examples/filters_ex09.py
doc/salome/examples/filters_ex10.py
doc/salome/examples/filters_ex16.py
doc/salome/examples/filters_ex17.py
doc/salome/examples/filters_ex18.py
doc/salome/examples/filters_ex39.py
doc/salome/examples/grouping_elements_ex01.py
doc/salome/examples/grouping_elements_ex03.py
doc/salome/examples/grouping_elements_ex04.py
doc/salome/examples/grouping_elements_ex05.py
doc/salome/examples/grouping_elements_ex06.py
doc/salome/examples/grouping_elements_ex07.py
doc/salome/examples/grouping_elements_ex08.py
doc/salome/examples/measurements_ex03.py
doc/salome/examples/modifying_meshes_ex01.py
doc/salome/examples/modifying_meshes_ex02.py
doc/salome/examples/modifying_meshes_ex03.py
doc/salome/examples/modifying_meshes_ex15.py
doc/salome/examples/modifying_meshes_ex16.py
doc/salome/examples/modifying_meshes_ex17.py
doc/salome/examples/modifying_meshes_ex18.py
doc/salome/examples/modifying_meshes_ex21.py
doc/salome/examples/modifying_meshes_ex23.py
doc/salome/examples/modifying_meshes_ex25.py
doc/salome/examples/quality_controls_ex01.py
doc/salome/examples/quality_controls_ex02.py
doc/salome/examples/quality_controls_ex03.py
doc/salome/examples/quality_controls_ex04.py
doc/salome/examples/quality_controls_ex05.py
doc/salome/examples/quality_controls_ex06.py
doc/salome/examples/quality_controls_ex08.py
doc/salome/examples/quality_controls_ex11.py
doc/salome/examples/quality_controls_ex12.py
doc/salome/examples/quality_controls_ex13.py
doc/salome/examples/quality_controls_ex14.py
doc/salome/examples/quality_controls_ex15.py
doc/salome/examples/quality_controls_ex16.py
doc/salome/examples/quality_controls_ex17.py
doc/salome/examples/quality_controls_ex18.py
doc/salome/examples/quality_controls_ex19.py
doc/salome/examples/quality_controls_ex20.py
doc/salome/examples/quality_controls_ex21.py
doc/salome/examples/quality_controls_ex22.py
doc/salome/examples/transforming_meshes_ex06.py
doc/salome/examples/transforming_meshes_ex09.py
doc/salome/examples/transforming_meshes_ex10.py
doc/salome/examples/transforming_meshes_ex11.py
doc/salome/examples/transforming_meshes_ex12.py
doc/salome/examples/transforming_meshes_ex13.py
doc/salome/examples/viewing_meshes_ex01.py
idl/SMESH_Mesh.idl
src/SMESH/SMESH_Mesh.cxx
src/SMESH_I/SMESH_2smeshpy.cxx
src/SMESH_I/SMESH_Gen_i.cxx
src/SMESH_PY/smeshstudytools.py
src/SMESH_SWIG/PAL_MESH_041_mesh.py
src/SMESH_SWIG/SMESH_AdvancedEditor.py
src/SMESH_SWIG/SMESH_BelongToGeom.py
src/SMESH_SWIG/SMESH_GroupFromGeom2.py
src/SMESH_SWIG/SMESH_Nut.py
src/SMESH_SWIG/SMESH_Partition1_tetra.py
src/SMESH_SWIG/SMESH_box2_tetra.py
src/SMESH_SWIG/SMESH_box3_tetra.py
src/SMESH_SWIG/SMESH_box_tetra.py
src/SMESH_SWIG/SMESH_controls.py
src/SMESH_SWIG/SMESH_demo_hexa2_upd.py
src/SMESH_SWIG/SMESH_fixation_hexa.py
src/SMESH_SWIG/SMESH_fixation_netgen.py
src/SMESH_SWIG/SMESH_fixation_tetra.py
src/SMESH_SWIG/SMESH_flight_skin.py
src/SMESH_SWIG/SMESH_freebord.py
src/SMESH_SWIG/SMESH_hexaedre.py
src/SMESH_SWIG/SMESH_mechanic.py
src/SMESH_SWIG/SMESH_mechanic_editor.py
src/SMESH_SWIG/SMESH_mechanic_netgen.py
src/SMESH_SWIG/SMESH_mechanic_tetra.py
src/SMESH_SWIG/SMESH_reg.py
src/SMESH_SWIG/SMESH_test.py
src/SMESH_SWIG/SMESH_test0.py
src/SMESH_SWIG/SMESH_test1.py
src/SMESH_SWIG/SMESH_test1_AndDisplay.py
src/SMESH_SWIG/SMESH_test2.py
src/SMESH_SWIG/SMESH_test4.py
src/SMESH_SWIG/SMESH_test5.py
src/SMESH_SWIG/StdMeshersBuilder.py
src/SMESH_SWIG/ex29_refine.py
src/SMESH_SWIG/ex30_tepal.py
src/SMESH_SWIG/ex31_dimGroup.py
src/SMESH_SWIG/smesh.py
src/SMESH_SWIG/smeshBuilder.py
src/SMESH_SWIG/smesh_algorithm.py
src/SMESH_SWIG/smesh_selection.py
src/SMESH_SWIG_WITHIHM/CMakeLists.txt
src/Tools/MGCleanerPlug/MGCleanerMonPlugDialog.py
src/Tools/MacMesh/MacMesh/CutnGroup.py
src/Tools/MacMesh/MacMesh/GenFunctions.py
src/Tools/MacMesh/MacMesh/PublishGroups.py
src/Tools/MeshCut/meshcut_plugin.py
src/Tools/Verima/Stats/getCritere.py
src/Tools/YamsPlug/monYamsPlugDialog.py
src/Tools/blocFissure/gmu/construitFissureGenerale.py
src/Tools/blocFissure/gmu/creeZoneDefautDansObjetSain.py
src/Tools/blocFissure/gmu/geomsmesh.py
src/Tools/blocFissure/gmu/insereFissureElliptique.py
src/Tools/blocFissure/gmu/insereFissureGenerale.py
src/Tools/blocFissure/gmu/insereFissureLongue.py
src/Tools/blocFissure/ihm/fissureCoude_plugin.py
src/Tools/blocFissure/ihm/fissureGenerale_plugin.py
src/Tools/padder/resources/testdata/buildparticules.py
src/Tools/padder/spadderpy/gui/inputdialog.py
src/Tools/padder/spadderpy/gui/plugindialog.py
src/Tools/padder/unittests/usecase_spadderPluginTester.py

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 560f6a3fbb3e33450d7154f0c97137ab48546ca7,928b495633db31170d14184d3e7580ad83406252..19ce71311d9849a602d621246d5cb48a4d461d0c
@@@ -44,6 -44,6 +44,6 @@@ print("With a new filter, group on filt
  # group is updated at modification of the filter
  filt2.SetCriteria( [ smesh.GetCriterion( SMESH.FACE, SMESH.FT_RangeOfIds, "1-70" )])
  filtIDs3 = filtGroup.GetIDs()
- print "After filter modification, group on filter contains %s elemens" % filtGroup.Size()
+ print("After filter modification, group on filter contains %s elemens" % filtGroup.Size())
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index a9b03ed0b4202f2ec2f599ec8ff31736954554f4,a7b26c4e5b69165d509352296c1fc3cdfb078b9b..e0e58acc9e2829472c1a94b9212b01e61428f943
@@@ -36,10 -36,10 +36,10 @@@ print("Criterion: 35 < Area < 40, Nb = 
  
  j = 1
  for i in range(len(aGroupElemIDs)):
-   if j > 20: j = 1; print ""
-   print aGroupElemIDs[i],
+   if j > 20: j = 1; print("")
+   print(aGroupElemIDs[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 16c1f14ca31e16ee62958cc6e29bd5a0d746e19e,23e1abf87a3a1a8267e1d6ad875b5035b61b9966..96aa7fa5688081721bfa6e64e9b51033a73c34f7
@@@ -50,6 -50,6 +50,6 @@@ aGroup4.SetColor( SALOMEDS.Color(1.,0.,
  
  # create union group : area >= 20 and area < 20
  aGroup5 = mesh.UnionListOfGroups([aGroup3, aGroup4], "Any Area")
- print "Criterion: Any Area, Nb = ", len(aGroup5.GetListOfID())
+ print("Criterion: Any Area, Nb = ", len(aGroup5.GetListOfID()))
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 2fc70fe6eed389e79337c7018ec9cf7313e361b8,a5b2c3ffb25fcc3111559a2cb7db116400721198..9423cf7d402ac8a271741086ac224b03fabaf9f0
@@@ -31,7 -31,7 +31,7 @@@ aGroup2.Add(anIds
  
  # create an intersection of groups : 20 < area < 60
  aGroup3 = mesh.IntersectListOfGroups([aGroup1, aGroup2], "20 < Area < 60")
- print "Criterion: 20 < Area < 60, Nb = ", len(aGroup3.GetListOfID())
+ print("Criterion: 20 < Area < 60, Nb = ", len(aGroup3.GetListOfID()))
  # Please note that also there is IntersectGroups() method which works with two groups only
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index e0c7ab199f8599b18c16bf5c2652b572c192b7f3,eb288de24db4c4fb551ef5354ae587fb7dc19a6c..800e8e80abfa5dbf572e383aa058326392740baa
@@@ -29,7 -29,7 +29,7 @@@ aGroupTool = mesh.MakeGroupByIds("Area 
   
  # create a cut of groups : area >= 60
  aGroupRes = mesh.CutGroups(aGroupMain, aGroupTool, "Area >= 60")
- print "Criterion: Area >= 60, Nb = ", len(aGroupRes.GetListOfID())
+ print("Criterion: Area >= 60, Nb = ", len(aGroupRes.GetListOfID()))
  # Please note that also there is CutListOfGroups() method which works with lists of groups of any lengths
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 28052722373c9cf8e5c3cda43606a61091befe41,8b958f95bc55790d64c25564f3a48301214b07f1..2ecc4ed079a6690efc2d11050f9083ed5521340c
@@@ -46,9 -46,9 +46,9 @@@ ff[4] = mesh.AddFace([bb[2], bb[3], tt[
  ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]])
  
  # inverse the diagonal bb[1] - tt[2]
- print "\nDiagonal inversion ... ",
+ print("\nDiagonal inversion ... ", end=' ')
  res = mesh.InverseDiag(bb[1], tt[2])
- if not res: print "failed!"
- else:       print "done."
+ if not res: print("failed!")
+ else:       print("done.")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 939278143b58656679604579a6eca6712e4f7395,7cd708158f5c89f619e2ac1c1fcf4490fbf2f9e7..1fe0c466bf63780b0a2316fdd73475aa178ffa1b
@@@ -46,9 -46,9 +46,9 @@@ ff[4] = mesh.AddFace([bb[2], bb[3], tt[
  ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]]) 
  
  # delete the diagonal bb[1] - tt[2]
- print "\nUnite two triangles ... ",
+ print("\nUnite two triangles ... ", end=' ')
  res = mesh.DeleteDiag(bb[1], tt[2])
- if not res: print "failed!"
- else:       print "done."
+ if not res: print("failed!")
+ else:       print("done.")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index d6256cdc176802f44e0935f6e79dd1700e6f3cb7,b44dde891fe2abc6408d8bb2a10b23f41234db61..fd21b376e0919185c8604365e73584a33b463c7b
@@@ -46,9 -46,9 +46,9 @@@ ff[4] = mesh.AddFace([bb[2], bb[3], tt[
  ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]])
  
  # unite a set of triangles
- print "\nUnite a set of triangles ... ",
+ print("\nUnite a set of triangles ... ", end=' ')
  res = mesh.TriToQuad([ff[2], ff[3], ff[4], ff[5]], SMESH.FT_MinimumAngle, 60.)
- if not res: print "failed!"
- else:       print "done."
+ if not res: print("failed!")
+ else:       print("done.")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index a6d108bc2e4c865772ce152acf0c75fed8fa5c63,e9afc8e485a08eb6c6e69a1a6697b07d41b9b252..a2b92a9f9015419f7f2cff1e00e84c8a8f4ecf9d
@@@ -28,8 -28,8 +28,8 @@@ GroupSmooth = mesh.GroupOnGeom(face, "G
  
  # boolean SmoothObject(Object, IDsOfFixedNodes, MaxNbOfIterations, MaxAspectRatio, Method)
  res = mesh.SmoothObject(GroupSmooth, [], 20, 2., smesh.CENTROIDAL_SMOOTH)
- print "\nSmoothing ... ",
- if not res: print "failed!"
- else:       print "done."
+ print("\nSmoothing ... ", end=' ')
+ if not res: print("failed!")
+ else:       print("done.")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 6ac5410e7009a4b6e696f06b4f3046908b3f7215,089341109f1e8d8dcd9cc4681e1306e405372107..fca52fddf3a1b9ad5e7472efdff5aa66b9f8c056
@@@ -33,17 -33,17 +33,17 @@@ aFilter = smesh.GetFilter(SMESH.EDGE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Edges length > ", length_margin, " Nb = ", len(anIds)
+ print("Criterion: Edges length > ", length_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.GetMesh().CreateGroup(SMESH.EDGE, "Edges with length > " + `length_margin`)
+ aGroup = mesh.GetMesh().CreateGroup(SMESH.EDGE, "Edges with length > " + repr(length_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index bf6d7fa4c4f44b960c5307f3918356c879ebf29e,7d60b91ac21bc0184b83b109cad072d4a922878b..1ec552f752896f40d3c7bccc26f7ab1a2742cc2d
@@@ -42,13 -42,13 +42,13 @@@ aGroup = mesh.CreateEmptyGroup(SMESH.NO
  aGroup.Add(anNodeIds)
  
  # print the result
- print "Criterion: Free nodes Nb = ", len(anNodeIds)
+ print("Criterion: Free nodes Nb = ", len(anNodeIds))
  j = 1
  for i in range(len(anNodeIds)):
-   if j > 20: j = 1; print ""
-   print anNodeIds[i],
+   if j > 20: j = 1; print("")
+   print(anNodeIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index dffd85ca249a9ecf622092755d5ac5c641817c33,d108ef6d24bc24b5774b149ac0b33d271bebd246..7c00278dcf1e5f112a4c9d21c28936a838733356
@@@ -34,17 -34,17 +34,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter)
  
  # print the result
- print "Criterion: Edges length 2D > ", length_margin, " Nb = ", len(anIds)
+ print("Criterion: Edges length 2D > ", length_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Faces with length 2D > " + `length_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Faces with length 2D > " + repr(length_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 77027c2f50925c08364b51ee8be2efd055e720df,8e81e5130aada8f4b5da561b00402a15cc593266..adedda57db5b67a462ca8f674b8304f6bcaeb43c
@@@ -34,17 -34,17 +34,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Borders at multi-connection 2D = ", nb_conn, " Nb = ", len(anIds)
+ print("Criterion: Borders at multi-connection 2D = ", nb_conn, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Borders at multi-connection 2D = " + `nb_conn`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Borders at multi-connection 2D = " + repr(nb_conn))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 82070ac3b5c940a4e2ccec815cb939a71ee82631,f623081e5faa4c6eb8e5431dfb151366c42dc3ba..5cee2a8ddb9fb41625a0c031ab2ea86a761f71d9
@@@ -15,17 -15,17 +15,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Area > ", area_margin, " Nb = ", len(anIds)
+ print("Criterion: Area > ", area_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Area > " + `area_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Area > " + repr(area_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index eb6f844ef774268d82e3cf08246a223fe2327dcf,7ed0afcfe7c9a40eb51c02ff006f83e8782023a3..ab939bae8c1cd16ae425cd0c09a8117107390405
@@@ -15,17 -15,17 +15,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Taper > ", taper_margin, " Nb = ", len(anIds)
+ print("Criterion: Taper > ", taper_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Taper > " + `taper_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Taper > " + repr(taper_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 4bc47d2e1a0279fbcc878920abeae89f28650637,7c2029a1e84c84397e3f774ec0cad9ec82081d0a..d7cb29071de0281ccadc0e7093a77990d9a34903
@@@ -15,17 -15,17 +15,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Aspect Ratio > ", ar_margin, " Nb = ", len(anIds)
+ print("Criterion: Aspect Ratio > ", ar_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Aspect Ratio > " + `ar_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Aspect Ratio > " + repr(ar_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 431557e6ef70cb993e69bc4ae59819418a399ad8,514653527915cc2fa9e0c33c76c8e9eef65cbf25..9f6f7a3f333829dfd0e9f80f205ea364d7cc0a83
@@@ -15,17 -15,17 +15,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter)
  
  # print the result
- print "Criterion: Skew > ", skew_margin, " Nb = ", len(anIds)
+ print("Criterion: Skew > ", skew_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Skew > " + `skew_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Skew > " + repr(skew_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 19b680f2946780d6f2735ed9a54b4b86e882d004,5713800c82d20a358cbc8cc079616cd2ce0f0590..62ef71030bad8f9840cdfcd51a1f87856adb2fae
@@@ -15,17 -15,17 +15,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Element Diameter 2D Ratio > ", mel_2d_margin, " Nb = ", len(anIds)
+ print("Criterion: Element Diameter 2D Ratio > ", mel_2d_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Element Diameter 2D > " + `mel_2d_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Element Diameter 2D > " + repr(mel_2d_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 15335f97975951189d200337db46aec007cab974,aff8d25d3304b470157e8d21c4d5de4b003fe28d..131091f8cc5ff0e787bf11bbfd97c0ad077d0b6c
@@@ -15,17 -15,17 +15,17 @@@ aFilter = smesh.GetFilter(SMESH.FACE, S
  anIds = mesh.GetIdsFromFilter(aFilter) 
  
  # print the result
- print "Criterion: Element Diameter 3D Ratio > ", mel_3d_margin, " Nb = ", len(anIds)
+ print("Criterion: Element Diameter 3D Ratio > ", mel_3d_margin, " Nb = ", len(anIds))
  j = 1
  for i in range(len(anIds)):
-   if j > 20: j = 1; print ""
-   print anIds[i],
+   if j > 20: j = 1; print("")
+   print(anIds[i], end=' ')
    j = j + 1
    pass
- print ""
+ print("")
  
  # create a group
- aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Element Diameter 3D > " + `mel_3d_margin`)
+ aGroup = mesh.CreateEmptyGroup(SMESH.FACE, "Element Diameter 3D > " + repr(mel_3d_margin))
  aGroup.Add(anIds)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 36cf38544a5cffbd8c169b1a631bdf7f4767f174,bd1a36f613da7a1f467dfafc00f203e48a0ef360..1d973dadb6546d3272457a48ec50cbe6c555b685
@@@ -71,10 -71,10 +71,10 @@@ print("Volumes    : ", trias.NbVolumes(
  
  # merge elements
  trias.MergeEqualElements()
- print "Number of elements after MergeEqualElements:"
- print "Edges      : ", trias.NbEdges()
- print "Triangles  : ", trias.NbTriangles()
- print "Quadrangles: ", trias.NbQuadrangles()
- print "Volumes    : ", trias.NbVolumes()
+ print("Number of elements after MergeEqualElements:")
+ print("Edges      : ", trias.NbEdges())
+ print("Triangles  : ", trias.NbTriangles())
+ print("Quadrangles: ", trias.NbQuadrangles())
+ print("Volumes    : ", trias.NbVolumes())
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
Simple merge
Simple merge
Simple merge
index 072d1180074ff45bec7e8a779c0fa0c9ac4fa8dd,7a3404d242568566aa7859c680cf3bcc313cba72..a31b802b297416a152b6836ae7088c73cafbb401
@@@ -3018,7 -3033,7 +3018,7 @@@ SALOMEDS::TMPFile* SMESH_Gen_i::Save( S
  
    TCollection_AsciiString aStudyName( "" );
    if ( isMultiFile )
-     aStudyName = ( (char*)SALOMEDS_Tool::GetNameFromPath( aStudy->URL() ).c_str() );
 -    aStudyName = ( (char*)SALOMEDS_Tool::GetNameFromPath( Kernel_Utils::encode(myCurrentStudy->URL()) ).c_str() );
++    aStudyName = ( (char*)SALOMEDS_Tool::GetNameFromPath( Kernel_Utils::encode(aStudy->URL()) ).c_str() );
  
    // Set names of temporary files
    TCollection_AsciiString filename =
@@@ -4011,13 -4033,13 +4011,13 @@@ bool SMESH_Gen_i::Load( SALOMEDS::SComp
      ( char* )( isMultiFile ? theURL : SALOMEDS_Tool::GetTmpDir().c_str() );
  
    // Convert the stream into sequence of files to process
 -  SALOMEDS::ListOfFileNames_var aFileSeq = SALOMEDS_Tool::PutStreamToFiles( theStream,
 -                                                                            tmpDir.ToCString(),
 -                                                                            isMultiFile );
 +  SALOMEDS_Tool::ListOfFiles aFileSeq = SALOMEDS_Tool::PutStreamToFiles( theStream,
 +                                                                         tmpDir.ToCString(),
 +                                                                         isMultiFile );
    TCollection_AsciiString aStudyName( "" );
    if ( isMultiFile ) {
-     CORBA::String_var url = aStudy->URL();
-     aStudyName = (char*)SALOMEDS_Tool::GetNameFromPath( url.in() ).c_str();
 -    CORBA::WString_var url = myCurrentStudy->URL();
++    CORBA::WString_var url = aStudy->URL();
+     aStudyName = (char*)SALOMEDS_Tool::GetNameFromPath( Kernel_Utils::encode(url.in()) ).c_str();
    }
    // Set names of temporary files
    TCollection_AsciiString filename = tmpDir + aStudyName + "_SMESH.hdf";
Simple merge
index 86dc130030f23ac57c5443e11380fc9bae3065fa,5cb4dfed0379a1022021b749d3ada1abf6f52431..2bb4d9ecfafb05fb75d63ba200673ae82ee2b0cd
@@@ -98,10 -98,10 +98,10 @@@ print(hypArea200.GetMaxElementArea()
  smesh.SetName(hypArea200, "Max. Element Area")
  
  
- print "---------------------Compute the mesh"
+ print("---------------------Compute the mesh")
  
  ret = mesh.Compute()
- print ret
+ print(ret)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
  
Simple merge
index 324ca1d10b997706458ab2e1598e0a0f4ef60492,0d9be36d3f7ac9b12b05a854f9de02917b9087f0..6d21e8fb804f12b13f43eebc2ad1b1210bd08ecd
@@@ -53,25 -53,25 +53,25 @@@ geompy.addToStudy(aGeomGroup2, "Group o
  aSmeshGroup1 = mesh.GroupOnGeom(aGeomGroup1, "SMESHGroup1", SMESH.FACE)
  aSmeshGroup2 = mesh.GroupOnGeom(aGeomGroup2, "SMESHGroup2", SMESH.EDGE)
  
- print "Create aGroupOnShell - a group linked to a shell"
+ print("Create aGroupOnShell - a group linked to a shell")
  aGroupOnShell = mesh.GroupOnGeom(shell, "GroupOnShell", SMESH.EDGE)
- print "aGroupOnShell type =", aGroupOnShell.GetType()
- print "aGroupOnShell size =", aGroupOnShell.Size()
- print "aGroupOnShell ids :", aGroupOnShell.GetListOfID()
+ print("aGroupOnShell type =", aGroupOnShell.GetType())
+ print("aGroupOnShell size =", aGroupOnShell.Size())
+ print("aGroupOnShell ids :", aGroupOnShell.GetListOfID())
  
- print " "
+ print(" ")
  
- print "Modify <LocalLength> hypothesis: 100 -> 50"
+ print("Modify <LocalLength> hypothesis: 100 -> 50")
  hypLen1.SetLength(50)
- print "Contents of aGroupOnShell changes:"
- print "aGroupOnShell size =", aGroupOnShell.Size()
- print "aGroupOnShell ids :", aGroupOnShell.GetListOfID()
+ print("Contents of aGroupOnShell changes:")
+ print("aGroupOnShell size =", aGroupOnShell.Size())
+ print("aGroupOnShell ids :", aGroupOnShell.GetListOfID())
  
- print " "
+ print(" ")
  
- print "Re-compute mesh, contents of aGroupOnShell changes again:"
+ print("Re-compute mesh, contents of aGroupOnShell changes again:")
  mesh.Compute()
- print "aGroupOnShell size =", aGroupOnShell.Size()
- print "aGroupOnShell ids :", aGroupOnShell.GetListOfID()
+ print("aGroupOnShell size =", aGroupOnShell.Size())
+ print("aGroupOnShell ids :", aGroupOnShell.GetListOfID())
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 293a62390f611909bdd59a108af67c6a70449ff3,32330467488ad838552751907e79e7749f17d05d..77055838d17dc6b53488d6bff1c3ce206fe976fe
@@@ -146,16 -146,16 +146,16 @@@ print(hVolume.GetMaxElementVolume()
  smesh.SetName(hVolume, "MaxElementVolume_"+str(theMaxElementVolume))
  
  
- print "-------------------------- compute the mesh of the mechanic piece"
+ print("-------------------------- compute the mesh of the mechanic piece")
  mesh.Compute()
  
- print "Information about the Nut:"
- print "Number of nodes       : ", mesh.NbNodes()
- print "Number of edges       : ", mesh.NbEdges()
- print "Number of faces       : ", mesh.NbFaces()
- print "Number of triangles   : ", mesh.NbTriangles()
- print "Number of quadrangles : ", mesh.NbQuadrangles()
- print "Number of volumes     : ", mesh.NbVolumes()
- print "Number of tetrahedrons: ", mesh.NbTetras()
+ print("Information about the Nut:")
+ print("Number of nodes       : ", mesh.NbNodes())
+ print("Number of edges       : ", mesh.NbEdges())
+ print("Number of faces       : ", mesh.NbFaces())
+ print("Number of triangles   : ", mesh.NbTriangles())
+ print("Number of quadrangles : ", mesh.NbQuadrangles())
+ print("Number of volumes     : ", mesh.NbVolumes())
+ print("Number of tetrahedrons: ", mesh.NbTetras())
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 0b6667fe4b2c80dd61559f959b68c88daacf3ca5,0b6b9824588969a18058a2c1afc77df161d8a919..c12165c0dd60815b84c143d3932469af60ab06b5
@@@ -173,15 -173,15 +173,15 @@@ ret = mesh.Compute(
  if ret != 0:
      log=mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the Mesh_mechanic:"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of triangles   : ", mesh.NbTriangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of tetrahedrons: ", mesh.NbTetras()
+         print(linelog)
+     print("Information about the Mesh_mechanic:")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of triangles   : ", mesh.NbTriangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of tetrahedrons: ", mesh.NbTetras())
  else:
-     print "problem when computing the mesh"
+     print("problem when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 6d137e9d8435a8680f1302b14ee8f2ce3fd765d1,f8b123616ddc969a1ef714a4900265b389ac4915..bab8d4abb796f0ca2f86a0b97112eb7f3d6e1a48
@@@ -127,15 -127,15 +127,15 @@@ print(ret
  if ret != 0:
      log = mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the MeshBox2:"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of triangles   : ", mesh.NbTriangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of tetrahedrons: ", mesh.NbTetras()
+         print(linelog)
+     print("Information about the MeshBox2:")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of triangles   : ", mesh.NbTriangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of tetrahedrons: ", mesh.NbTetras())
  else:
-     print "probleme when computing the mesh"
+     print("probleme when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 2fa39e644c894b08c0df87f47cabafaff5b9f283,55e0475838d5cea49e49f1c69f1358cc2d595442..5f521343890c7e131c9ec5e5155c2ef41a7e157b
@@@ -137,15 -137,15 +137,15 @@@ print(ret
  if ret != 0:
      log = mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the MeshBox3:"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of triangles   : ", mesh.NbTriangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of tetrahedrons: ", mesh.NbTetras()
+         print(linelog)
+     print("Information about the MeshBox3:")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of triangles   : ", mesh.NbTriangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of tetrahedrons: ", mesh.NbTetras())
  else:
-     print "probleme when computing the mesh"
+     print("probleme when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 61538ebf89f30c0a9729dda76f4d5253bcc9f7eb,d2e6c8e711c8cb76b06d7d6a5722a04a7ad3e444..f4b257c87ac59f0062f9f0393a1d0156d12ba3f2
@@@ -96,15 -96,15 +96,15 @@@ print(ret
  if ret != 0:
      log = mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the MeshBox:"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of triangles   : ", mesh.NbTriangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of tetrahedrons: ", mesh.NbTetras()
+         print(linelog)
+     print("Information about the MeshBox:")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of triangles   : ", mesh.NbTriangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of tetrahedrons: ", mesh.NbTetras())
  else:
-     print "probleme when computing the mesh"
+     print("probleme when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
Simple merge
index 9629def074057b6cf510f11bfc5aaa8919cf70b0,604f21714e0e13987d2bfc855693366541a8788e..68558d27ce1002edd90dd6447d04531a1c033d4b
@@@ -176,9 -176,9 +176,9 @@@ for i in range(8)
      smesh.SetName(algo.GetSubMesh(), "SubMeshEdgeZ_"+str(i+1))
    
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
  
- print "-------------------------- compute the mesh of the volume"
+ print("-------------------------- compute the mesh of the volume")
  
  ret=mesh.Compute()
  
@@@ -187,14 -187,14 +187,14 @@@ if ret != 0
  ##    log=mesh.GetLog(0) # no erase trace
  ##    for linelog in log:
  ##        print linelog
-     print "Information about the MeshBox :"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of triangles   : ", mesh.NbTriangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of tetrahedrons: ", mesh.NbTetras()
+     print("Information about the MeshBox :")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of triangles   : ", mesh.NbTriangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of tetrahedrons: ", mesh.NbTetras())
  else:
-     print "problem when Computing the mesh"
+     print("problem when Computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 0f464cf4259c10df0c3a05d41b8f025daa30f794,32eb83eb5564cd26a8554d25014899e871ef93bc..076e13bf264fcc1fd5b5fb1eed919d336f7f961c
@@@ -42,15 -42,15 +42,15 @@@ subShellList = geompy.SubShapeAll(comps
  subFaceList  = geompy.SubShapeAll(compshell, geompy.ShapeType["FACE"])
  subEdgeList  = geompy.SubShapeAll(compshell, geompy.ShapeType["EDGE"])
  
- print "number of Shells in compshell : ", len(subShellList)
- print "number of Faces  in compshell : ", len(subFaceList)
- print "number of Edges  in compshell : ", len(subEdgeList)
+ print("number of Shells in compshell : ", len(subShellList))
+ print("number of Faces  in compshell : ", len(subFaceList))
+ print("number of Edges  in compshell : ", len(subEdgeList))
  
  status = geompy.CheckShape(compshell)
- print " check status ", status
+ print(" check status ", status)
  
  ### ---------------------------- SMESH --------------------------------------
 -smesh.SetCurrentStudy(salome.myStudy)
 +smesh.UpdateStudy()
  
  # ---- init a Mesh with the compshell
  shape_mesh = salome.IDToObject( idcomp  )
@@@ -88,15 -88,15 +88,15 @@@ print(ret
  if ret != 0:
      log = mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the MeshcompShel:"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of quadrangles : ", mesh.NbQuadrangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of hexahedrons : ", mesh.NbHexas()
+         print(linelog)
+     print("Information about the MeshcompShel:")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of quadrangles : ", mesh.NbQuadrangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of hexahedrons : ", mesh.NbHexas())
  else:
-     print "problem when Computing the mesh"
+     print("problem when Computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index fbcbc1a18a808d3922d1bc887a8c5679b6c16391,c8c00f67fc0da85e058463ab9655a369fb49eeae..ec532d57f7bb69714dbb6a1a422b52cc211f8792
@@@ -42,17 -42,17 +42,17 @@@ subShellList = geompy.SubShapeAll(comps
  subFaceList  = geompy.SubShapeAll(compshell, geompy.ShapeType["FACE"])
  subEdgeList  = geompy.SubShapeAll(compshell, geompy.ShapeType["EDGE"])
  
- print "number of Shells in compshell : ", len(subShellList)
- print "number of Faces  in compshell : ", len(subFaceList)
- print "number of Edges  in compshell : ", len(subEdgeList)
+ print("number of Shells in compshell : ", len(subShellList))
+ print("number of Faces  in compshell : ", len(subFaceList))
+ print("number of Edges  in compshell : ", len(subEdgeList))
  
  status = geompy.CheckShape(compshell)
- print " check status ", status
+ print(" check status ", status)
  
  ### ---------------------------- SMESH --------------------------------------
 -smesh.SetCurrentStudy(salome.myStudy)
 +smesh.UpdateStudy()
  
- print "-------------------------- create Mesh, algorithm, hypothesis"
+ print("-------------------------- create Mesh, algorithm, hypothesis")
  
  mesh = smesh.Mesh(compshell, "MeshcompShel");
  netgen = mesh.Tetrahedron(smeshBuilder.FULL_NETGEN)
@@@ -61,19 -61,19 +61,19 @@@ netgen.SetMaxSize( 50 
  netgen.SetFineness( smeshBuilder.Fine )
  #netgen.SetOptimize( 1 )
  
- print "-------------------------- compute mesh"
+ print("-------------------------- compute mesh")
  ret = mesh.Compute()
- print ret
+ print(ret)
  if ret != 0:
-     print "Information about the MeshcompShel:"
-     print "Number of nodes        : ", mesh.GetMesh().NbNodes()
-     print "Number of edges        : ", mesh.GetMesh().NbEdges()
-     print "Number of faces        : ", mesh.GetMesh().NbFaces()
-     print "Number of triangles    : ", mesh.GetMesh().NbTriangles()
-     print "Number of volumes      : ", mesh.GetMesh().NbVolumes()
-     print "Number of tetrahedrons : ", mesh.GetMesh().NbTetras()
+     print("Information about the MeshcompShel:")
+     print("Number of nodes        : ", mesh.GetMesh().NbNodes())
+     print("Number of edges        : ", mesh.GetMesh().NbEdges())
+     print("Number of faces        : ", mesh.GetMesh().NbFaces())
+     print("Number of triangles    : ", mesh.GetMesh().NbTriangles())
+     print("Number of volumes      : ", mesh.GetMesh().NbVolumes())
+     print("Number of tetrahedrons : ", mesh.GetMesh().NbTetras())
      
  else:
-     print "problem when computing the mesh"
+     print("problem when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index dd661d969728a84989950b02bdbe6ccc7aa53d15,d01119d5a2bcd3b917e93ba784208e9e94a8ccf5..ecbd2988354ec3f2823f4f6f8b85d594d4b352c1
@@@ -42,15 -42,15 +42,15 @@@ subShellList = geompy.SubShapeAll(comps
  subFaceList  = geompy.SubShapeAll(compshell, geompy.ShapeType["FACE"])
  subEdgeList  = geompy.SubShapeAll(compshell, geompy.ShapeType["EDGE"])
  
- print "number of Shells in compshell : ", len(subShellList)
- print "number of Faces  in compshell : ", len(subFaceList)
- print "number of Edges  in compshell : ", len(subEdgeList)
+ print("number of Shells in compshell : ", len(subShellList))
+ print("number of Faces  in compshell : ", len(subFaceList))
+ print("number of Edges  in compshell : ", len(subEdgeList))
  
  status = geompy.CheckShape(compshell)
- print " check status ", status
+ print(" check status ", status)
  
  ### ---------------------------- SMESH --------------------------------------
 -smesh.SetCurrentStudy(salome.myStudy)
 +smesh.UpdateStudy()
  
  # ---- init a Mesh with the compshell
  
@@@ -111,16 -111,16 +111,16 @@@ print(ret
  if ret != 0:
      log = mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the MeshcompShel:"
-     print "Number of nodes        : ", mesh.NbNodes()
-     print "Number of edges        : ", mesh.NbEdges()
-     print "Number of faces        : ", mesh.NbFaces()
-     print "Number of triangles    : ", mesh.NbTriangles()
-     print "Number of volumes      : ", mesh.NbVolumes()
-     print "Number of tetrahedrons : ", mesh.NbTetras()
+         print(linelog)
+     print("Information about the MeshcompShel:")
+     print("Number of nodes        : ", mesh.NbNodes())
+     print("Number of edges        : ", mesh.NbEdges())
+     print("Number of faces        : ", mesh.NbFaces())
+     print("Number of triangles    : ", mesh.NbTriangles())
+     print("Number of volumes      : ", mesh.NbVolumes())
+     print("Number of tetrahedrons : ", mesh.NbTetras())
      
  else:
-     print "problem when computing the mesh"
+     print("problem when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 122ebabfda8c21b2d566350b53955302ecf22f3d,144a9fab95bb31ecd56fa11b28c14972768306f8..05d1f94f920c11dbc2073ee5d7bfe95969d87baa
@@@ -97,14 -97,14 +97,14 @@@ print(ret
  if ret != 0:
      log = mesh.GetLog(0) # no erase trace
      for linelog in log:
-         print linelog
-     print "Information about the Mesh_mechanic_tetra:"
-     print "Number of nodes      : ", mesh.NbNodes()
-     print "Number of edges      : ", mesh.NbEdges()
-     print "Number of faces      : ", mesh.NbFaces()
-     print "Number of triangles  : ", mesh.NbTriangles()
-     print "Number of volumes    : ", mesh.NbVolumes()
+         print(linelog)
+     print("Information about the Mesh_mechanic_tetra:")
+     print("Number of nodes      : ", mesh.NbNodes())
+     print("Number of edges      : ", mesh.NbEdges())
+     print("Number of faces      : ", mesh.NbFaces())
+     print("Number of triangles  : ", mesh.NbTriangles())
+     print("Number of volumes    : ", mesh.NbVolumes())
  else:
-     print "probleme when computing the mesh"
+     print("probleme when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index a45499144065e1caaac85d520033fd9bc3037536,6422701aba11325187418a16c8ff18a8fdf8ea59..709e27dad4bc1ea26000c5af53b6e82e70ac3711
@@@ -71,8 -71,8 +71,8 @@@ aGroup = mesh.MakeGroupByCriterion("Fre
  anIds = aGroup.GetIDs()
  
  # print result
- print "Criterion: Free edges Nb = ", len( anIds )
+ print("Criterion: Free edges Nb = ", len( anIds ))
  for i in range( len( anIds ) ):
-   print anIds[ i ]
+   print(anIds[ i ])
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 6a215780a7b9c1b1135fe343be66c76ab5938e08,0373a57f46ede524f3e795ad4862f3a9b2590e5a..5dd1d8f9e0d67f764619137c1ee1e57eded2d80b
@@@ -62,8 -62,8 +62,8 @@@ salome.sg.updateObjBrowser(
  
  # -----------------------------------------------------------------------------
  
- print "-------------------------- mesh"
+ print("-------------------------- mesh")
 -smesh.SetCurrentStudy(salome.myStudy)
 +smesh.UpdateStudy()
  
  # ---- define a mesh on the geom shape 'blob'
  mesh=smesh.Mesh(blob, "MeshBlob")
@@@ -85,17 -85,17 +85,17 @@@ for edges in edgeGroups: # loop on grou
      pass
  
  # ---- compute mesh
- print "-------------------------- compute mesh"
+ print("-------------------------- compute mesh")
  ok = mesh.Compute()
  if ok:
-     print "Information about the Mesh:"
-     print "Number of nodes       : ", mesh.NbNodes()
-     print "Number of edges       : ", mesh.NbEdges()
-     print "Number of faces       : ", mesh.NbFaces()
-     print "Number of quadrangles : ", mesh.NbQuadrangles()
-     print "Number of volumes     : ", mesh.NbVolumes()
-     print "Number of hexahedrons : ", mesh.NbHexas()
+     print("Information about the Mesh:")
+     print("Number of nodes       : ", mesh.NbNodes())
+     print("Number of edges       : ", mesh.NbEdges())
+     print("Number of faces       : ", mesh.NbFaces())
+     print("Number of quadrangles : ", mesh.NbQuadrangles())
+     print("Number of volumes     : ", mesh.NbVolumes())
+     print("Number of hexahedrons : ", mesh.NbHexas())
  else:
-     print "problem when Computing the mesh"
+     print("problem when Computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index e2ba044c4c52d8efec8ef5a6bcfe9077196737d7,f74a37208925ebe8d798b8e69415c7d9f65207df..d09e9e78b0a1611f8880467587f6e86378e93dd9
@@@ -179,13 -179,13 +179,13 @@@ print("-------------------------- compu
  
  mesh.Compute()
  
- print "Information about the Mesh_mechanic:"
- print "Number of nodes       : ", mesh.NbNodes()
- print "Number of edges       : ", mesh.NbEdges()
- print "Number of faces       : ", mesh.NbFaces()
- print "Number of triangles   : ", mesh.NbTriangles()
- print "Number of quadrangles : ", mesh.NbQuadrangles()
- print "Number of volumes     : ", mesh.NbVolumes()
- print "Number of tetrahedrons: ", mesh.NbTetras()
+ print("Information about the Mesh_mechanic:")
+ print("Number of nodes       : ", mesh.NbNodes())
+ print("Number of edges       : ", mesh.NbEdges())
+ print("Number of faces       : ", mesh.NbFaces())
+ print("Number of triangles   : ", mesh.NbTriangles())
+ print("Number of quadrangles : ", mesh.NbQuadrangles())
+ print("Number of volumes     : ", mesh.NbVolumes())
+ print("Number of tetrahedrons: ", mesh.NbTetras())
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index e824149e89800dbd21f67119d2e830e052583032,388d42e3c3e9d0d350d571610032ba73f46f42f2..5c0c5cefb2d019298269b79c7c8b7b08a9b7ee7a
@@@ -119,20 -119,20 +119,20 @@@ netgen.SetFineness( smeshBuilder.Fine 
  netgen.SetQuadAllowed( 1 )
  #netgen.SetOptimize( 1 )
  
- print "-------------------------- compute mesh"
+ print("-------------------------- compute mesh")
  ret = mesh.Compute()
- print ret
+ print(ret)
  if ret != 0:
-     print "Information about the MeshcompShel:"
-     print "Number of nodes        : ", mesh.NbNodes()
-     print "Number of edges        : ", mesh.NbEdges()
-     print "Number of faces        : ", mesh.NbFaces()
-     print "Number of triangles    : ", mesh.NbTriangles()
-     print "Number of quadrangles  : ", mesh.NbQuadrangles()
-     print "Number of volumes      : ", mesh.NbVolumes()
-     print "Number of tetrahedrons : ", mesh.NbTetras()
+     print("Information about the MeshcompShel:")
+     print("Number of nodes        : ", mesh.NbNodes())
+     print("Number of edges        : ", mesh.NbEdges())
+     print("Number of faces        : ", mesh.NbFaces())
+     print("Number of triangles    : ", mesh.NbTriangles())
+     print("Number of quadrangles  : ", mesh.NbQuadrangles())
+     print("Number of volumes      : ", mesh.NbVolumes())
+     print("Number of tetrahedrons : ", mesh.NbTetras())
      
  else:
-     print "problem when computing the mesh"
+     print("problem when computing the mesh")
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 815ad0d90f0b513411afe9e7548eff0af91c2097,284da9268696b4eed9b919db0d0a44613c2d84fc..dc0fdafb2670037d28d1ef85046986b88a9eb900
@@@ -146,16 -146,16 +146,16 @@@ print(hypVolume.GetMaxElementVolume()
  smesh.SetName(hypVolume, "maxElementVolume_" + str(maxElementVolume))
  
  
- print "-------------------------- compute the mesh of the mechanic piece"
+ print("-------------------------- compute the mesh of the mechanic piece")
  mesh.Compute()
  
- print "Information about the Mesh_mechanic_tetra:"
- print "Number of nodes       : ", mesh.NbNodes()
- print "Number of edges       : ", mesh.NbEdges()
- print "Number of faces       : ", mesh.NbFaces()
- print "Number of triangles   : ", mesh.NbTriangles()
- print "Number of quadrangles: ", mesh.NbQuadrangles()
- print "Number of volumes     : ", mesh.NbVolumes()
- print "Number of tetrahedrons: ", mesh.NbTetras()
+ print("Information about the Mesh_mechanic_tetra:")
+ print("Number of nodes       : ", mesh.NbNodes())
+ print("Number of edges       : ", mesh.NbEdges())
+ print("Number of faces       : ", mesh.NbFaces())
+ print("Number of triangles   : ", mesh.NbTriangles())
+ print("Number of quadrangles: ", mesh.NbQuadrangles())
+ print("Number of volumes     : ", mesh.NbVolumes())
+ print("Number of tetrahedrons: ", mesh.NbTetras())
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 3b852193b77d46e4287a87dc85befaedfc7cd5a8,2c5aa2465697d6f7cb197de63ffb7a86f5750ef2..80322918cd2a85c973d217654e2aaa0cb849dde1
@@@ -57,10 -57,10 +57,10 @@@ idedge = [
  subShapeList = geompy.SubShapeAll(box, geompy.ShapeType["EDGE"])
  for f in subShapeList:
    name = geompy.SubShapeName(f, box)
-   print name
+   print(name)
    idedge.append( geompy.addToStudyInFather(box, f, name) )
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
  
  # ---- launch SMESH
  smeshgui = salome.ImportComponentGUI("SMESH")
index e8e6f4d1ae574d99e864f1439324f6bdee28e755,0de27458593a11eefc082313469706b68c97ce49..a642a670d8d59ef8210875b87b595e2be1ace887
@@@ -138,13 -138,13 +138,13 @@@ for a in log
              i1 = a.indexes[ii]
              ii = ii+1
              i2 = a.indexes[ii]
-           print i2
+             print(i2)
              ii = ii+1
-           print "ii", ii
+             print("ii", ii)
              i3 = a.indexes[ii]
-           print i3
+             print(i3)
              #ii = ii+1
              ii = ii+1
-             print "AddTriangle %i - %i %i %i" % (ind, i1, i2, i3)
+             print("AddTriangle %i - %i %i %i" % (ind, i1, i2, i3))
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
index 625eaafb550d112eae1007317e443a140cc241d7,bc70c54d951bf3c714ff9d132ddc11bdf09a7238..1950f309701bf6ce5bbb52e4b9866ca704b8a9af
@@@ -60,7 -60,7 +60,7 @@@ idshell = geompy.addToStudyInFather(box
  edgeList = geompy.SubShapeAll(face, geompy.ShapeType["EDGE"])
  edge = edgeList[0]
  name = geompy.SubShapeName(edge, face)
- print name
+ print(name)
  idedge = geompy.addToStudyInFather(face, edge, name)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
Simple merge
index 97ac108267b64832e7ebd2e9586fc85e5639a468,72fbb578a0459e945468fe38392aa6d6358649a3..b8f54fd7f12650de5e6514460b46ff118d9523dc
@@@ -111,8 -111,8 +111,8 @@@ smesh.SetName(hypArea2, "MaxElementArea
  
  mesh.Compute()
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
  
  sg = salome.ImportComponentGUI('SMESH')
- if type(sg) != type(salome.salome_ComponentGUI):
+ if not isinstance(sg, type(salome.salome_ComponentGUI)):
      sg.CreateAndDisplayActor('0:1:2:3')
index 092cf447d6ceb1e7ae9999e670bec9a03aa5b81f,8fa9b8c78928ea72b5c0fde0a9f918ae73a11a40..271d4261e1ae082f8a028942b584abcb135a3366
@@@ -28,11 -28,11 +28,11 @@@ from SMESH_test1 import 
  
  # ---- compute box
  
- print "-------------------------- compute box"
+ print("-------------------------- compute box")
  ret = mesh.Compute()
- print ret
+ print(ret)
  log = mesh.GetLog(0); # no erase trace
  for linelog in log:
-     print linelog
+     print(linelog)
  
 -salome.sg.updateObjBrowser(True)
 +salome.sg.updateObjBrowser()
Simple merge
Simple merge
Simple merge
index 69754d2b703b63b200dcc54eda8a9e323ae5cd68,1848af2fc43e7f31c20a948d9ac4fafb610e2fec..7edfad86d23a08a8a25b6328234e5313a7dd1b57
@@@ -36,11 -36,8 +36,11 @@@ import o
  # Values
  # ------
  
- print "Output directory:", tmpDir
 +tmpDir = os.getenv('SALOME_TMP_DIR', '/tmp')
++print("Output directory:", tmpDir)
 +
  # Path for ".med" files
 -path = "/tmp/ex29_%s_" % os.getenv('USER','unknown')
 +path = os.path.join( tmpDir, "ex29_%s_" % os.getenv('USER','unknown'))
  
  # Name of the shape and the mesh
  name = "Carre"
Simple merge
Simple merge
index 0fdd1aeb339f6ae60c93049367b9a900b25ba976,81226496113d188537ddf1f870a44c991b587377..92a88aaf3ac2364294328bb88c2ff852c24863de
@@@ -42,9 -43,9 +43,9 @@@ from salome.smesh import smeshBuilde
  try:
      # get instance of class smeshBuilder
      engineSmesh = salome.lcc.FindOrLoadComponent( "FactoryServer", "SMESH" )
 -    smesh = smeshBuilder.New(salome.myStudy, engineSmesh)
 +    smesh = smeshBuilder.New(True,engineSmesh)
  except:
-     print "exception in smesh.py: instance creation failed"
+     print("exception in smesh.py: instance creation failed")
      smesh = None
      pass
  
index 2334321177669e32885a2b1b4334b88ece8a9dff,9ce830c28d6a544da3afdafddd489ab93af5ec5c..6da2aaf29ba637d254f751255cb7afb9f1fd2a2c
@@@ -745,10 -830,10 +818,10 @@@ class smeshBuilder(SMESH._objref_SMESH_
              # Check that Threshold is a group
              if isinstance(aThreshold, SMESH._objref_SMESH_GroupBase):
                  if aThreshold.GetType() != elementType:
-                     raise ValueError, "Group type mismatches Element type"
+                     raise ValueError("Group type mismatches Element type")
                  aCriterion.ThresholdStr = aThreshold.GetName()
                  aCriterion.ThresholdID  = salome.orb.object_to_string( aThreshold )
 -                study = self.GetCurrentStudy()
 +                study = salome.myStudy
                  if study:
                      so = study.FindObjectIOR( aCriterion.ThresholdID )
                      if so:
@@@ -1183,10 -1266,10 +1254,10 @@@ def New( isPublished = True, instance=N
      global doLcc
      engine = instance
      if engine is None:
-       doLcc = True
+         doLcc = True
      smeshInst = smeshBuilder()
      assert isinstance(smeshInst,smeshBuilder), "Smesh engine class is %s but should be smeshBuilder.smeshBuilder. Import salome.smesh.smeshBuilder before creating the instance."%smeshInst.__class__
 -    smeshInst.init_smesh(study)
 +    smeshInst.init_smesh(isPublished)
      return smeshInst
  
  
@@@ -1501,15 -1585,15 +1570,15 @@@ class Mesh(metaclass=MeshMeta)
                  else:  msg += " has not been computed"
                  if allReasons != "": msg += ":"
                  else:                msg += "."
-                 print msg
-                 print allReasons
+                 print(msg)
+                 print(allReasons)
              pass
 -        if salome.sg.hasDesktop() and self.mesh.GetStudyId() >= 0:
 +        if salome.sg.hasDesktop():
              if not isinstance( refresh, list): # not a call from subMesh.Compute()
                  smeshgui = salome.ImportComponentGUI("SMESH")
 -                smeshgui.Init(self.mesh.GetStudyId())
 +                smeshgui.Init()
                  smeshgui.SetMeshIcon( salome.ObjectToID( self.mesh ), ok, (self.NbNodes()==0) )
 -                if refresh: salome.sg.updateObjBrowser(True)
 +                if refresh: salome.sg.updateObjBrowser()
  
          return ok
  
@@@ -5183,41 -5270,18 +5251,42 @@@ class algoCreator
  
      # Create an instance of algorithm
      def __call__(self,algo="",geom=0,*args):
 -        algoType = self.defaultAlgoType
 -        for arg in args + (algo,geom):
 -            if isinstance( arg, geomBuilder.GEOM._objref_GEOM_Object ):
 -                geom = arg
 -            if isinstance( arg, str ) and arg:
 +        algoType = ""
 +        shape = 0
 +        if isinstance( algo, str ):
 +            algoType = algo
 +        elif ( isinstance( algo, geomBuilder.GEOM._objref_GEOM_Object ) and \
 +               not isinstance( geom, geomBuilder.GEOM._objref_GEOM_Object )):
 +            shape = algo
 +        elif algo:
 +            args += (algo,)
 +
 +        if isinstance( geom, geomBuilder.GEOM._objref_GEOM_Object ):
 +            shape = geom
 +        elif not algoType and isinstance( geom, str ):
 +            algoType = geom
 +        elif geom:
 +            args += (geom,)
 +        for arg in args:
 +            if isinstance( arg, geomBuilder.GEOM._objref_GEOM_Object ) and not shape:
 +                shape = arg
 +            elif isinstance( arg, str ) and not algoType:
                  algoType = arg
 +            else:
 +                import traceback, sys
 +                msg = "Warning. Unexpected argument in mesh.%s() --->  %s" % ( self.method, arg )
 +                sys.stderr.write( msg + '\n' )
 +                tb = traceback.extract_stack(None,2)
 +                traceback.print_list( [tb[0]] )
 +        if not algoType:
 +            algoType = self.defaultAlgoType
          if not algoType and self.algoTypeToClass:
-             algoType = self.algoTypeToClass.keys()[0]
-         if self.algoTypeToClass.has_key( algoType ):
+             algoType = list(self.algoTypeToClass.keys())[0]
+         if algoType in self.algoTypeToClass:
              #print "Create algo",algoType
 -            return self.algoTypeToClass[ algoType ]( self.mesh, geom )
 -        raise RuntimeError("No class found for algo type %s" % algoType)
++
 +            return self.algoTypeToClass[ algoType ]( self.mesh, shape )
-         raise RuntimeError, "No class found for algo type %s" % algoType
++        raise RuntimeError( "No class found for algo type %s" % algoType)
          return None
  
  ## Private class used to substitute and store variable parameters of hypotheses.
@@@ -5295,10 -5359,10 +5364,10 @@@ for pluginName in os.environ[ "SMESH_Me
          if k[0] == '_': continue
          algo = getattr( plugin, k )
          #print "             algo:", str(algo)
-         if type( algo ).__name__ == 'classobj' and hasattr( algo, "meshMethod" ):
+         if inspect.isclass(algo) and hasattr(algo, "meshMethod"):
              #print "                     meshMethod:" , str(algo.meshMethod)
              if not hasattr( Mesh, algo.meshMethod ):
 -                setattr( Mesh, algo.meshMethod, algoCreator()
 +                setattr( Mesh, algo.meshMethod, algoCreator( algo.meshMethod ))
                  pass
              getattr( Mesh, algo.meshMethod ).add( algo )
              pass
Simple merge
Simple merge
Simple merge
index e7603d9162d66d08fa4a16910aefe5763c1f3b50,2f2e5c1ee4962f4f442aa952e1f00bce26e62a6b..5bcb15973aa114edd49d4ba192061fedf7e54e85
@@@ -262,9 -263,9 +262,9 @@@ class MGCleanerMonPlugDialog(Ui_MGClean
      ACmt = myBuilder.FindOrCreateAttribute(myObject, "AttributeComment")
      ACmt.SetValue(datai)
  
 -    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser(False)
 +    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser()
      self.num += 1
-     if verbose: print("save %s in Object Browser done: %s\n%s" % (name, myObject.GetID(), datai))
+     if verbose: print(("save %s in Object Browser done: %s\n%s" % (name, myObject.GetID(), datai)))
      return True
  
    def PBSaveHypPressed(self):
      notebook.set("MGCleaner_%i" % self.num, data)
      """
  
 -    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser(False)
 +    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser()
      self.num += 1
-     if verbose: print("save %s in Object Browser done:\n%s" % (name, data))
+     if verbose: print(("save %s in Object Browser done:\n%s" % (name, data)))
      return True
  
    def SP_toStr(self, widget):
Simple merge
index 6dcc3345b156befaab9044d1cf5f70c33265fa53,ab7edff59e92c2312ecf9c80b739144b97c76295..7f718755b692bfaecb6520152c0f4d924342774d
@@@ -3,13 -2,13 +2,13 @@@
  
  import sys,os
  import salome
- from getStats import getGroupesRef
- from Type_Maille import dicoDimENtite
+ from .getStats import getGroupesRef
+ from .Type_Maille import dicoDimENtite
  
 -def getCritere(dim,NomMesh,acritere,theStudy):
 +def getCritere(dim,NomMesh,acritere):
    import SMESH
    from salome.smesh import smeshBuilder
 -  smesh = smeshBuilder.New(theStudy)
 +  smesh = smeshBuilder.New()
    import numpy
  #  print dim,NomMesh,acritere
    if dim == 2 :
index 29754d4b42173e959610829fadcd914bdafcf91a,90e4917971f0affb707c86f068f83f7d7abce4ec..4aac5cf7c28cfd89d9532fe5d37049272ec55901
@@@ -236,9 -236,9 +236,9 @@@ class MonYamsPlugDialog(Ui_YamsPlugDial
      ACmt = myBuilder.FindOrCreateAttribute(myObject, "AttributeComment")
      ACmt.SetValue(datai)
  
 -    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser(False)
 +    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser()
      self.num += 1
-     if verbose: print("save %s in Object Browser done: %s\n%s" % (name, myObject.GetID(), datai))
+     if verbose: print(("save %s in Object Browser done: %s\n%s" % (name, myObject.GetID(), datai)))
      return True
  
    def PBSaveHypPressed(self):
      data = self.getResumeData(separator=" ; ")
      self.editor.setAttributeValue(newStudyIter, "AttributeComment", data)
      
 -    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser(False)
 +    if salome.sg.hasDesktop(): salome.sg.updateObjBrowser()
      self.num += 1
-     if verbose: print("save %s in Object Browser done:\n%s" % (name, data))
+     if verbose: print(("save %s in Object Browser done:\n%s" % (name, data)))
      return True
  
    def SP_toStr(self, widget):
index fa561d6f31bcf7fd5982da4b2f8d1b3cbb13f9f0,44c9dec47880aa7d490a3f20f874dc0183fdd4c4..d028f3d8add725ecaebaac7d62e98a5add69801c
  # if you already have plugins defined in a salome_plugins.py file, add this file at the end.
  # if not, copy this file as ${HOME}/Plugins/smesh_plugins.py or ${APPLI}/Plugins/smesh_plugins.py
  
- import sys, traceback
  import math
+ import sys
+ import traceback
  from blocFissure import gmu
  
  def fissureCoudeDlg(context):
 -  # get context study, studyId, salomeGui
 +  # get context study, salomeGui
    study = context.study
 -  studyId = context.studyId
    sg = context.sg
    
    import os
index d4ce4adaa70fd3e72497181cd885a4a7d92b9e5e,c2dea7a867629da331d70e8c2829adcd2efdbc3c..dc9ee81907244b6fffb7ecc5efa90bcbcc8e249e
@@@ -22,13 -23,12 +23,12 @@@ import salom
  salome.salome_init()
  import GEOM
  from salome.geom import geomBuilder
 -geompy = geomBuilder.New(salome.myStudy)
 +geompy = geomBuilder.New()
  
  filename="/home/gboulant/development/projets/salome/SPADDER/spadder/resources/padderexe/REF_spheres.dat.xyz"
- file=open(filename,'rb')
  
- import csv
- datalines = csv.reader(file, delimiter=' ')
+ with open(filename,'rb') as f:
    datalines = csv.reader(file, delimiter=' ')
  i=0
  for row in datalines:
      x=float(row[0])
index 511c5d1f5bb2315b385252b953d723f6539924b5,39167defcc344d63d7c3e4d5dce0c875cb7e3202..efb8053b2acb3ebb6ea5cd75f3a13c49d652f2c3
@@@ -44,9 -44,9 +44,9 @@@ c.testkernel(
  
  # Test of usage of SMESH engine from the test component
  # WARN: the SMESH engine must be loaded first
- print "Test of usage of SMESH engine from the test component"
+ print("Test of usage of SMESH engine from the test component")
  import SMESH
  salome.lcc.FindOrLoadComponent("FactoryServer","SMESH")
 -c.testsmesh(salome.myStudyId)
 +c.testsmesh()
  
- print "Test completed : OK"
+ print("Test completed : OK")