VTK  9.3.20240919
vtkAnariTestInteractor.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
3// .SECTION Description
4// A common interactor style for the ANARI tests that understands
5// the following key presses.
6// c => switch between ANARI and GL
7// n => focuses view on the next actor and hides all others
8// 2/1 => increase/decrease the number of samples per pixel
9// l => turns on each light in the scene in turn
10// I/i => increase/decrease the global light intensity scale
11// D/d => increase/decrease the number of ambient occlusion samples
12// t => change renderer type: default, scivis, pathtracer
13// b => TODO: Change other parameters
14
15#ifndef vtkAnariTestInteractor_h
16#define vtkAnariTestInteractor_h
17
19
20#include <string>
21#include <vector>
22
23class vtkCommand;
24class vtkRenderer;
25class vtkRenderPass;
26class vtkRenderWindow;
27
28// Define interaction style
30{
31private:
32 vtkRenderer* GLRenderer;
35 int VisibleActor;
36 int VisibleLight;
37 vtkCommand* Looper;
38
39public:
45 virtual void OnKeyPress() override;
46
47 static void AddName(const char* name);
48
49 // access to a progressive rendering automator
51};
52
53#endif
vtkCommand * GetLooper(vtkRenderWindow *)
static void AddName(const char *name)
void SetPipelineControlPoints(vtkRenderer *g, vtkRenderPass *_O, vtkRenderPass *_G)
virtual void OnKeyPress() override
static vtkAnariTestInteractor * New()
superclass for callback/observer methods
Definition vtkCommand.h:384
interactive manipulation of the camera
Perform part of the rendering of a vtkRenderer.
create a window for renderers to draw into
abstract specification for renderers