VTK
9.7.0
Main Page
Related Pages
Topics
Namespaces
Classes
Files
File List
File Members
Rendering
VR
vtkVRModel.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
12
13
#ifndef vtkVRModel_h
14
#define vtkVRModel_h
15
16
#include "
vtkNew.h
"
// for ivar
17
#include "
vtkObject.h
"
18
#include "
vtkOpenGLHelper.h
"
// ivar
19
#include "vtkRenderingVRModule.h"
// For export macro
20
#include "
vtkWrappingHints.h
"
// For VTK_MARSHALAUTO
21
22
VTK_ABI_NAMESPACE_BEGIN
23
class
vtkMatrix4x4
;
24
class
vtkOpenGLRenderWindow
;
25
class
vtkOpenGLVertexBufferObject
;
26
class
vtkTextureObject
;
27
class
vtkVRRay
;
28
29
class
VTKRENDERINGVR_EXPORT
VTK_MARSHALAUTO
vtkVRModel
:
public
vtkObject
30
{
31
public
:
32
vtkTypeMacro(
vtkVRModel
,
vtkObject
);
33
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
34
35
bool
Build
(
vtkOpenGLRenderWindow
* win);
36
37
void
Render
(
vtkOpenGLRenderWindow
* win,
vtkMatrix4x4
* poseInTrackingCoordinates);
38
39
const
std::string&
GetName
()
const
{
return
this->
ModelName
; }
40
void
SetName
(
const
std::string& modelName) { this->
ModelName
= modelName; }
41
42
// show the model
43
void
SetVisibility
(
bool
v) { this->
Visibility
= v; }
44
bool
GetVisibility
() {
return
this->
Visibility
; }
45
46
// Set Ray parameters
47
void
SetShowRay
(
bool
v);
48
void
SetRayLength
(
double
length);
49
void
SetRayColor
(
double
r,
double
g,
double
b);
50
vtkVRRay
*
GetRay
() {
return
this->
Ray
; }
51
52
void
ReleaseGraphicsResources
(
vtkWindow
* win);
53
54
protected
:
55
vtkVRModel
();
56
~vtkVRModel
()
override
;
57
58
virtual
void
FillModelHelper
() = 0;
59
virtual
void
SetPositionAndTCoords
() = 0;
60
virtual
void
CreateTextureObject
(
vtkOpenGLRenderWindow
* win) = 0;
61
virtual
void
LoadModelAndTexture
(
vtkOpenGLRenderWindow
* win) = 0;
62
63
std::string
ModelName
;
64
65
bool
Visibility
;
66
bool
Loaded
;
67
bool
FailedToLoad
;
68
69
vtkOpenGLHelper
ModelHelper
;
70
vtkOpenGLVertexBufferObject
*
ModelVBO
;
71
vtkNew<vtkTextureObject>
TextureObject
;
72
vtkNew<vtkMatrix4x4>
ModelToProjectionMatrix
;
73
74
// Controller ray
75
vtkNew<vtkVRRay>
Ray
;
76
77
private
:
78
vtkVRModel
(
const
vtkVRModel
&) =
delete
;
79
void
operator=(
const
vtkVRModel
&) =
delete
;
80
};
81
82
VTK_ABI_NAMESPACE_END
83
#endif
vtkIndent
a simple class to control print indentation
Definition
vtkIndent.h:29
vtkMatrix4x4
represent and manipulate 4x4 transformation matrices
Definition
vtkMatrix4x4.h:32
vtkNew
Allocate and hold a VTK object.
Definition
vtkNew.h:59
vtkObject::vtkObject
vtkObject()
vtkOpenGLHelper
Definition
vtkOpenGLHelper.h:21
vtkOpenGLRenderWindow
OpenGL rendering window.
Definition
vtkOpenGLRenderWindow.h:47
vtkOpenGLVertexBufferObject
Definition
vtkOpenGLVertexBufferObject.h:33
vtkTextureObject
In case DepthTextureCompare is true, specify the comparison function in use.
Definition
vtkTextureObject.h:34
vtkVRModel::Render
void Render(vtkOpenGLRenderWindow *win, vtkMatrix4x4 *poseInTrackingCoordinates)
vtkVRModel::SetShowRay
void SetShowRay(bool v)
vtkVRModel::SetPositionAndTCoords
virtual void SetPositionAndTCoords()=0
vtkVRModel::FillModelHelper
virtual void FillModelHelper()=0
vtkVRModel::ModelName
std::string ModelName
Definition
vtkVRModel.h:63
vtkVRModel::Ray
vtkNew< vtkVRRay > Ray
Definition
vtkVRModel.h:75
vtkVRModel::TextureObject
vtkNew< vtkTextureObject > TextureObject
Definition
vtkVRModel.h:71
vtkVRModel::SetRayColor
void SetRayColor(double r, double g, double b)
vtkVRModel::~vtkVRModel
~vtkVRModel() override
vtkVRModel::ModelVBO
vtkOpenGLVertexBufferObject * ModelVBO
Definition
vtkVRModel.h:70
vtkVRModel::vtkVRModel
vtkVRModel()
vtkVRModel::SetVisibility
void SetVisibility(bool v)
Definition
vtkVRModel.h:43
vtkVRModel::Loaded
bool Loaded
Definition
vtkVRModel.h:66
vtkVRModel::FailedToLoad
bool FailedToLoad
Definition
vtkVRModel.h:67
vtkVRModel::ModelToProjectionMatrix
vtkNew< vtkMatrix4x4 > ModelToProjectionMatrix
Definition
vtkVRModel.h:72
vtkVRModel::GetName
const std::string & GetName() const
Definition
vtkVRModel.h:39
vtkVRModel::SetRayLength
void SetRayLength(double length)
vtkVRModel::ModelHelper
vtkOpenGLHelper ModelHelper
Definition
vtkVRModel.h:69
vtkVRModel::Visibility
bool Visibility
Definition
vtkVRModel.h:65
vtkVRModel::LoadModelAndTexture
virtual void LoadModelAndTexture(vtkOpenGLRenderWindow *win)=0
vtkVRModel::GetRay
vtkVRRay * GetRay()
Definition
vtkVRModel.h:50
vtkVRModel::CreateTextureObject
virtual void CreateTextureObject(vtkOpenGLRenderWindow *win)=0
vtkVRModel::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkVRModel::SetName
void SetName(const std::string &modelName)
Definition
vtkVRModel.h:40
vtkVRModel::GetVisibility
bool GetVisibility()
Definition
vtkVRModel.h:44
vtkVRModel::ReleaseGraphicsResources
void ReleaseGraphicsResources(vtkWindow *win)
vtkVRModel::Build
bool Build(vtkOpenGLRenderWindow *win)
vtkVRRay
VR device model.
Definition
vtkVRRay.h:25
vtkWindow
window superclass for vtkRenderWindow
Definition
vtkWindow.h:42
vtkNew.h
vtkObject.h
vtkOpenGLHelper.h
vtkWrappingHints.h
VTK_MARSHALAUTO
#define VTK_MARSHALAUTO
Definition
vtkWrappingHints.h:75
Generated on
for VTK by
1.18.0