]> SALOME platform Git repositories - modules/visu.git/blob - src/VISU_SWIG/visu_med.py
Salome HOME
Join modifications from branch OCC_debug_for_3_2_0b1
[modules/visu.git] / src / VISU_SWIG / visu_med.py
1 #  VISU VISU_SWIG : binding of C++ implementation and Python
2 #
3 #  Copyright (C) 2003  CEA/DEN, EDF R&D
4 #
5 #
6 #
7 #  File   : visu_med.py
8 #  Module : VISU
9
10 import os
11 import salome
12 import SALOMEDS
13 import SALOME_MED
14 import VISU
15
16 if salome.hasDesktop():
17     from libSALOME_Swig import *
18     sg = SALOMEGUI_Swig()
19
20 def getMedObjectFromStudy():
21     mySO = salome.myStudy.FindObject("Objet MED")
22     anAttr = mySO.FindAttribute("AttributeIOR")[1]
23     obj = salome.orb.string_to_object(anAttr.Value())
24     myObj = obj._narrow(SALOME_MED.MED)
25     return myObj
26
27 def getFieldObjectFromStudy(number,subnumber):
28     mySO = salome.myStudy.FindObject("MEDFIELD")
29     mysub = mySO.FindSubObject(number)[1]
30     if mysub:
31         mysubsub = mysub.FindSubObject(subnumber)[1]
32         if mysubsub:
33             Builder = salome.myStudy.NewBuilder()
34             anAttr = Builder.FindOrCreateAttribute(mysubsub, "AttributeIOR")
35             obj = salome.orb.string_to_object(anAttr.Value())
36             myObj = obj._narrow(SALOME_MED.FIELDINT)
37             if (myObj == None):
38                 myObj = obj._narrow(SALOME_MED.FIELDDOUBLE)
39             return myObj
40     else:
41         print "ERROR: No Field Object stored in this Study"
42         return None
43
44 med_comp = salome.lcc.FindOrLoadComponent("FactoryServer", "MED")
45
46 medDir = os.getenv('DATA_DIR') + '/MedFiles/'
47
48 def importMedFrom(medDir,medFile):
49     medFile = medDir + medFile
50     med_comp.readStructFileWithFieldType(medFile,salome.myStudyName)
51     if salome.hasDesktop():
52         sg.updateObjBrowser(1)
53   
54 def importMed(medFile):
55     importMedFrom(medDir,medFile)
56
57 #med_obj = getMedObjectFromStudy()
58 myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
59 print "Use importMed(medFile) or importMedFrom(medDir,medFile) functions !"
60
61 #myField = getFieldObjectFromStudy(2,1)
62 #myResult = myVisu.ImportMed(myField)
63 #aMesh = myVisu.CreateMesh(myResult);
64 #aScalarMap = myVisu.CreateScalarMap(myResult,myField.getName(),0)
65 #if(myField.getNumberOfComponents() > 1) :
66 #  aScalarMap = myVisu.CreateVectors(myResult,myField.getName(),0)
67
68 #myResult = myVisu.ImportFile(medFile)
69 #aMesh = myVisu.CreateMesh(myResult);
70 #aScalarMap = myVisu.CreateScalarMap(myResult,myField.getName(),0)
71 #if(myField.getNumberOfComponents() > 1) :
72 #  aScalarMap = myVisu.CreateCutPlanes(myResult,myField.getName(),0)