36#include "vtkRenderingCoreModule.h"
39VTK_ABI_NAMESPACE_BEGIN
44#define VTK_LIGHT_TYPE_HEADLIGHT 1
45#define VTK_LIGHT_TYPE_CAMERA_LIGHT 2
46#define VTK_LIGHT_TYPE_SCENE_LIGHT 3
87 vtkSetVector3Macro(AmbientColor,
double);
88 vtkGetVectorMacro(AmbientColor,
double, 3);
89 vtkSetVector3Macro(DiffuseColor,
double);
90 vtkGetVectorMacro(DiffuseColor,
double, 3);
91 vtkSetVector3Macro(SpecularColor,
double);
92 vtkGetVectorMacro(SpecularColor,
double, 3);
105 vtkSetVector3Macro(Position,
double);
106 vtkGetVectorMacro(Position,
double, 3);
118 vtkSetVector3Macro(FocalPoint,
double);
119 vtkGetVectorMacro(FocalPoint,
double, 3);
127 vtkSetMacro(Intensity,
double);
128 vtkGetMacro(Intensity,
double);
153 vtkSetClampMacro(Exponent,
double, 0.0, 128.0);
154 vtkGetMacro(Exponent,
double);
165 vtkSetMacro(ConeAngle,
double);
166 vtkGetMacro(ConeAngle,
double);
174 vtkSetVector3Macro(AttenuationValues,
double);
175 vtkGetVectorMacro(AttenuationValues,
double, 3);
203 void GetTransformedFocalPoint(
double& x,
double& y,
double& z);
204 void GetTransformedFocalPoint(
double a[3]);
211 void TransformPoint(
double a[3],
double b[3]);
216 void TransformVector(
double a[3],
double b[3]);
225 void SetDirectionAngle(
double elevation,
double azimuth);
254 vtkGetMacro(LightType,
int);
277 vtkSetMacro(ShadowAttenuation,
float);
278 vtkGetMacro(ShadowAttenuation,
float);
293 double FocalPoint[3];
296 double AmbientColor[3];
297 double DiffuseColor[3];
298 double SpecularColor[3];
303 double AttenuationValues[3];
305 double TransformedFocalPointReturn[3];
306 double TransformedPositionReturn[3];
315 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(...)