VTK
dox
Rendering
OSPRay
vtkOSPRayLightNode.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkOSPRayLightNode.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
=========================================================================*/
22
#ifndef vtkOSPRayLightNode_h
23
#define vtkOSPRayLightNode_h
24
25
#include "vtkRenderingOSPRayModule.h"
// For export macro
26
#include "
vtkLightNode.h
"
27
28
#include "ospray/ospray.h"
// for ospray handle types
29
30
#include <string>
// for std::string
31
32
class
vtkInformationDoubleKey
;
33
class
vtkInformationIntegerKey
;
34
class
vtkLight
;
35
class
vtkOSPRayRendererNode
;
36
37
class
VTKRENDERINGOSPRAY_EXPORT
vtkOSPRayLightNode
:
38
public
vtkLightNode
39
{
40
public
:
41
static
vtkOSPRayLightNode
*
New
();
42
vtkTypeMacro(
vtkOSPRayLightNode
,
vtkLightNode
);
43
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
44
48
virtual
void
Render
(
bool
prepass)
override
;
49
51
55
static
void
SetLightScale(
double
s);
56
static
double
GetLightScale();
58
59
//state beyond rendering core...
60
66
static
vtkInformationIntegerKey
* IS_AMBIENT();
67
69
72
static
void
SetIsAmbient(
int
,
vtkLight
*);
73
static
int
GetIsAmbient(
vtkLight
*);
75
80
static
vtkInformationDoubleKey
* RADIUS();
81
83
86
static
void
SetRadius(
double
,
vtkLight
*);
87
static
double
GetRadius(
vtkLight
*);
89
93
static
OSPLight NewLight(
vtkOSPRayRendererNode
*orn,
94
OSPRenderer oRenderer,
95
const
std::string
& lightType);
96
97
protected
:
98
vtkOSPRayLightNode
();
99
~
vtkOSPRayLightNode
();
100
101
private
:
102
vtkOSPRayLightNode
(
const
vtkOSPRayLightNode
&) =
delete
;
103
void
operator=(
const
vtkOSPRayLightNode
&) =
delete
;
104
105
static
double
LightScale;
106
void
*OLight;
107
};
108
109
#endif
vtkOSPRayRendererNode
links vtkRenderers to OSPRay
Definition:
vtkOSPRayRendererNode.h:41
vtkOSPRayLightNode
links vtkLights to OSPRay
Definition:
vtkOSPRayLightNode.h:37
vtkLight
a virtual light for 3D rendering
Definition:
vtkLight.h:56
vtkLightNode
vtkViewNode specialized for vtkLights
Definition:
vtkLightNode.h:28
vtkLightNode::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkInformationDoubleKey
Key for double values in vtkInformation.
Definition:
vtkInformationDoubleKey.h:31
vtkLightNode.h
vtkInformationIntegerKey
Key for integer values in vtkInformation.
Definition:
vtkInformationIntegerKey.h:31
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:33
vtkViewNode::Render
virtual void Render(bool)
Makes calls to make self visible.
Definition:
vtkViewNode.h:64
vtkX3D::string
Definition:
vtkX3D.h:490
vtkLightNode::New
static vtkLightNode * New()
Generated by
1.8.16