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
24 # VISU VISU_SWIG : binding of C++ implementation and Python
25 # File : visu_view3d.py
34 from visu_gui import *
38 myVisu.SetCurrentStudy(salome.myStudy)
40 myViewManager = myVisu.GetViewManager();
42 myView = myViewManager.Create3DView();
43 myView.SetTitle("The viewer for Animation")
44 print "myViewManager.Create3DView()"
47 medFile = "TimeStamps.med"
48 myFieldName = "temperature"
50 medFile = os.getenv('DATA_DIR') + '/MedFiles/' + medFile
51 myResult = myVisu.ImportFile(medFile)
53 anAnim = myVisu.CreateAnimation(myView);
54 anAnim.setAnimationMode(VISU.Animation.SUCCESSIVE);
56 aSObj = myStudy.FindObjectIOR(myResult.GetID())
57 aSObj = aSObj.FindSubObject(1)[1]
58 aSObj = aSObj.FindSubObject(3)[1]
59 aSObj = aSObj.FindSubObject(1)[1]
60 print "addField 1 : ", anAnim.addField(aSObj)
62 medFile1 = "TimeStamps.med"
63 myFieldName1 = "pression"
65 medFile1 = os.getenv('DATA_DIR') + '/MedFiles/' + medFile1
66 myResult1 = myVisu.ImportFile(medFile1)
68 aSObj1 = myStudy.FindObjectIOR(myResult1.GetID())
69 aSObj1 = aSObj1.FindSubObject(1)[1]
70 aSObj1 = aSObj1.FindSubObject(3)[1]
71 aSObj1 = aSObj1.FindSubObject(3)[1]
72 print "addField 2 : ", anAnim.addField(aSObj1)
74 print "Generate presentations for ", anAnim.getNbFields(), " fields"
75 for i in range(0,anAnim.getNbFields()):
76 anAnim.setPresentationType(i,VISU.TPLOT3D)
77 anAnim.generatePresentations(i)
79 print "Generate frames"
80 anAnim.generateFrames()
82 print "Start Animation"
84 anAnim.startAnimation()
89 if not anAnim.isRunning():
90 anAnim.stopAnimation()
93 anAnim.publishInStudy()
94 anAnim.saveAnimation()
96 if anAnim.getAnimationMode() == VISU.Animation.SUCCESSIVE:
97 print "End of succcessive animation for 2 fields with presentation type VISU.Animation.SUCCESSIVE"
100 print "The number of fields in animation after clearFields method is", anAnim.getNbFields()