VTK  9.1.0
vtkExternalOpenGLRenderer.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkExternalOpenGLRenderer.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=========================================================================*/
33#ifndef vtkExternalOpenGLRenderer_h
34#define vtkExternalOpenGLRenderer_h
35
36#include "vtkOpenGLRenderer.h"
37#include "vtkRenderingExternalModule.h" // For export macro
38
39// Forward declarations
42
43class VTKRENDERINGEXTERNAL_EXPORT vtkExternalOpenGLRenderer : public vtkOpenGLRenderer
44{
45public:
48 void PrintSelf(ostream& os, vtkIndent indent) override;
49
53 void Render(void) override;
54
59 vtkCamera* MakeCamera() override;
60
65
70
75
82 vtkGetMacro(PreserveGLCameraMatrices, vtkTypeBool);
83 vtkSetMacro(PreserveGLCameraMatrices, vtkTypeBool);
84 vtkBooleanMacro(PreserveGLCameraMatrices, vtkTypeBool);
85
91 vtkGetMacro(PreserveGLLights, vtkTypeBool);
92 vtkSetMacro(PreserveGLLights, vtkTypeBool);
93 vtkBooleanMacro(PreserveGLLights, vtkTypeBool);
94
95protected:
98
105
112
115
117
118private:
120 void operator=(const vtkExternalOpenGLRenderer&) = delete;
121};
122
123#endif // vtkExternalOpenGLRenderer_h
a virtual camera for 3D rendering
Definition: vtkCamera.h:155
a virtual light object for tweaking existing lights in an external 3D rendering context
virtual void RemoveExternalLight(vtkExternalLight *)
Remove an external light from the list of external lights.
void SynchronizeGLCameraMatrices()
Copy the current OpenGL GL_MODELVIEW_MATRIX and GL_PROJECTION_MATRIX to the active VTK camera before ...
vtkCamera * MakeCamera() override
Create a new Camera sutible for use with this type of Renderer.
~vtkExternalOpenGLRenderer() override
virtual void AddExternalLight(vtkExternalLight *)
Add an external light to the list of external lights.
static vtkExternalOpenGLRenderer * New()
virtual void RemoveAllExternalLights()
Remove all external lights.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Render(void) override
Synchronize camera and light parameters.
void SynchronizeGLLights()
Query existing GL lights before each render call and tweak them to match the external lights collecti...
a simple class to control print indentation
Definition: vtkIndent.h:113
an ordered list of lights
OpenGL renderer.
int vtkTypeBool
Definition: vtkABI.h:69