VTK
vtkExternalLight.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExternalLight.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
54 #ifndef vtkExternalLight_h
55 #define vtkExternalLight_h
56 
57 #include "vtkRenderingExternalModule.h" // For export macro
58 #include "vtkLight.h"
59 
60 class VTKRENDERINGEXTERNAL_EXPORT vtkExternalLight : public vtkLight
61 {
62 public:
63  vtkTypeMacro(vtkExternalLight, vtkLight);
64  void PrintSelf(ostream& os, vtkIndent indent);
65 
73  static vtkExternalLight *New();
74 
76  {
77  INDIVIDUAL_PARAMS = 0, // default
78  ALL_PARAMS = 1
79  };
80 
82 
84  vtkSetMacro(LightIndex, int);
85  vtkGetMacro(LightIndex, int);
87 
89 
97  vtkSetMacro(ReplaceMode, int);
98  vtkGetMacro(ReplaceMode, int);
100 
102  void SetPosition(double, double, double);
103 
105  void SetFocalPoint(double, double, double);
106 
108  void SetAmbientColor(double, double, double);
109 
111  void SetDiffuseColor(double, double, double);
112 
114  void SetSpecularColor(double, double, double);
115 
117  void SetIntensity(double);
118 
120  void SetConeAngle(double);
121 
123  void SetAttenuationValues(double, double, double);
124 
126  void SetExponent(double);
127 
129  void SetPositional(int);
130 
132 
133  vtkGetMacro(PositionSet, bool);
135 
137 
138  vtkGetMacro(FocalPointSet, bool);
140 
142 
143  vtkGetMacro(AmbientColorSet, bool);
145 
147 
148  vtkGetMacro(DiffuseColorSet, bool);
150 
152 
153  vtkGetMacro(SpecularColorSet, bool);
155 
157 
158  vtkGetMacro(IntensitySet, bool);
160 
162 
163  vtkGetMacro(ConeAngleSet, bool);
165 
167 
168  vtkGetMacro(AttenuationValuesSet, bool);
170 
172 
173  vtkGetMacro(ExponentSet, bool);
175 
177 
178  vtkGetMacro(PositionalSet, bool);
180 
181 protected:
183  ~vtkExternalLight();
184 
187 
198 
199 private:
200  vtkExternalLight(const vtkExternalLight&); // Not implemented
201  void operator=(const vtkExternalLight&); // Not implemented
202 };
203 
204 #endif // vtkExternalLight_h
virtual void SetSpecularColor(double, double, double)
virtual void SetDiffuseColor(double, double, double)
virtual void SetExponent(double)
virtual void SetPosition(double, double, double)
a virtual light object for tweaking existing lights in an external 3D rendering context ...
static vtkLight * New()
virtual void SetAmbientColor(double, double, double)
virtual void SetIntensity(double)
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual void SetAttenuationValues(double, double, double)
a virtual light for 3D rendering
Definition: vtkLight.h:60
virtual void SetConeAngle(double)
virtual void SetPositional(int)
void PrintSelf(ostream &os, vtkIndent indent)
virtual void SetFocalPoint(double, double, double)