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
26 from visu_gui import *
27 from time import sleep
31 myVisu.SetCurrentStudy(salome.myStudy)
33 myViewManager = myVisu.GetViewManager()
35 ################################################
38 myFieldName = "VITESSE";
40 aMeshName ="LE VOLUME"
44 medFile = os.path.join(os.getenv('DATA_DIR'), 'MedFiles', medFile)
45 myResult = myVisu.ImportFile(medFile)
47 ################################################
49 myView1 = myViewManager.Create3DView()
50 print "myView1 = myViewManager.Create3DView()"
51 myView1.SetTitle("The window will be soon destroyed!")
54 print "myView1.Maximize()"
57 print "myView1.Restore()"
60 print "myView1.Minimize()"
64 myViewManager.Destroy(myView1)
65 print "myViewManager.Destroy(myView1)"
67 ################################################
69 myView2 = myViewManager.Create3DView()
70 print "myView2 = myViewManager.Create3DView()"
71 myView2.SetTitle("The window to display Scalar Map")
73 aColor = SALOMEDS.Color(0.0,0.3,1.0)
74 print "aColor = SALOMEDS.Color(0.0,0.3,1.0)"
75 myView2.SetBackground(aColor)
76 print "myView2.SetBackground(aColor)"
78 aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
79 print "myVisu.ScalarMapOnField(...)"
81 myView2.Display(aScalarMap);
82 print "myView2.Display(aScalarMap)"
84 myView2.SetFocalPoint([0,0,0])
85 print "myView2.SetFocalPoint([0,0,0])"
86 myView2.SetParallelScale(2)
87 print "myView2.SetParallelScale(2)"
90 print "myView3.FitAll"
94 ################################################
96 myView3 = myViewManager.Create3DView()
97 print "myView3 = myViewManager.Create3DView()"
98 myView3.SetTitle("The window to display Cut Planes")
101 print "myView3.SplitRight()"
103 aColor = SALOMEDS.Color(0.0,0.7,0.0)
104 print "aColor = SALOMEDS.Color(0.0,0.7,0.0)"
105 myView3.SetBackground(aColor)
106 print "myView3.SetBackground(aColor)"
108 aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
109 print "myVisu.CutPlanesOnField(...)"
110 aCutPlanes.SetOrientation(VISU.CutPlanes.XY,0,0)
111 print "aCutPlanes.SetOrientation(...)"
113 myView3.DisplayOnly(aCutPlanes);
114 print "myView3.DisplayOnly(aCutPlanes)"
116 aPoint = myView3.GetPointOfView()
117 aPoint[0] = aPoint[0] + 10
118 myView3.SetPointOfView(aPoint)
119 print "myView3.SetPointOfView(...)"
120 myView3.ScaleView(VISU.View3D.YAxis,10.0)
121 myView3.ScaleView(VISU.View3D.XAxis,3.0)
122 print "myView3.ScaleView(...)"
126 myView3.SaveViewParams('AAA')
127 print "myView3.SaveViewParams('AAA')"
129 myView3.RemoveScale()
130 print "myView3.RemoveScale()"
133 print "myView3.Update()"
135 print "myView3.FitAll()"
139 ################################################
141 myView4 = myViewManager.Create3DView()
142 print "myView4 = myViewManager.Create3DView()"
143 myView4.SetTitle("The window to display Iso Surfaces")
145 aColor = SALOMEDS.Color(1.0,0.7,0.0)
146 print "aColor = SALOMEDS.Color(1.0,0.7,0.0)"
147 myView4.SetBackground(aColor)
148 print "myView4.SetBackground(aColor)"
150 aIsoSurfaces = myVisu.IsoSurfacesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
151 print "aIsoSurfaces = myVisu.IsoSurfacesOnField(...)"
152 aIsoSurfaces.SetNbSurfaces(10)
153 print "aIsoSurfaces.SetNbSurfaces(10)"
155 myView4.DisplayOnly(aIsoSurfaces)
156 print "myView4.DisplayOnly(aIsoSurfaces)"
159 print "myView4.FitAll()"
163 ################################################
165 myView5 = myViewManager.Create3DView()
166 print "myView5 = myViewManager.Create3DView()"
167 myView5.SetTitle("The window to display Cut Lines")
169 myView5.SplitBottom()
170 print "myView5.SplitBottom()"
172 aColor = SALOMEDS.Color(0.7,0.7,0.7)
173 print "aColor = SALOMEDS.Color(0.7,0.7,0.7)"
174 myView5.SetBackground(aColor)
175 print "myView5.SetBackground(aColor)"
177 aCutLines = myVisu.CutLinesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
178 print "aCutLines = myVisu.CutLinesOnField(...)"
179 aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)
180 print "aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)"
181 aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)
182 print "aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)"
184 myView5.DisplayOnly(aCutLines)
185 print "myView5.DisplayOnly(aCutLines)"
187 print "myView5.FitAll()"
191 ################################################
193 myView6 = myViewManager.CreateXYPlot()
194 print "myView6 = myViewManager.CreateXYPlot()"
195 myView6.SetTitle("The window to display curves")
197 aSObj = myStudy.FindObjectIOR(aCutLines.GetID())
198 aTable = myVisu.CreateTable( aSObj.GetID() )
199 print "aTable = myVisu.CreateTable(...)"
201 aContainer = myVisu.CreateContainer()
202 print "aContainer = myVisu.CreateContainer(...)"
204 aNbCurve = aTable.GetNbRows() - 1
205 for i in range(2,aNbCurve):
206 aCurve = myVisu.CreateCurve( aTable, 1, i )
207 print "myVisu.CreateCurve(aTable, 1, %d)" % i
208 aContainer.AddCurve(aCurve)
211 myView6.Display(aContainer)
212 print "myView6.Display(aContainer)"
216 ################################################
218 myView7 = myViewManager.Create3DView()
219 print "myView7 = myViewManager.Create3DView()"
220 myView7.SetTitle("The window to display Cut Segment")
222 aCutSegment = myVisu.CutSegmentOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
223 print "aCutSegment = myVisu.CutSegmentOnField(...)"
224 aCutSegment.SetPoint1(0.0,0.0,0.0)
225 print "aCutSegment.SetPoint1(0.0,0.0,0.0)"
226 aCutSegment.SetPoint2(0.4,0.05,1.0)
227 print "aCutSegment.SetPoint2(0.4,0.05,1.0)"
229 myView7.DisplayOnly(aCutSegment)
230 print "myView7.DisplayOnly(aCutSegment)"
233 print "myView7.FitAll()"
237 ################################################
239 myView4.Attract(myView2)
240 print "myView4.Attract(myView2)"
245 print "myView6.OnTop()"