1 # T 2.24: Save/retrieve view parameters.
2 # Uses MED file fra.med from ${DATA_DIR}/MedFiles directory.
4 # This script is equivalent to non-regression test script 003/A3
12 medFile = os.getenv("DATA_DIR") + "/MedFiles/fra.med"
14 #%====================Stage1: Creating a new study====================%
16 print "**** Stage1: Creating a new study "
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"
25 #%====================Stage2: Saving view parameters before import====================%
27 print "**** Stage2: Saving view parameters before import "
29 myView = myViewManager.Create3DView()
31 print "Zooming trihedron.....................",
32 aScale = myView.GetParallelScale()
33 myView.SetParallelScale(aScale*4)
36 print "Rotating trihedron....................",
37 aPoint = (100,100,100)
38 myView.SetPointOfView(aPoint)
41 print "Saving view parameters................",
42 aViewParamsName1 = 'ViewParams:1'
43 aSaveRes = myView.SaveViewParams(aViewParamsName1)
44 if aSaveRes != 1 : print "Error"
47 #%====================Stage3: Import MED file====================%
49 print "**** Stage3: Import MED file"
51 print 'Importing "fra.med"...................',
52 myResult = myVisu.ImportFile(medFile)
53 if myResult is None : print "Error"
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"
67 #%====================Stage4: Saving view parameters after import====================%
69 print "**** Stage4: Saving view parameters after import"
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"
77 myView.DisplayOnly(scalarmap)
79 print "Zooming 3D view.......................",
80 aScale = myView.GetParallelScale()
81 myView.SetParallelScale(aScale*2)
84 print "Setting view point(LEFT)..............",
85 myView.SetView((VISU.View3D.LEFT))
88 print "Saving view parameters................",
89 aViewParamsName2 = 'ViewParams:2'
90 aSaveRes = myView.SaveViewParams(aViewParamsName2)
91 if aSaveRes != 1 : print "Error"
94 print "Creating Cut Planes...................",
95 cutplanes = myVisu.CutPlanesOnField(myResult,myMeshName,myNodeEntity,myFieldName,1);
96 if cutplanes is None : print "Error"
98 cutplanes.SetNbPlanes(4)
99 myView.DisplayOnly(cutplanes)
101 print "Setting scaling.......................",
103 #Define parameters of scaling:
108 myXAxis = VISU.View3D.XAxis
109 myYAxis = VISU.View3D.YAxis
110 myZAxis = VISU.View3D.ZAxis
112 myView.ScaleView(myXAxis,myXParam)
113 myView.ScaleView(myYAxis,myYParam)
114 myView.ScaleView(myZAxis,myZParam)
117 print "Rotating 3d view......................",
119 myView.SetPointOfView(aPoint)
122 print "Fit All...............................",
126 print "Saving view parameters................",
127 aViewParamsName3 = 'ViewParams:3'
128 aSaveRes = myView.SaveViewParams(aViewParamsName3)
129 if aSaveRes != 1 : print "Error"
132 #%====================Stage5: Restoring view parameters====================%
134 print "**** Stage5: Restoring view parameters"
136 print "Restoring first view parameters.......",
137 aRestoreRes = myView.RestoreViewParams(aViewParamsName1)
138 if aRestoreRes != 1 : print "Error"
141 print "Restoring second view parameters......",
142 aRestoreRes = myView.RestoreViewParams(aViewParamsName2)
143 if aRestoreRes != 1 : print "Error"
146 print "Displaing only Scalar Map.............",
147 myView.DisplayOnly(scalarmap)
150 print "Displaing only Cut Planes.............",
151 myView.DisplayOnly(cutplanes)
154 print "Restoring third view parameters.......",
155 aRestoreRes = myView.RestoreViewParams(aViewParamsName3)
156 if aRestoreRes != 1 : print "Error"
159 print "Displaing only Mesh...................",
160 myView.DisplayOnly(mesh)
163 print "Displaing only Scalar Map.............",
164 myView.DisplayOnly(scalarmap)
167 print "Displaing only Cut Planes.............",
168 myView.DisplayOnly(cutplanes)
171 #%====================Stage6: Changing of view parameters====================%
173 print "**** Stage6: Changing of view parameters"
175 print "Remove scaling........................",
179 print "Fit All...............................",
183 print "Rotating 3d view......................",
185 myView.SetPointOfView(aPoint)
188 print "Resaving first view parameters........",
189 aSaveRes = myView.SaveViewParams(aViewParamsName1)
190 if aSaveRes != 1 : print "Error"
193 print "Restoring third view parameters.......",
194 aRestoreRes = myView.RestoreViewParams(aViewParamsName3)
195 if aRestoreRes != 1 : print "Error"
198 print "Restoring first view parameters.......",
199 aRestoreRes = myView.RestoreViewParams(aViewParamsName1)
200 if aRestoreRes != 1 : print "Error"
203 print "Displaying only Mesh..................",
204 myView.DisplayOnly(mesh)
207 print "Displaying only Scalar Map............",
208 myView.DisplayOnly(scalarmap)
211 #%====================Stage7: Saving of created view parameters====================%
213 print "**** Stage7: Saving of created view parameters"
215 print "Saving study..........................",
217 str = os.getenv("TmpDir")
221 file = str+'/VISU_005.hdf'
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()
230 print "Opening just saved study..............",
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"
239 print "Restoring first view parameters.......",
240 aRestoreRes = myView1.RestoreViewParams(aViewParamsName1)
241 if aRestoreRes != 1 : print "Error"
244 Builder = openedStudy.NewBuilder()
245 SCom = openedStudy.FindComponent("VISU")
246 Builder.LoadWith(SCom ,myVisu)
248 print "Displaying Scalar Map.................",
249 SObj = openedStudy.FindObject('ScalarMap')
250 scalarmap1 = visu_gui.visu.SObjectToObject(SObj)
251 if scalarmap1 is None : print "Error"
253 myView1.DisplayOnly(scalarmap1)
255 print "Displaying Cut Planes.................",
256 SObj = openedStudy.FindObject('CutPlanes')
257 cutplanes1 = visu_gui.visu.SObjectToObject(SObj)
258 if cutplanes1 is None : print "Error"
260 myView1.DisplayOnly(cutplanes1)
262 print "Restoring second view parameters......",
263 aRestoreRes = myView1.RestoreViewParams(aViewParamsName2)
264 if aRestoreRes != 1 : print "Error"
267 print "Displaying Scalar Map.................",
268 myView1.DisplayOnly(scalarmap1)
271 print "Restoring third view parameters.......",
272 aRestoreRes = myView1.RestoreViewParams(aViewParamsName3)
273 if aRestoreRes != 1 : print "Error"
276 print "Displaying Cut Planes.................",
277 myView1.DisplayOnly(cutplanes1)
280 #%====================Stage8: Changing of saved session====================%
282 print "**** Stage8: Changing of saved session"
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)
293 SObjList2 = openedStudy.FindObjectByName(aViewParamsName1, "VISU")
294 print "FindObjectByName(aViewParamsName1, VISU) returned ", len(SObjList2), " objects"
296 print "Zooming trihedron.....................",
297 aScale = myView.GetParallelScale()
298 myView1.SetParallelScale(aScale*2)
302 print "Rotating trihedron....................",
303 aPoint = (200,40,-40)
304 myView1.SetPointOfView(aPoint)
307 print "Saving view parameters................",
308 aSaveRes = myView1.SaveViewParams(aViewParamsName1)
309 if aSaveRes != 1 : print "Error"
312 print "Renaming ViewParams:1.................",
313 SObj = openedStudy.FindObject(aViewParamsName1)
314 SObj.Name = "New_view"
317 print "Setting scaling.......................",
318 #Define parameters of scaling:
323 myXAxis = VISU.View3D.XAxis
324 myYAxis = VISU.View3D.YAxis
325 myZAxis = VISU.View3D.ZAxis
327 myView1.ScaleView(myXAxis,myXParam)
328 myView1.ScaleView(myYAxis,myYParam)
329 myView1.ScaleView(myZAxis,myZParam)
334 print "Saving view parameters................",
335 aSaveRes = myView1.SaveViewParams(aViewParamsName2)
336 if aSaveRes != 1 : print "Error"
339 print "Restoring first view parameters.......",
340 aRestoreRes = myView1.RestoreViewParams(aViewParamsName1)
341 if aSaveRes != 1 : print "Error"
344 print "Restoring second view parameters......",
345 aRestoreRes = myView1.RestoreViewParams(aViewParamsName2)
346 if aRestoreRes != 1 : print "Error"