VTK  9.0.1
vtkSkybox.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSkybox.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 =========================================================================*/
22 #ifndef vtkSkybox_h
23 #define vtkSkybox_h
24 
25 #include "vtkActor.h"
26 #include "vtkRenderingCoreModule.h" // For export macro
27 
28 class VTKRENDERINGCORE_EXPORT vtkSkybox : public vtkActor
29 {
30 public:
31  static vtkSkybox* New();
32  vtkTypeMacro(vtkSkybox, vtkActor);
33  void PrintSelf(ostream& os, vtkIndent indent) override;
34 
40  double* GetBounds() override;
41 
43 
47  {
51  StereoSphere
52  };
53  vtkGetMacro(Projection, int);
54  vtkSetMacro(Projection, int);
55  void SetProjectionToCube() { this->SetProjection(vtkSkybox::Cube); }
56  void SetProjectionToSphere() { this->SetProjection(vtkSkybox::Sphere); }
57  void SetProjectionToStereoSphere() { this->SetProjection(vtkSkybox::StereoSphere); }
58  void SetProjectionToFloor() { this->SetProjection(vtkSkybox::Floor); }
60 
62 
65  vtkSetVector4Macro(FloorPlane, float);
66  vtkGetVector4Macro(FloorPlane, float);
67  vtkSetVector3Macro(FloorRight, float);
68  vtkGetVector3Macro(FloorRight, float);
70 
71 protected:
73  ~vtkSkybox() override;
74 
76  float FloorPlane[4];
77  float FloorRight[3];
78 
79 private:
80  vtkSkybox(const vtkSkybox&) = delete;
81  void operator=(const vtkSkybox&) = delete;
82 };
83 
84 #endif // vtkSkybox_h
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:46
a simple class to control print indentation
Definition: vtkIndent.h:34
double * GetBounds() override=0
Get the bounds for this Prop as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
Renders a skybox environment.
Definition: vtkSkybox.h:29
void SetProjectionToStereoSphere()
Definition: vtkSkybox.h:57
Projection
Set/Get the projection to be used.
Definition: vtkSkybox.h:47
@ StereoSphere
Definition: vtkSkybox.h:51
~vtkSkybox() override
void SetProjectionToCube()
Definition: vtkSkybox.h:55
int Projection
Definition: vtkSkybox.h:75
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double * GetBounds() override
Get the bounds for this Prop as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
void SetProjectionToFloor()
Definition: vtkSkybox.h:58
static vtkSkybox * New()
void SetProjectionToSphere()
Definition: vtkSkybox.h:56