VTK  9.1.0
vtkVRRay.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkVRRay.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 vtkVRRay_h
23 #define vtkVRRay_h
24 
25 #include "vtkNew.h" // for ivar
26 #include "vtkObject.h"
27 #include "vtkOpenGLHelper.h" // ivar
28 #include "vtkRenderingVRModule.h" // For export macro
29 
31 class vtkRenderWindow;
33 class vtkMatrix4x4;
34 
35 class VTKRENDERINGVR_EXPORT vtkVRRay : public vtkObject
36 {
37 public:
38  static vtkVRRay* New();
39  vtkTypeMacro(vtkVRRay, vtkObject);
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
43  void Render(vtkOpenGLRenderWindow* win, vtkMatrix4x4* poseMatrix);
44 
45  // show the model
46  vtkSetMacro(Show, bool);
47  vtkGetMacro(Show, bool);
48 
49  vtkSetMacro(Length, float);
50 
51  vtkSetVector3Macro(Color, float);
52 
54 
55 protected:
57  ~vtkVRRay() override;
58 
59  bool Show;
60  bool Loaded;
61 
65 
66  float Length;
67  float Color[3];
68 
69 private:
70  vtkVRRay(const vtkVRRay&) = delete;
71  void operator=(const vtkVRRay&) = delete;
72 };
73 
74 #endif
vtkVRRay::RayHelper
vtkOpenGLHelper RayHelper
Definition: vtkVRRay.h:62
vtkVRRay::RayVBO
vtkOpenGLVertexBufferObject * RayVBO
Definition: vtkVRRay.h:63
vtkX3D::Color
@ Color
Definition: vtkX3D.h:52
vtkOpenGLHelper.h
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:82
vtkVRRay::PoseMatrix
vtkNew< vtkMatrix4x4 > PoseMatrix
Definition: vtkVRRay.h:64
vtkVRRay::New
static vtkVRRay * New()
vtkOpenGLHelper
Definition: vtkOpenGLHelper.h:31
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:113
vtkMatrix4x4
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:145
vtkVRRay::Show
bool Show
Definition: vtkVRRay.h:59
vtkVRRay::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkVRRay::Render
void Render(vtkOpenGLRenderWindow *win, vtkMatrix4x4 *poseMatrix)
vtkOpenGLVertexBufferObject
Definition: vtkOpenGLVertexBufferObject.h:41
vtkNew< vtkMatrix4x4 >
vtkVRRay
VR device model.
Definition: vtkVRRay.h:36
vtkVRRay::Build
bool Build(vtkOpenGLRenderWindow *win)
vtkObject.h
vtkVRRay::~vtkVRRay
~vtkVRRay() override
vtkVRRay::ReleaseGraphicsResources
void ReleaseGraphicsResources(vtkRenderWindow *win)
vtkNew.h
vtkVRRay::Loaded
bool Loaded
Definition: vtkVRRay.h:60
vtkOpenGLRenderWindow
OpenGL rendering window.
Definition: vtkOpenGLRenderWindow.h:83
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:205
vtkVRRay::vtkVRRay
vtkVRRay()
vtkVRRay::Length
float Length
Definition: vtkVRRay.h:66