1 # -*- coding: iso-8859-1 -*-
2 # Copyright (C) 2007-2008 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
25 from visu_gui import *
26 from time import sleep
30 myVisu.SetCurrentStudy(salome.myStudy)
32 myViewManager = myVisu.GetViewManager()
34 ################################################
37 myFieldName = "VITESSE";
39 aMeshName ="LE VOLUME"
43 medFile = os.path.join(os.getenv('DATA_DIR'), 'MedFiles', medFile)
44 myResult = myVisu.ImportFile(medFile)
46 ################################################
48 myView1 = myViewManager.Create3DView()
49 print "myView1 = myViewManager.Create3DView()"
50 myView1.SetTitle("The window will be soon destroyed!")
53 print "myView1.Maximize()"
56 print "myView1.Restore()"
59 print "myView1.Minimize()"
63 myViewManager.Destroy(myView1)
64 print "myViewManager.Destroy(myView1)"
66 ################################################
68 myView2 = myViewManager.Create3DView()
69 print "myView2 = myViewManager.Create3DView()"
70 myView2.SetTitle("The window to display Scalar Map")
72 aColor = SALOMEDS.Color(0.0,0.3,1.0)
73 print "aColor = SALOMEDS.Color(0.0,0.3,1.0)"
74 myView2.SetBackground(aColor)
75 print "myView2.SetBackground(aColor)"
77 aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
78 print "myVisu.ScalarMapOnField(...)"
80 myView2.Display(aScalarMap);
81 print "myView2.Display(aScalarMap)"
83 myView2.SetFocalPoint([0,0,0])
84 print "myView2.SetFocalPoint([0,0,0])"
85 myView2.SetParallelScale(2)
86 print "myView2.SetParallelScale(2)"
89 print "myView3.FitAll"
93 ################################################
95 myView3 = myViewManager.Create3DView()
96 print "myView3 = myViewManager.Create3DView()"
97 myView3.SetTitle("The window to display Cut Planes")
100 print "myView3.SplitRight()"
102 aColor = SALOMEDS.Color(0.0,0.7,0.0)
103 print "aColor = SALOMEDS.Color(0.0,0.7,0.0)"
104 myView3.SetBackground(aColor)
105 print "myView3.SetBackground(aColor)"
107 aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
108 print "myVisu.CutPlanesOnField(...)"
109 aCutPlanes.SetOrientation(VISU.CutPlanes.XY,0,0)
110 print "aCutPlanes.SetOrientation(...)"
112 myView3.DisplayOnly(aCutPlanes);
113 print "myView3.DisplayOnly(aCutPlanes)"
115 aPoint = myView3.GetPointOfView()
116 aPoint[0] = aPoint[0] + 10
117 myView3.SetPointOfView(aPoint)
118 print "myView3.SetPointOfView(...)"
119 myView3.ScaleView(VISU.View3D.YAxis,10.0)
120 myView3.ScaleView(VISU.View3D.XAxis,3.0)
121 print "myView3.ScaleView(...)"
125 myView3.SaveViewParams('AAA')
126 print "myView3.SaveViewParams('AAA')"
128 myView3.RemoveScale()
129 print "myView3.RemoveScale()"
132 print "myView3.Update()"
134 print "myView3.FitAll()"
138 ################################################
140 myView4 = myViewManager.Create3DView()
141 print "myView4 = myViewManager.Create3DView()"
142 myView4.SetTitle("The window to display Iso Surfaces")
144 aColor = SALOMEDS.Color(1.0,0.7,0.0)
145 print "aColor = SALOMEDS.Color(1.0,0.7,0.0)"
146 myView4.SetBackground(aColor)
147 print "myView4.SetBackground(aColor)"
149 aIsoSurfaces = myVisu.IsoSurfacesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
150 print "aIsoSurfaces = myVisu.IsoSurfacesOnField(...)"
151 aIsoSurfaces.SetNbSurfaces(10)
152 print "aIsoSurfaces.SetNbSurfaces(10)"
154 myView4.DisplayOnly(aIsoSurfaces)
155 print "myView4.DisplayOnly(aIsoSurfaces)"
158 print "myView4.FitAll()"
162 ################################################
164 myView5 = myViewManager.Create3DView()
165 print "myView5 = myViewManager.Create3DView()"
166 myView5.SetTitle("The window to display Cut Lines")
168 myView5.SplitBottom()
169 print "myView5.SplitBottom()"
171 aColor = SALOMEDS.Color(0.7,0.7,0.7)
172 print "aColor = SALOMEDS.Color(0.7,0.7,0.7)"
173 myView5.SetBackground(aColor)
174 print "myView5.SetBackground(aColor)"
176 aCutLines = myVisu.CutLinesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
177 print "aCutLines = myVisu.CutLinesOnField(...)"
178 aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)
179 print "aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)"
180 aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)
181 print "aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)"
183 myView5.DisplayOnly(aCutLines)
184 print "myView5.DisplayOnly(aCutLines)"
186 print "myView5.FitAll()"
190 ################################################
192 myView6 = myViewManager.CreateXYPlot()
193 print "myView6 = myViewManager.CreateXYPlot()"
194 myView6.SetTitle("The window to display curves")
196 aSObj = myStudy.FindObjectIOR(aCutLines.GetID())
197 aTable = myVisu.CreateTable( aSObj.GetID() )
198 print "aTable = myVisu.CreateTable(...)"
200 aContainer = myVisu.CreateContainer()
201 print "aContainer = myVisu.CreateContainer(...)"
203 aNbCurve = aTable.GetNbRows() - 1
204 for i in range(2,aNbCurve):
205 aCurve = myVisu.CreateCurve( aTable, 1, i )
206 print "myVisu.CreateCurve(aTable, 1, %d)" % i
207 aContainer.AddCurve(aCurve)
210 myView6.Display(aContainer)
211 print "myView6.Display(aContainer)"
215 ################################################
217 myView7 = myViewManager.Create3DView()
218 print "myView7 = myViewManager.Create3DView()"
219 myView7.SetTitle("The window to display Cut Segment")
221 aCutSegment = myVisu.CutSegmentOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
222 print "aCutSegment = myVisu.CutSegmentOnField(...)"
223 aCutSegment.SetPoint1(0.0,0.0,0.0)
224 print "aCutSegment.SetPoint1(0.0,0.0,0.0)"
225 aCutSegment.SetPoint2(0.4,0.05,1.0)
226 print "aCutSegment.SetPoint2(0.4,0.05,1.0)"
228 myView7.DisplayOnly(aCutSegment)
229 print "myView7.DisplayOnly(aCutSegment)"
232 print "myView7.FitAll()"
236 ################################################
238 myView4.Attract(myView2)
239 print "myView4.Attract(myView2)"
244 print "myView6.OnTop()"