VTK  9.1.0
vtkVRRay.h
Go to the documentation of this file.
1/*=========================================================================
2
3Program: Visualization Toolkit
4Module: vtkVRRay.h
5
6Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7All rights reserved.
8See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10This software is distributed WITHOUT ANY WARRANTY; without even
11the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12PURPOSE. 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
31class vtkRenderWindow;
33class vtkMatrix4x4;
34
35class VTKRENDERINGVR_EXPORT vtkVRRay : public vtkObject
36{
37public:
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
55protected:
57 ~vtkVRRay() override;
58
59 bool Show;
60 bool Loaded;
61
65
66 float Length;
67 float Color[3];
68
69private:
70 vtkVRRay(const vtkVRRay&) = delete;
71 void operator=(const vtkVRRay&) = delete;
72};
73
74#endif
a simple class to control print indentation
Definition: vtkIndent.h:113
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:145
Allocate and hold a VTK object.
Definition: vtkNew.h:165
abstract base class for most VTK objects
Definition: vtkObject.h:82
OpenGL rendering window.
create a window for renderers to draw into
VR device model.
Definition: vtkVRRay.h:36
static vtkVRRay * New()
vtkOpenGLHelper RayHelper
Definition: vtkVRRay.h:62
vtkOpenGLVertexBufferObject * RayVBO
Definition: vtkVRRay.h:63
void ReleaseGraphicsResources(vtkRenderWindow *win)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkNew< vtkMatrix4x4 > PoseMatrix
Definition: vtkVRRay.h:64
~vtkVRRay() override
bool Loaded
Definition: vtkVRRay.h:60
void Render(vtkOpenGLRenderWindow *win, vtkMatrix4x4 *poseMatrix)
float Length
Definition: vtkVRRay.h:66
bool Show
Definition: vtkVRRay.h:59
bool Build(vtkOpenGLRenderWindow *win)