1 # -*- coding: iso-8859-1 -*-
2 # Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
4 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
5 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
7 # This library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License.
12 # This library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # Lesser General Public License for more details.
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this library; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
27 from visu_gui import *
28 from time import sleep
32 myVisu.SetCurrentStudy(salome.myStudy)
34 myViewManager = myVisu.GetViewManager()
36 ################################################
39 myFieldName = "VITESSE";
41 aMeshName ="LE VOLUME"
45 medFile = os.path.join(os.getenv('DATA_DIR'), 'MedFiles', medFile)
46 myResult = myVisu.ImportFile(medFile)
48 ################################################
50 myView1 = myViewManager.Create3DView()
51 print "myView1 = myViewManager.Create3DView()"
52 myView1.SetTitle("The window will be soon destroyed!")
55 print "myView1.Maximize()"
58 print "myView1.Restore()"
61 print "myView1.Minimize()"
65 myViewManager.Destroy(myView1)
66 print "myViewManager.Destroy(myView1)"
68 ################################################
70 myView2 = myViewManager.Create3DView()
71 print "myView2 = myViewManager.Create3DView()"
72 myView2.SetTitle("The window to display Scalar Map")
74 aColor = SALOMEDS.Color(0.0,0.3,1.0)
75 print "aColor = SALOMEDS.Color(0.0,0.3,1.0)"
76 myView2.SetBackground(aColor)
77 print "myView2.SetBackground(aColor)"
79 aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
80 print "myVisu.ScalarMapOnField(...)"
82 myView2.Display(aScalarMap);
83 print "myView2.Display(aScalarMap)"
85 myView2.SetFocalPoint([0,0,0])
86 print "myView2.SetFocalPoint([0,0,0])"
87 myView2.SetParallelScale(2)
88 print "myView2.SetParallelScale(2)"
91 print "myView3.FitAll"
95 ################################################
97 myView3 = myViewManager.Create3DView()
98 print "myView3 = myViewManager.Create3DView()"
99 myView3.SetTitle("The window to display Cut Planes")
102 print "myView3.SplitRight()"
104 aColor = SALOMEDS.Color(0.0,0.7,0.0)
105 print "aColor = SALOMEDS.Color(0.0,0.7,0.0)"
106 myView3.SetBackground(aColor)
107 print "myView3.SetBackground(aColor)"
109 aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
110 print "myVisu.CutPlanesOnField(...)"
111 aCutPlanes.SetOrientation(VISU.CutPlanes.XY,0,0)
112 print "aCutPlanes.SetOrientation(...)"
114 myView3.DisplayOnly(aCutPlanes);
115 print "myView3.DisplayOnly(aCutPlanes)"
117 aPoint = myView3.GetPointOfView()
118 aPoint[0] = aPoint[0] + 10
119 myView3.SetPointOfView(aPoint)
120 print "myView3.SetPointOfView(...)"
121 myView3.ScaleView(VISU.View3D.YAxis,10.0)
122 myView3.ScaleView(VISU.View3D.XAxis,3.0)
123 print "myView3.ScaleView(...)"
127 myView3.SaveViewParams('AAA')
128 print "myView3.SaveViewParams('AAA')"
130 myView3.RemoveScale()
131 print "myView3.RemoveScale()"
134 print "myView3.Update()"
136 print "myView3.FitAll()"
140 ################################################
142 myView4 = myViewManager.Create3DView()
143 print "myView4 = myViewManager.Create3DView()"
144 myView4.SetTitle("The window to display Iso Surfaces")
146 aColor = SALOMEDS.Color(1.0,0.7,0.0)
147 print "aColor = SALOMEDS.Color(1.0,0.7,0.0)"
148 myView4.SetBackground(aColor)
149 print "myView4.SetBackground(aColor)"
151 aIsoSurfaces = myVisu.IsoSurfacesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
152 print "aIsoSurfaces = myVisu.IsoSurfacesOnField(...)"
153 aIsoSurfaces.SetNbSurfaces(10)
154 print "aIsoSurfaces.SetNbSurfaces(10)"
156 myView4.DisplayOnly(aIsoSurfaces)
157 print "myView4.DisplayOnly(aIsoSurfaces)"
160 print "myView4.FitAll()"
164 ################################################
166 myView5 = myViewManager.Create3DView()
167 print "myView5 = myViewManager.Create3DView()"
168 myView5.SetTitle("The window to display Cut Lines")
170 myView5.SplitBottom()
171 print "myView5.SplitBottom()"
173 aColor = SALOMEDS.Color(0.7,0.7,0.7)
174 print "aColor = SALOMEDS.Color(0.7,0.7,0.7)"
175 myView5.SetBackground(aColor)
176 print "myView5.SetBackground(aColor)"
178 aCutLines = myVisu.CutLinesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
179 print "aCutLines = myVisu.CutLinesOnField(...)"
180 aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)
181 print "aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)"
182 aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)
183 print "aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)"
185 myView5.DisplayOnly(aCutLines)
186 print "myView5.DisplayOnly(aCutLines)"
188 print "myView5.FitAll()"
192 ################################################
194 myView6 = myViewManager.CreateXYPlot()
195 print "myView6 = myViewManager.CreateXYPlot()"
196 myView6.SetTitle("The window to display curves")
198 aSObj = myStudy.FindObjectIOR(aCutLines.GetID())
199 aTable = myVisu.CreateTable( aSObj.GetID() )
200 print "aTable = myVisu.CreateTable(...)"
202 aContainer = myVisu.CreateContainer()
203 print "aContainer = myVisu.CreateContainer(...)"
205 aNbCurve = aTable.GetNbRows() - 1
206 for i in range(2,aNbCurve):
207 aCurve = myVisu.CreateCurve( aTable, 1, i )
208 print "myVisu.CreateCurve(aTable, 1, %d)" % i
209 aContainer.AddCurve(aCurve)
212 myView6.Display(aContainer)
213 print "myView6.Display(aContainer)"
217 ################################################
219 myView7 = myViewManager.Create3DView()
220 print "myView7 = myViewManager.Create3DView()"
221 myView7.SetTitle("The window to display Cut Segment")
223 aCutSegment = myVisu.CutSegmentOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
224 print "aCutSegment = myVisu.CutSegmentOnField(...)"
225 aCutSegment.SetPoint1(0.0,0.0,0.0)
226 print "aCutSegment.SetPoint1(0.0,0.0,0.0)"
227 aCutSegment.SetPoint2(0.4,0.05,1.0)
228 print "aCutSegment.SetPoint2(0.4,0.05,1.0)"
230 myView7.DisplayOnly(aCutSegment)
231 print "myView7.DisplayOnly(aCutSegment)"
234 print "myView7.FitAll()"
238 ################################################
240 myView4.Attract(myView2)
241 print "myView4.Attract(myView2)"
246 print "myView6.OnTop()"