Go to the documentation of this file.
50 #include "vtkRenderingCoreModule.h"
58 #define VTK_LIGHT_TYPE_HEADLIGHT 1
59 #define VTK_LIGHT_TYPE_CAMERA_LIGHT 2
60 #define VTK_LIGHT_TYPE_SCENE_LIGHT 3
101 vtkSetVector3Macro(AmbientColor,
double);
102 vtkGetVectorMacro(AmbientColor,
double,3);
103 vtkSetVector3Macro(DiffuseColor,
double);
104 vtkGetVectorMacro(DiffuseColor,
double,3);
105 vtkSetVector3Macro(SpecularColor,
double);
106 vtkGetVectorMacro(SpecularColor,
double,3);
119 vtkSetVector3Macro(Position,
double);
120 vtkGetVectorMacro(Position,
double,3);
132 vtkSetVector3Macro(FocalPoint,
double);
133 vtkGetVectorMacro(FocalPoint,
double,3);
141 vtkSetMacro(Intensity,
double);
142 vtkGetMacro(Intensity,
double);
167 vtkSetClampMacro(Exponent,
double,0.0,128.0);
168 vtkGetMacro(Exponent,
double);
179 vtkSetMacro(ConeAngle,
double);
180 vtkGetMacro(ConeAngle,
double);
188 vtkSetVector3Macro(AttenuationValues,
double);
189 vtkGetVectorMacro(AttenuationValues,
double,3);
217 void GetTransformedFocalPoint(
double &a0,
double &a1,
double &a2);
218 void GetTransformedFocalPoint(
double a[3]);
229 void SetDirectionAngle(
double elevation,
double azimuth);
230 void SetDirectionAngle(const
double ang[2]) {
231 this->SetDirectionAngle(ang[0], ang[1]); };
259 vtkGetMacro(LightType,
int);
285 vtkSetMacro(ShadowAttenuation,
float);
286 vtkGetMacro(ShadowAttenuation,
float);
301 double FocalPoint[3];
304 double AmbientColor[3];
305 double DiffuseColor[3];
306 double SpecularColor[3];
311 double AttenuationValues[3];
313 double TransformedFocalPointReturn[3];
314 double TransformedPositionReturn[3];
323 void operator=(
const vtkLight&) =
delete;
virtual void SetLightType(int)
Set/Get the type of the light.
int LightTypeIsHeadlight()
Query the type of the light.
void SetLightTypeToHeadlight()
a virtual light for 3D rendering
void SetLightTypeToSceneLight()
void DeepCopy(vtkLight *light)
Perform deep copy of this light.
double * GetTransformedPosition()
void SetColor(const double a[3])
virtual void SetTransformMatrix(vtkMatrix4x4 *)
Set/Get the light's transformation matrix.
void SetColor(double, double, double)
abstract base class for most VTK objects
vtkMatrix4x4 * TransformMatrix
static vtkLight * New()
Create a light with the focal point at the origin and its position set to (0,0,1).
void SetFocalPoint(const float *a)
void GetTransformedPosition(double &a0, double &a1, double &a2)
Get the position of the light, modified by the transformation matrix (if it exists).
int LightTypeIsCameraLight()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_LIGHT_TYPE_CAMERA_LIGHT
virtual void SetInformation(vtkInformation *)
#define VTK_SIZEHINT(...)
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
int LightTypeIsSceneLight()
virtual void Render(vtkRenderer *, int)
Abstract interface to renderer.
void SetLightTypeToCameraLight()
abstract specification for renderers
void SetPosition(const float *a)
#define VTK_LIGHT_TYPE_HEADLIGHT
#define VTK_LIGHT_TYPE_SCENE_LIGHT
virtual vtkLight * ShallowClone()
Create a new light object with the same light parameters than the current object (any ivar from the s...
vtkInformation * Information
void GetTransformedPosition(double a[3])