Salome HOME
Join modifications from branch OCC_development_for_3_2_0a2
[modules/visu.git] / src / VISU_SWIG / VISU_Example_01.py
1 # T 2.23, 28: Displaying fields (scalar and vectorial) on nodes, change presentation options.
2 # Uses MED files ResOK_0000.med and Fields_group3D.med
3
4 # This script is equivalent to non-regression test script 003/A1
5
6 import salome
7 import visu_gui
8 import SALOMEDS
9 import VISU
10 import os
11
12 datadir = os.getenv("DATA_DIR") + "/MedFiles/"
13
14 #%====================Stage1: Creating a new study====================%
15
16 print "**** Stage1: Creating a new study"
17
18 print "Creating a new study..................", 
19 myVisu = visu_gui.myVisu
20 myVisu.SetCurrentStudy(salome.myStudy)
21 myViewManager = myVisu.GetViewManager()
22 if myViewManager is None : print "Error"
23 else : print "OK"
24
25 #%====================Stage2: Importing MED file====================%
26
27 print "**** Stage2: Importing MED file"
28
29 print 'Import "ResOK_0000.med"...............',
30 medFile = datadir + "ResOK_0000.med"
31 myResult = myVisu.ImportFile(medFile)
32 if myResult is None : print "Error"
33 else : print "OK"
34
35 print 'Creating new View3D...................',
36 myView = myViewManager.Create3DView()
37 if myView is None : print "Error"
38 else : print "OK"
39
40 myMeshName = 'dom'
41 myCellEntity = VISU.CELL
42 myNodeEntity = VISU.NODE
43
44 #%====================Stage3: Displaying vector field====================%
45
46 print "**** Stage3: Displaying vector field"
47
48 print "Creating Scalar Map.......",
49 scalarmap = myVisu.ScalarMapOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
50 if scalarmap is None : print "Error"
51 else : print "OK"
52 scalarmap.SetSize(0.15, 0.8)
53 myView.DisplayOnly(scalarmap)
54 myView.FitAll()
55
56 print "Creating Stream Lines.....",
57 streamlines = myVisu.StreamLinesOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
58 if streamlines is None : print "Error"
59 else : print "OK"
60 myView.DisplayOnly(streamlines)
61
62 print "Creating Vectors..........",
63 vectors = myVisu.VectorsOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
64 if vectors is None : print "Error"
65 else : print "OK"
66 myView.DisplayOnly(vectors)
67
68
69 print "Creating Iso Surfaces.....",
70 isosurfaces = myVisu.IsoSurfacesOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
71 if isosurfaces is None : print "Error"
72 else : print "OK"
73 myView.DisplayOnly(isosurfaces)
74
75 print "Creating Cut Planes.......",
76 cutplanes = myVisu.CutPlanesOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
77 if cutplanes is None : print "Error"
78 else : print "OK"
79 cutplanes.SetNbPlanes(30)
80 cutplanes.SetOrientation(VISU.CutPlanes.YZ, 0, 0)
81 myView.DisplayOnly(cutplanes)
82
83 print "Creating Scalar Map On Deformed Shape.......",
84 scalarmapondefshape = myVisu.ScalarMapOnDeformedShapeOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
85 if scalarmapondefshape is None : print "Error"
86 else : print "OK"
87 scalarmapondefshape.SetScalarField(myMeshName,'pression',2,myCellEntity);
88 myView.DisplayOnly(scalarmapondefshape)
89
90 #%====================Stage4: Opening a new study and Med file import====================%
91
92 # Opening a new study tempoparily commented due to a problem
93 # with python initialization. To be restored after bug 10000 fixing.
94
95 #print "**** Stage4: Opening a new study and Med file import"
96 print "**** Stage4: Med file import"
97
98 #print "Creating a new study..................", 
99 #newStudy = salome.myStudyManager.NewStudy('newStudy')
100 newStudy = salome.myStudy # temporarily
101 #myVisu.SetCurrentStudy(newStudy)
102 myViewManager = myVisu.GetViewManager()
103 myView = myViewManager.Create3DView()
104 if myView is None : print "Error"
105 else : print "OK"
106
107 print 'Importing "Fields_group3D.med"........',
108 medFile = datadir + "Fields_group3D.med"
109 myResult1 = myVisu.ImportFile(medFile)
110 if myResult1 is None : print "Error"
111 myView1 = myViewManager.Create3DView()
112 if myView1 is None : print "Error"
113 else : print "OK"
114
115 #%====================Stage5: Displaying scalar field====================%
116
117 print "**** Stage5: Displaying scalar field"
118
119 myMeshName1 = 'mailles_MED'
120
121 print "Creating Scalar Map.......",
122 scalarmap1 = myVisu.ScalarMapOnField(myResult1,myMeshName1,myCellEntity,'scalar field',1);
123 if scalarmap1 is None : print "Error"
124 else : print "OK"
125 myView1.DisplayOnly(scalarmap1)
126 myView1.FitAll()
127
128 print "Creating Iso Surfaces.....",
129 isosurfaces1 = myVisu.IsoSurfacesOnField(myResult1,myMeshName1,myCellEntity,'scalar field',1);
130 if isosurfaces1 is None : print "Error"
131 else : print "OK"
132 myView1.DisplayOnly(isosurfaces1)
133
134 print "Creating Cut Planes.......",
135 cutplanes1 = myVisu.CutPlanesOnField(myResult1,myMeshName1,myCellEntity,'scalar field',1);
136 if cutplanes1 is None : print "Error"
137 else : print "OK"
138 cutplanes1.SetOrientation(VISU.CutPlanes.YZ, 0, 0)
139 myView1.DisplayOnly(cutplanes1)
140
141 print "Creating Scalar Map On Deformed Shape.......",
142 scalarmapondefshape1 = myVisu.ScalarMapOnDeformedShapeOnField(myResult1,myMeshName1,myCellEntity,'vectoriel field',1);
143 if scalarmapondefshape1 is None : print "Error"
144 else : print "OK"
145 myView1.DisplayOnly(scalarmapondefshape1)
146 #%====================Stage6: Object browser popup====================%
147
148 print "**** Stage6: Object browser popup"
149
150 print "Creating mesh.............",
151 mesh = myVisu.MeshOnEntity(myResult1,myMeshName1,myCellEntity);
152 if mesh is None : print "Error"
153 else : print "OK"
154 myView1.DisplayOnly(mesh)
155
156
157 print "Changing type of presentation of mesh:"
158 mesh.SetPresentationType(VISU.WIREFRAME)
159 PrsType = mesh.GetPresentationType()
160 print "Presentation type..", PrsType
161 myView1.DisplayOnly(mesh)
162
163 mesh.SetPresentationType(VISU.SHADED)
164 PrsType = mesh.GetPresentationType()
165 print "Presentation type.....", PrsType
166 myView1.DisplayOnly(mesh)
167
168 mesh.SetPresentationType(VISU.POINT)
169 PrsType = mesh.GetPresentationType()
170 print "Presentation type......", PrsType
171 myView1.DisplayOnly(mesh)
172 myView1.Update()
173
174 mesh.SetPresentationType(VISU.SHRINK)
175 PrsType = mesh.GetPresentationType()
176 print "Presentation type.....", PrsType
177 myView1.DisplayOnly(mesh)
178
179 print "Changing color of mesh....",
180 aColor = SALOMEDS.Color(0,0,1)
181 mesh.SetCellColor(aColor)
182 myView1.DisplayOnly(mesh)
183 print "OK"
184
185 print "Renaming ScalarMap........",
186 SObj = newStudy.FindObjectIOR(scalarmap1.GetID())
187 newName = 'Renamed Object'
188 SObj.Name = newName
189 print "OK"
190
191 print "Deleting Cut Planes.......",
192 SObj = newStudy.FindObjectIOR(cutplanes1.GetID())
193 myBuilder = newStudy.NewBuilder()
194 myBuilder.RemoveObject(SObj)
195 print "OK"
196
197 print "Changing first IsoSurfaces",
198 myVisu.SetCurrentStudy(salome.myStudy)
199 myView.DisplayOnly(isosurfaces)
200 isosurfaces.SetNbSurfaces(25)
201 print "OK"
202
203 myView.Maximize()
204 myView.DisplayOnly(isosurfaces)
205
206 print "Hide IsoSurfaces..........",
207 myView.Erase(isosurfaces)
208 print "OK"