VTK  9.7.1
vtkOpenGLLight.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
11 #ifndef vtkOpenGLLight_h
12 #define vtkOpenGLLight_h
13 
14 #include "vtkLight.h"
15 #include "vtkRenderingOpenGL2Module.h" // For export macro
16 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
17 
18 VTK_ABI_NAMESPACE_BEGIN
19 class vtkOpenGLRenderer;
21 
22 class VTKRENDERINGOPENGL2_EXPORT VTK_MARSHALAUTO vtkOpenGLLight : public vtkLight
23 {
24 public:
25  static vtkOpenGLLight* New();
27  static vtkOverrideAttribute* CreateOverrideAttributes();
28  vtkTypeMacro(vtkOpenGLLight, vtkLight);
29  void PrintSelf(ostream& os, vtkIndent indent) override;
30 
31 protected:
32  vtkOpenGLLight() = default;
33  ~vtkOpenGLLight() override = default;
34 
35 private:
36  vtkOpenGLLight(const vtkOpenGLLight&) = delete;
37  void operator=(const vtkOpenGLLight&) = delete;
38 };
39 
40 #define vtkOpenGLLight_OVERRIDE_ATTRIBUTES vtkOpenGLLight::CreateOverrideAttributes()
41 VTK_ABI_NAMESPACE_END
42 #endif
Attribute for vtkObjectFactory overrides.
static vtkLight * New()
Create a light with the focal point at the origin and its position set to (0,0,1).
a simple class to control print indentation
Definition: vtkIndent.h:28
a virtual light for 3D rendering
Definition: vtkLight.h:49
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_NEWINSTANCE
#define VTK_MARSHALAUTO
OpenGL renderer.
OpenGL light.