1 |
""" |
2 |
class that shows a vector field by arrows |
3 |
|
4 |
@var __author__: name of author |
5 |
@var __license__: licence agreement |
6 |
@var __copyright__: copyrights |
7 |
@var __url__: url entry point on documentation |
8 |
@var __version__: version |
9 |
@var __date__: date of the version |
10 |
""" |
11 |
__copyright__=""" Copyright (c) 2006 by ACcESS MNRF |
12 |
http://www.access.edu.au |
13 |
Primary Business: Queensland, Australia""" |
14 |
__license__="""Licensed under the Open Software License version 3.0 |
15 |
http://www.opensource.org/licenses/osl-3.0.php""" |
16 |
__author__="Paul Cochrane, L. Gross" |
17 |
__url__="http://www.iservo.edu.au/esys" |
18 |
__version__="$Revision:$" |
19 |
__date__="$Date:$" |
20 |
|
21 |
import vtk |
22 |
from common import * |
23 |
|
24 |
class Arrows(Common): |
25 |
|
26 |
def __init__(self, open_scene, data_collector): |
27 |
Common.__init__(self, open_scene, data_collector) |
28 |
#self.open_scene = open_scene |
29 |
#self.data_collector = data_collector |
30 |
self.vtk_glyph = None |
31 |
#self.vtk_arrows_mapper = None |
32 |
#self.vtk_arrows_actor = None |
33 |
|
34 |
self.setArrows() |
35 |
#self.setMapper() |
36 |
#self.setActor() |
37 |
|
38 |
Common.setMapper(self, "self.vtk_glyph.GetOutput()") |
39 |
Common.setActor(self) |
40 |
Common.addActor(self) |
41 |
|
42 |
# set up the glyph and use arrows as the source |
43 |
def setArrows(self): |
44 |
vtk_arrows = vtk.vtkArrowSource() |
45 |
|
46 |
self.vtk_glyph = vtk.vtkGlyph3D() |
47 |
self.vtk_glyph.SetInput(self.data_collector.getReader().GetOutput()) |
48 |
self.vtk_glyph.SetSource(vtk_arrows.GetOutput()) |
49 |
self.vtk_glyph.SetVectorModeToUseVector() |
50 |
self.vtk_glyph.SetScaleModeToScaleByVector() |
51 |
self.vtk_glyph.SetColorModeToColorByScalar() |
52 |
self.vtk_glyph.SetScaleFactor(0.2) |
53 |
|
54 |
def setScaleFactor(self, scale_factor): |
55 |
self.vtk_glyph.SetScaleFactor(scale_factor) |
56 |
|
57 |
def setColorMode(self, color_mode): |
58 |
eval("self.vtk_glyph.SetColorModeToColorBy%s()" % color_mode) |
59 |
|
60 |
# set up the mapper and data |
61 |
#def setMapper(self): |
62 |
# self.vtk_arrows_mapper = vtk.vtkPolyDataMapper() |
63 |
# self.vtk_arrows_mapper.SetInput( |
64 |
# self.vtk_glyph.GetOutput()) |
65 |
|
66 |
# set up the actor and add the actor to the scene |
67 |
#def setActor(self): |
68 |
# self.vtk_arrows_actor = vtk.vtkActor() |
69 |
# self.vtk_arrows_actor.SetMapper(self.vtk_arrows_mapper) |
70 |
|
71 |
# self.open_scene.getRenderer().AddActor(self.vtk_arrows_actor) |
72 |
|
73 |
|
74 |
|
75 |
|
76 |
#class ArrowsOnPlane: |
77 |
""" |
78 |
shows a vector field by arrows on a plane |
79 |
""" |
80 |
pass |