Salome HOME
Preparation of 3.1.0a2: version ID. compilation with new KERNEL
[modules/visu.git] / examples / VISU_Example_02.py
1 # T 2.24: Save/retrieve view parameters.
2 # Uses MED file fra.med from ${KERNEL_ROOT_DIR}/examples directory.
3
4 # This script is equivalent to non-regression test script 003/A3
5
6 import salome
7 import visu_gui
8 import SALOMEDS
9 import VISU
10 import os
11
12 medFile = os.getenv("KERNEL_ROOT_DIR") + "/examples/fra.med"
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: Saving view parameters before import====================%
26
27 print "**** Stage2: Saving view parameters before import "
28
29 myView = myViewManager.Create3DView()
30
31 print "Zooming trihedron.....................",
32 aScale = myView.GetParallelScale()
33 myView.SetParallelScale(aScale*4)
34 print "OK"
35
36 print "Rotating trihedron....................",
37 aPoint = (100,100,100)
38 myView.SetPointOfView(aPoint) 
39 print "OK"
40
41 print "Saving view parameters................",
42 aViewParamsName1 = 'ViewParams:1'
43 aSaveRes = myView.SaveViewParams(aViewParamsName1)
44 if aSaveRes != 1 : print "Error"
45 else : print "OK"
46
47 #%====================Stage3: Import MED file====================%
48
49 print "**** Stage3: Import MED file"
50
51 print 'Importing "fra.med"...................',
52 myResult = myVisu.ImportFile(medFile)
53 if myResult is None : print "Error"
54 else : print "OK"
55
56 print "Creating mesh.........................",
57 myMeshName = 'LE VOLUME'
58 myCellEntity = VISU.CELL
59 mesh = myVisu.MeshOnEntity(myResult,myMeshName,myCellEntity);
60 if mesh is None : print "Error"
61 else : print "OK"
62
63 myView.Maximize()
64 myView.Display(mesh)
65 myView.FitAll()
66
67 #%====================Stage4: Saving view parameters after import====================%
68
69 print "**** Stage4:  Saving view parameters after import"
70
71 print "Creating Scalar Map...................",
72 myFieldName = 'TAUX_DE_VIDE'
73 myNodeEntity = VISU.NODE
74 scalarmap = myVisu.ScalarMapOnField(myResult,myMeshName,myNodeEntity,myFieldName,1);
75 if scalarmap is None : print "Error"
76 else : print "OK"
77 myView.DisplayOnly(scalarmap)
78
79 print "Zooming 3D view.......................",
80 aScale = myView.GetParallelScale()
81 myView.SetParallelScale(aScale*2)
82 print "OK"
83
84 print "Setting view point(LEFT)..............",
85 myView.SetView((VISU.View3D.LEFT))
86 print "OK"
87
88 print "Saving view parameters................",
89 aViewParamsName2 = 'ViewParams:2'
90 aSaveRes = myView.SaveViewParams(aViewParamsName2)
91 if aSaveRes != 1 : print "Error"
92 else : print "OK"
93
94 print "Creating Cut Planes...................",
95 cutplanes = myVisu.CutPlanesOnField(myResult,myMeshName,myNodeEntity,myFieldName,1);
96 if cutplanes is None : print "Error"
97 else : print "OK"
98 cutplanes.SetNbPlanes(4)
99 myView.DisplayOnly(cutplanes)
100
101 print "Setting scaling.......................",
102
103 #Define parameters of scaling:
104 myXParam = 5
105 myYParam = 5
106 myZParam = 1
107
108 myXAxis = VISU.View3D.XAxis
109 myYAxis = VISU.View3D.YAxis
110 myZAxis = VISU.View3D.ZAxis
111
112 myView.ScaleView(myXAxis,myXParam)
113 myView.ScaleView(myYAxis,myYParam)
114 myView.ScaleView(myZAxis,myZParam)
115 print "OK"
116
117 print "Rotating 3d view......................",
118 aPoint = (100,40,0)
119 myView.SetPointOfView(aPoint) 
120 print "OK"
121
122 print "Fit All...............................",
123 myView.FitAll()
124 print "OK"
125
126 print "Saving view parameters................",
127 aViewParamsName3 = 'ViewParams:3'
128 aSaveRes = myView.SaveViewParams(aViewParamsName3)
129 if aSaveRes != 1 : print "Error"
130 else : print "OK"
131
132 #%====================Stage5: Restoring view parameters====================%
133
134 print "**** Stage5: Restoring view parameters"
135
136 print "Restoring first view parameters.......",
137 aRestoreRes = myView.RestoreViewParams(aViewParamsName1)
138 if aRestoreRes != 1 : print "Error"
139 else : print "OK"
140
141 print "Restoring second view parameters......",
142 aRestoreRes = myView.RestoreViewParams(aViewParamsName2)
143 if aRestoreRes != 1 : print "Error"
144 else : print "OK"
145
146 print "Displaing only Scalar Map.............",
147 myView.DisplayOnly(scalarmap)
148 print "OK"
149
150 print "Displaing only Cut Planes.............",
151 myView.DisplayOnly(cutplanes)
152 print "OK"
153
154 print "Restoring third view parameters.......",
155 aRestoreRes = myView.RestoreViewParams(aViewParamsName3)
156 if aRestoreRes != 1 : print "Error"
157 else : print "OK"
158
159 print "Displaing only Mesh...................",
160 myView.DisplayOnly(mesh)
161 print "OK"
162
163 print "Displaing only Scalar Map.............",
164 myView.DisplayOnly(scalarmap)
165 print "OK"
166
167 print "Displaing only Cut Planes.............",
168 myView.DisplayOnly(cutplanes)
169 print "OK"
170
171 #%====================Stage6: Changing of view parameters====================%
172
173 print "**** Stage6: Changing of view parameters"
174
175 print "Remove scaling........................",
176 myView.RemoveScale()
177 print "OK"
178
179 print "Fit All...............................",
180 myView.FitAll()
181 print "OK"
182
183 print "Rotating 3d view......................",
184 aPoint = (0,60,150)
185 myView.SetPointOfView(aPoint) 
186 print "OK"
187
188 print "Resaving first view parameters........",
189 aSaveRes = myView.SaveViewParams(aViewParamsName1)
190 if aSaveRes != 1 : print "Error"
191 else : print "OK"
192
193 print "Restoring third view parameters.......",
194 aRestoreRes = myView.RestoreViewParams(aViewParamsName3)
195 if aRestoreRes != 1 : print "Error"
196 else : print "OK"
197
198 print "Restoring first view parameters.......",
199 aRestoreRes = myView.RestoreViewParams(aViewParamsName1)
200 if aRestoreRes != 1 : print "Error"
201 else : print "OK"
202
203 print "Displaying only Mesh..................",
204 myView.DisplayOnly(mesh)
205 print "OK"
206
207 print "Displaying only Scalar Map............",
208 myView.DisplayOnly(scalarmap)
209 print "OK"
210
211 #%====================Stage7: Saving of created view parameters====================%
212
213 print "**** Stage7: Saving of created view parameters"
214
215 print "Saving study..........................",
216
217 str = os.getenv("TmpDir")
218 if str == None:
219         str = "/tmp"
220
221 file = str+'/VISU_005.hdf'
222
223 salome.myStudyManager.SaveAs(file, salome.myStudy, 0)
224 study_id = salome.myStudy._get_StudyId()
225 #salome.sg.CloseStudy(study_id)
226 #salome.myStudyManager.Close(salome.myStudy)
227 #salome.myStudy.Close()
228 print "OK"
229
230 print "Opening just saved study..............",
231
232 openedStudy = salome.myStudyManager.Open(file)
233 myVisu.SetCurrentStudy(openedStudy)
234 myViewManager = myVisu.GetViewManager()
235 myView1 = myViewManager.Create3DView()
236 if myView1 is None : print "Error"
237 else : print "OK"
238
239 print "Restoring first view parameters.......",
240 aRestoreRes = myView1.RestoreViewParams(aViewParamsName1)
241 if aRestoreRes != 1 : print "Error"
242 else : print "OK"
243
244 Builder = openedStudy.NewBuilder()
245 SCom = openedStudy.FindComponent("VISU")
246 Builder.LoadWith(SCom ,myVisu)
247
248 print "Displaying Scalar Map.................",
249 SObj = openedStudy.FindObject('ScalarMap')
250 scalarmap1 = visu_gui.visu.SObjectToObject(SObj)
251 if scalarmap1 is None : print "Error"
252 else : print "OK"
253 myView1.DisplayOnly(scalarmap1)
254
255 print "Displaying Cut Planes.................",
256 SObj = openedStudy.FindObject('CutPlanes')
257 cutplanes1 = visu_gui.visu.SObjectToObject(SObj)
258 if cutplanes1 is None : print "Error"
259 else : print "OK"
260 myView1.DisplayOnly(cutplanes1)
261
262 print "Restoring second view parameters......",
263 aRestoreRes = myView1.RestoreViewParams(aViewParamsName2)
264 if aRestoreRes != 1 : print "Error"
265 else : print "OK"
266
267 print "Displaying Scalar Map.................",
268 myView1.DisplayOnly(scalarmap1)
269 print "OK"
270
271 print "Restoring third view parameters.......",
272 aRestoreRes = myView1.RestoreViewParams(aViewParamsName3)
273 if aRestoreRes != 1 : print "Error"
274 else : print "OK"
275
276 print "Displaying Cut Planes.................",
277 myView1.DisplayOnly(cutplanes1)
278 print "OK"
279
280 #%====================Stage8: Changing of saved session====================%
281
282 print "**** Stage8: Changing of saved session"
283
284 print "Deleting ViewParams:3,1,2.............",
285 SObj = openedStudy.FindObject(aViewParamsName3)
286 Builder.RemoveObject(SObj)
287 SObj = openedStudy.FindObject(aViewParamsName1)
288 Builder.RemoveObject(SObj)
289 SObj = openedStudy.FindObject(aViewParamsName2)
290 Builder.RemoveObject(SObj)
291 print "OK"
292
293 SObjList2 = openedStudy.FindObjectByName(aViewParamsName1, "VISU")
294 print "FindObjectByName(aViewParamsName1, VISU) returned ", len(SObjList2), " objects"
295
296 print "Zooming trihedron.....................",
297 aScale = myView.GetParallelScale()
298 myView1.SetParallelScale(aScale*2)
299 myView1.Update()
300 print "OK"
301
302 print "Rotating trihedron....................",
303 aPoint = (200,40,-40)
304 myView1.SetPointOfView(aPoint) 
305 print "OK"
306
307 print "Saving view parameters................",
308 aSaveRes = myView1.SaveViewParams(aViewParamsName1)
309 if aSaveRes != 1 : print "Error"
310 else : print "OK"
311
312 print "Renaming ViewParams:1.................",
313 SObj = openedStudy.FindObject(aViewParamsName1)
314 SObj.Name = "New_view"
315 print "OK"
316
317 print "Setting scaling.......................",
318 #Define parameters of scaling:
319 myXParam = 4
320 myYParam = 4
321 myZParam = 8
322
323 myXAxis = VISU.View3D.XAxis
324 myYAxis = VISU.View3D.YAxis
325 myZAxis = VISU.View3D.ZAxis
326
327 myView1.ScaleView(myXAxis,myXParam)
328 myView1.ScaleView(myYAxis,myYParam)
329 myView1.ScaleView(myZAxis,myZParam)
330 print "OK"
331
332 myView1.FitAll()
333
334 print "Saving view parameters................",
335 aSaveRes = myView1.SaveViewParams(aViewParamsName2)
336 if aSaveRes != 1 : print "Error"
337 else : print "OK"
338
339 print "Restoring first view parameters.......",
340 aRestoreRes = myView1.RestoreViewParams(aViewParamsName1)
341 if aSaveRes != 1 : print "Error"
342 else : print "OK"
343
344 print "Restoring second view parameters......",
345 aRestoreRes = myView1.RestoreViewParams(aViewParamsName2)
346 if aRestoreRes != 1 : print "Error"
347 else : print "OK"
348