/[escript]/trunk/pyvisi/py_src/common.py
ViewVC logotype

Annotation of /trunk/pyvisi/py_src/common.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 846 - (hide annotations)
Mon Sep 11 07:40:09 2006 UTC (14 years, 5 months ago) by jongui
File MIME type: text/x-python
File size: 2312 byte(s)
Added modules to diplay image and 2D text. Also added simple drivers for 
creating maps, contours, arrows, image and text.

1 gross 802 """
2 jongui 839 @author: John Ngui
3     @author: Lutz Gross
4 gross 802 """
5    
6 jongui 827 import vtk
7 gross 802
8 jongui 828 class Common:
9 jongui 835 """
10 jongui 839 Class that defines the common operations invoked by the components.
11 jongui 835 """
12 gross 802
13 jongui 845 def __init__(self, scene, data_collector = None):
14 jongui 835 """
15     Initialize all the instance variables.
16    
17 jongui 845 @type scene: L{Scene <scene.Scene>} object
18 jongui 839 @param scene: Scene in which components are to be added to
19 jongui 835 @type data_collector: L{DataCollector <datacollector.DataCollector>}
20     object
21     @param data_collector: Source of data for visualization
22     """
23    
24 jongui 839 self.scene = scene
25 jongui 828 self.data_collector = data_collector
26     self.vtk_mapper = None
27     self.vtk_actor = None
28 gross 802
29 jongui 839 def setMapper(self, component, lut = None):
30 jongui 835 """
31     Set up the mapper and its input.
32    
33     @type component: String
34     @param component: Component to be mapped
35 jongui 839 @type lut: L{BlueToRed <colormap.BlueToRed>} or
36     L{RedToBlue <colormap.RedToBlue>} object
37     @param lut: Color lookup table to be used by the mapper
38 jongui 835 """
39    
40 jongui 827 self.vtk_mapper = vtk.vtkDataSetMapper()
41 jongui 828 eval("self.vtk_mapper.SetInput(%s)" % component)
42 jongui 839
43     if(lut != None):
44     self.vtk_mapper.SetLookupTable(lut.getLut())
45 gross 802
46 jongui 828 def setActor(self):
47 jongui 835 """
48     Set up the actor and its mapper.
49     """
50    
51 jongui 828 self.vtk_actor = vtk.vtkActor()
52     self.vtk_actor.SetMapper(self.vtk_mapper)
53    
54 jongui 845 def setTexture(self, texture):
55 jongui 846 """
56     Set the texture of the actor.
57    
58     @type texture: vtkTexture
59     @param texture: Texture map of the image
60     """
61 jongui 845 self.vtk_actor.SetTexture(texture)
62    
63 jongui 828 def addActor(self):
64 jongui 835 """
65     Add the actor to the renderer.
66     """
67    
68 jongui 839 self.scene.getRenderer().AddActor(self.vtk_actor)
69 jongui 828
70     def setOpacity(self, opacity):
71 jongui 835 """
72     Set the opacity (transparency) of the actor.
73    
74     @type opacity: Number
75     @param opacity: Opacity (transparency) of the actor
76     """
77    
78 jongui 828 self.getProperty().SetOpacity(opacity)
79    
80     def setColor(self, red, green, blue):
81     self.getProperty().SetColor(red, green, blue)
82    
83     def setRepresentation(self, representation):
84 jongui 835 """
85     Set the representation of the actor.
86    
87     @type representation: String
88     @param representation: Representation type (I{i.e. Wireframe})
89     """
90    
91 jongui 828 eval("self.getProperty().SetRepresentationTo%s()" % representation)
92    
93     def getProperty(self):
94 jongui 835 """
95     Return the property of the actor.
96    
97     @rtype: vtkProperty
98     @return: VTK property
99     """
100    
101 jongui 828 return self.vtk_actor.GetProperty()
102    
103 jongui 827
104 jongui 835 class Component:
105     pass

  ViewVC Help
Powered by ViewVC 1.1.26