36#include "vtkRenderingCoreModule.h"
40VTK_ABI_NAMESPACE_BEGIN
45#define VTK_LIGHT_TYPE_HEADLIGHT 1
46#define VTK_LIGHT_TYPE_CAMERA_LIGHT 2
47#define VTK_LIGHT_TYPE_SCENE_LIGHT 3
88 vtkSetVector3Macro(AmbientColor,
double);
89 vtkGetVectorMacro(AmbientColor,
double, 3);
90 vtkSetVector3Macro(DiffuseColor,
double);
91 vtkGetVectorMacro(DiffuseColor,
double, 3);
92 vtkSetVector3Macro(SpecularColor,
double);
93 vtkGetVectorMacro(SpecularColor,
double, 3);
106 vtkSetVector3Macro(Position,
double);
107 vtkGetVectorMacro(Position,
double, 3);
119 vtkSetVector3Macro(FocalPoint,
double);
120 vtkGetVectorMacro(FocalPoint,
double, 3);
128 vtkSetMacro(Intensity,
double);
129 vtkGetMacro(Intensity,
double);
154 vtkSetClampMacro(Exponent,
double, 0.0, 128.0);
155 vtkGetMacro(Exponent,
double);
166 vtkSetMacro(ConeAngle,
double);
167 vtkGetMacro(ConeAngle,
double);
175 vtkSetVector3Macro(AttenuationValues,
double);
176 vtkGetVectorMacro(AttenuationValues,
double, 3);
204 void GetTransformedFocalPoint(
double& x,
double& y,
double& z);
205 void GetTransformedFocalPoint(
double a[3]);
212 void TransformPoint(
double a[3],
double b[3]);
217 void TransformVector(
double a[3],
double b[3]);
226 void SetDirectionAngle(
double elevation,
double azimuth);
255 vtkGetMacro(LightType,
int);
278 vtkSetMacro(ShadowAttenuation,
float);
279 vtkGetMacro(ShadowAttenuation,
float);
294 double FocalPoint[3];
297 double AmbientColor[3];
298 double DiffuseColor[3];
299 double SpecularColor[3];
304 double AttenuationValues[3];
306 double TransformedFocalPointReturn[3];
307 double TransformedPositionReturn[3];
316 void operator=(
const vtkLight&) =
delete;
a simple class to control print indentation
a virtual light for 3D rendering
void SetDirectionAngle(const double ang[2])
Set the position and focal point of a light based on elevation and azimuth.
int LightTypeIsHeadlight()
Query the type of the light.
void SetLightTypeToHeadlight()
Set/Get the type of the light.
virtual void SetLightType(int)
Set/Get the type of the light.
virtual void SetTransformMatrix(vtkMatrix4x4 *)
Set/Get the light's transformation matrix.
void SetFocalPoint(const float *a)
Set/Get the point at which the light is shining.
void SetColor(const double a[3])
Set/Get the color of the light.
void GetTransformedPosition(double &x, double &y, double &z)
Get the position of the light, modified by the transformation matrix (if it exists).
int LightTypeIsSceneLight()
Query the type of the light.
double * GetTransformedPosition()
Get the position of the light, modified by the transformation matrix (if it exists).
virtual vtkLight * ShallowClone()
Create a new light object with the same light parameters than the current object (any ivar from the s...
void SetPosition(const float *a)
Set/Get the position of the light.
vtkInformation * Information
virtual void SetInformation(vtkInformation *)
Set/Get the information object associated with the light.
void SetLightTypeToSceneLight()
Set/Get the type of the light.
static vtkLight * New()
Create a light with the focal point at the origin and its position set to (0,0,1).
vtkMatrix4x4 * TransformMatrix
void SetLightTypeToCameraLight()
Set/Get the type of the light.
virtual void Render(vtkRenderer *, int)
Abstract interface to renderer.
void DeepCopy(vtkLight *light)
Perform deep copy of this light.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetColor(double, double, double)
Set/Get the color of the light.
void GetTransformedPosition(double a[3])
Get the position of the light, modified by the transformation matrix (if it exists).
int LightTypeIsCameraLight()
Query the type of the light.
represent and manipulate 4x4 transformation matrices
abstract base class for most VTK objects
abstract specification for renderers
#define VTK_LIGHT_TYPE_SCENE_LIGHT
#define VTK_LIGHT_TYPE_CAMERA_LIGHT
#define VTK_LIGHT_TYPE_HEADLIGHT
#define VTK_SIZEHINT(...)