3 \page tui_view_3d_page Viewing 3D presentations
5 Examples of using 3D viewer functionaly from Python:
14 from visu_gui import *
19 # Set the directory containing MED files
20 datadir = os.getenv("DATA_DIR")
22 # Create a temporary 3D view
23 print "Create a temporary 3D view..."
24 myViewManager = myVisu.GetViewManager()
25 myTempView = myViewManager.Create3DView()
26 myTempView.SetTitle("The window will be soon destroyed!")
30 print "Destroy the view..."
31 myViewManager.Destroy(myTempView)
35 medFile = os.path.join(datadir,"MedFiles","fra.med")
36 myResult = myVisu.ImportFile(medFile)
39 meshName = 'LE VOLUME'
40 fieldEntity = VISU.NODE
43 myScalarMap = myVisu.ScalarMapOnField(myResult, meshName, fieldEntity, fieldName, timestampId)
45 # Create a new 3D view
46 print "Create a new 3D view..."
47 myView = myViewManager.Create3DView()
50 print "Set a blue background..."
51 bgColor = SALOMEDS.Color(0.0, 0.3, 1.0)
52 myView.SetBackground(bgColor)
56 # Display the newly created scalar map
57 print "Display the scalar map..."
58 myView.Display(myScalarMap)
66 # Set the point of sight of the camera
67 print "Set the point of sight of the camera..."
68 myView.SetFocalPoint([1,5,10])
77 # Change the scalar map range
78 print "Change the scalar map range..."
79 myScalarMap.SetRange(0.2, 0.9)
83 print "Update the view..."
88 print "Scale the view..."
89 myView.ScaleView(VISU.View3D.YAxis,10.0)
90 myView.ScaleView(VISU.View3D.XAxis,3.0)
94 # Set the camera position in 3D space
95 print "Set the the camera position in 3D space..."
96 myView.SetPointOfView([0.01, 0.05, 0.03])
105 # Store view parameters
107 myView.SaveViewParams(stateName)
110 print "Remove scale..."
114 # Change the background
115 print "Set a dark background..."
116 bgColor = SALOMEDS.Color(0.0, 0.1, 0.2)
117 myView.SetBackground(bgColor)
121 print "Update the view..."
126 print "Set the top view..."
127 myView.SetView(VISU.View3D.TOP)
131 print "Zooming out..."
132 aScale = myView.GetParallelScale()
133 for i in range(0,50) :
134 aScale = aScale + 0.05
135 myView.SetParallelScale(aScale)
141 print "Zooming in..."
142 for i in range(0,75) :
143 aScale = aScale - 0.05
144 myView.SetParallelScale(aScale)
149 # Set the vertical line of the camera in 3D space
150 print "Set the vertical line of the camera in 3D space..."
151 aViewUp = myView.GetViewUp()
152 for i in range(0,40) :
153 aViewUp[0] = aViewUp[0] + 0.1
154 myView.SetViewUp(aViewUp)
160 print "Rotating Y..."
161 aPoint = myView.GetPointOfView()
162 for i in range(0,150) :
163 aPoint[1] = aPoint[1] + 1
164 myView.SetPointOfView(aPoint)
169 # Restore view parameters
170 print "Restore view parameters..."
171 myView.RestoreViewParams(stateName)
174 # Change presentation parameters:
176 # Make the scalar map shrinked
177 print "Make the scalar map shrinked..."
178 myView.SetShrinked(myScalarMap, True)
181 # Set the presentation type
182 print "Set the presentation type to SURFACEFRAME..."
183 myView.SetPresentationType(myScalarMap, VISU.SURFACEFRAME)
186 print "Set the presentation type to FEATURE_EDGES..."
187 myView.SetPresentationType(myScalarMap, VISU.FEATURE_EDGES)
190 # Update the object browser
191 salome.sg.updateObjBrowser(1)
194 <br>Please, see \ref VISU.View3D "View3D interface reference documentation"