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

Contents of /trunk/pyvisi/py_src/light.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 837 - (show annotations)
Tue Sep 5 07:23:50 2006 UTC (14 years, 1 month ago) by jongui
File MIME type: text/x-python
File size: 1587 byte(s)
added more epydocs and improved the way colors are specified in the driver.


1 """
2 Class that controls the light and its settings.
3 """
4
5 import vtk
6
7 class Light:
8 """
9 @author: John Ngui
10 @author: Lutz Gross
11 """
12
13 def __init__(self, open_scene):
14 """
15 @type open_scene: L{OpenScene <openscene.OpenScene>} object
16 @param open_scene: Scene in which components are to be added to
17 """
18
19 self.open_scene = open_scene
20 self.vtk_light = None
21
22 self.setLight()
23
24 def setLight(self):
25 """
26 Set up the light and associate it with the renderer.
27 """
28 self.vtk_light = vtk.vtkLight()
29 self.open_scene.getRenderer().AddLight(self.vtk_light)
30
31 def setColor(self, colorMap):
32 """
33 Set the color of the light.
34
35 @type colorMap: L{ColorMap <colormap.ColorMap>} object
36 @param colorMap: Color of the light
37 """
38
39 self.vtk_light.SetColor(colorMap.getR(), colorMap.getG(),
40 colorMap.getB())
41
42
43 def setFocalPoint(self, position):
44 """
45 Set the focal point of the light.
46
47 @type position: L{Position <geo.Position>} object
48 @param position: Light focal point position
49 """
50
51 self.vtk_light.SetFocalPoint(position.getXCoor(), position.getYCoor(),
52 position.getZCoor())
53
54 def setPosition(self, position):
55 """
56 Set the position of the light.
57
58 @type position: L{Position <geo.Position>} object
59 @param position: Light position
60 """
61
62 self.vtk_light.SetPosition(position.getXCoor(), position.getYCoor(),
63 position.getZCoor())
64
65 def setIntensity(self, intensity):
66 """
67 Set the intensity (brightness) of the light.
68
69 @type intensity: Number
70 @param intensity: intensity (brightness) of the light
71 """
72
73 self.vtk_light.SetIntensity(intensity)
74
75
76

  ViewVC Help
Powered by ViewVC 1.1.26