19#ifndef vtkAnariLightNode_h
20#define vtkAnariLightNode_h
23#include "vtkRenderingAnariModule.h"
25VTK_ABI_NAMESPACE_BEGIN
27class vtkAnariLightNodeInternals;
43 void Build(
bool prepass)
override;
51 virtual void Render(
bool prepass)
override;
128 bool LightWasModified()
const;
130 vtkAnariLightNodeInternals* Internals{
nullptr };
virtual void Invalidate(bool prepass) override
Invalidates cached rendering data.
static void SetLightScale(double, vtkLight *)
Convenience method to set/get LIGHT_SCALE on a vtkLight.
static vtkInformationDoubleKey * FALLOFF_ANGLE()
For cone-shaped lights, size (angle in radians) of the region between the rim (of the illumination co...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkInformationDoubleKey * RADIUS()
The radius setting, when > 0.0, produces soft shadows in the path tracer.
static double GetRadius(vtkLight *)
static vtkAnariLightNode * New()
static void SetRadius(double, vtkLight *)
Convenience method to set/get RADIUS on a vtkLight.
static double GetFalloffAngle(vtkLight *)
static double GetLightScale(vtkLight *)
Convenience method to set/get LIGHT_SCALE on a vtkLight.
static void SetFalloffAngle(double, vtkLight *)
Convenience method to set/get FALLOFF_ANGLE on a vtkLight.
static vtkInformationDoubleKey * LIGHT_SCALE()
A global multiplier to all ANARI lights.
void Synchronize(bool prepass) override
Sync ANARICamera parameters with vtkCamera.
virtual void Render(bool prepass) override
Make ANARI calls to render me.
void Build(bool prepass) override
Ensure the right type of ANARICamera object is being held.
static void SetIsAmbient(int, vtkLight *)
Convenience method to set/get IS_AMBIENT on a vtkLight.
static int GetIsAmbient(vtkLight *)
static vtkInformationIntegerKey * IS_AMBIENT()
When present on light, the light acts as an ambient source.
links vtkRenderers to ANARI
a simple class to control print indentation
vtkViewNode specialized for vtkLights
a virtual light for 3D rendering