VTK  9.3.0
vtkSkybox.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
22#ifndef vtkSkybox_h
23#define vtkSkybox_h
24
25#include "vtkActor.h"
26#include "vtkRenderingCoreModule.h" // For export macro
27
28VTK_ABI_NAMESPACE_BEGIN
29class VTKRENDERINGCORE_EXPORT vtkSkybox : public vtkActor
30{
31public:
32 static vtkSkybox* New();
33 vtkTypeMacro(vtkSkybox, vtkActor);
34 void PrintSelf(ostream& os, vtkIndent indent) override;
35
40 using Superclass::GetBounds;
41 double* GetBounds() override;
42
44
48 {
52 StereoSphere
53 };
54 vtkGetMacro(Projection, int);
55 vtkSetMacro(Projection, int);
56 void SetProjectionToCube() { this->SetProjection(vtkSkybox::Cube); }
57 void SetProjectionToSphere() { this->SetProjection(vtkSkybox::Sphere); }
59 void SetProjectionToFloor() { this->SetProjection(vtkSkybox::Floor); }
61
63
66 vtkSetVector4Macro(FloorPlane, float);
67 vtkGetVector4Macro(FloorPlane, float);
68 vtkSetVector3Macro(FloorRight, float);
69 vtkGetVector3Macro(FloorRight, float);
71
73
78 vtkGetMacro(GammaCorrect, bool);
79 vtkSetMacro(GammaCorrect, bool);
80 vtkBooleanMacro(GammaCorrect, bool);
82
83protected:
85 ~vtkSkybox() override;
86
88 float FloorPlane[4];
89 float FloorRight[3];
90
91 bool GammaCorrect = false;
92
93private:
94 vtkSkybox(const vtkSkybox&) = delete;
95 void operator=(const vtkSkybox&) = delete;
96};
97
98VTK_ABI_NAMESPACE_END
99#endif // vtkSkybox_h
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:50
a simple class to control print indentation
Definition vtkIndent.h:38
Renders a skybox environment.
Definition vtkSkybox.h:30
double * GetBounds() override
Return a reference to the Prop3D's composite transform.
static vtkSkybox * New()
void SetProjectionToStereoSphere()
Set/Get the projection to be used.
Definition vtkSkybox.h:58
Projection
Set/Get the projection to be used.
Definition vtkSkybox.h:48
@ StereoSphere
Definition vtkSkybox.h:52
~vtkSkybox() override
void SetProjectionToCube()
Set/Get the projection to be used.
Definition vtkSkybox.h:56
int Projection
Definition vtkSkybox.h:87
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetProjectionToFloor()
Set/Get the projection to be used.
Definition vtkSkybox.h:59
void SetProjectionToSphere()
Set/Get the projection to be used.
Definition vtkSkybox.h:57