VTK  9.1.0
vtkOpenGLLight.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4 
5  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
6  All rights reserved.
7  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 
13 =========================================================================*/
22 #ifndef vtkOpenGLLight_h
23 #define vtkOpenGLLight_h
24 
25 #include "vtkLight.h"
26 #include "vtkRenderingOpenGL2Module.h" // For export macro
27 
28 class vtkOpenGLRenderer;
29 
30 class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLLight : public vtkLight
31 {
32 public:
33  static vtkOpenGLLight* New();
34  vtkTypeMacro(vtkOpenGLLight, vtkLight);
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
40  void Render(vtkRenderer* ren, int light_index) override;
41 
42 protected:
43  vtkOpenGLLight() = default;
44  ~vtkOpenGLLight() override = default;
45 
46 private:
47  vtkOpenGLLight(const vtkOpenGLLight&) = delete;
48  void operator=(const vtkOpenGLLight&) = delete;
49 };
50 
51 #endif
a simple class to control print indentation
Definition: vtkIndent.h:34
a virtual light for 3D rendering
Definition: vtkLight.h:57
OpenGL light.
~vtkOpenGLLight() override=default
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Render(vtkRenderer *ren, int light_index) override
Implement base class method.
static vtkOpenGLLight * New()
vtkOpenGLLight()=default
OpenGL renderer.
abstract specification for renderers
Definition: vtkRenderer.h:73