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=========================================================================*/
36#ifndef vtkExternalOpenGLRenderer_h
37#define vtkExternalOpenGLRenderer_h
38
39#include "vtkOpenGLRenderer.h"
40#include "vtkRenderingExternalModule.h" // For export macro
41
42// Forward declarations
45
46class VTKRENDERINGEXTERNAL_EXPORT vtkExternalOpenGLRenderer : public vtkOpenGLRenderer
47{
48public:
51 void PrintSelf(ostream& os, vtkIndent indent) override;
52
56 void Render(void) override;
57
62 vtkCamera* MakeCamera() override;
63
68
73
78
85 vtkGetMacro(PreserveGLCameraMatrices, vtkTypeBool);
86 vtkSetMacro(PreserveGLCameraMatrices, vtkTypeBool);
87 vtkBooleanMacro(PreserveGLCameraMatrices, vtkTypeBool);
88
94 vtkGetMacro(PreserveGLLights, vtkTypeBool);
95 vtkSetMacro(PreserveGLLights, vtkTypeBool);
96 vtkBooleanMacro(PreserveGLLights, vtkTypeBool);
97
98protected:
101
108
115
118
120
121private:
123 void operator=(const vtkExternalOpenGLRenderer&) = delete;
124};
125
126#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