VTK
9.5.20251213
Rendering
OpenGL2
vtkOutlineGlowPass.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
59
60
#ifndef vtkOutlineGlowPass_h
61
#define vtkOutlineGlowPass_h
62
63
#include "
vtkImageProcessingPass.h
"
64
#include "vtkRenderingOpenGL2Module.h"
// For export macro
65
#include "
vtkWrappingHints.h
"
// For VTK_MARSHALAUTO
66
67
VTK_ABI_NAMESPACE_BEGIN
68
class
vtkOpenGLFramebufferObject
;
69
class
vtkOpenGLHelper
;
70
class
vtkTextureObject
;
71
72
class
VTKRENDERINGOPENGL2_EXPORT
VTK_MARSHALAUTO
vtkOutlineGlowPass
:
public
vtkImageProcessingPass
73
{
74
public
:
75
static
vtkOutlineGlowPass
*
New
();
76
vtkTypeMacro(
vtkOutlineGlowPass
,
vtkImageProcessingPass
);
77
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
78
83
void
Render
(
const
vtkRenderState
* s)
override
;
84
90
void
ReleaseGraphicsResources
(
vtkWindow
* w)
override
;
91
96
vtkGetMacro(
OutlineIntensity
,
float
);
97
vtkSetMacro(
OutlineIntensity
,
float
);
98
99
protected
:
103
vtkOutlineGlowPass
();
104
108
~vtkOutlineGlowPass
()
override
;
109
113
vtkOpenGLFramebufferObject
*
FrameBufferObject
;
114
vtkTextureObject
*
ScenePass
;
// render target for the original scene
115
vtkTextureObject
*
BlurPass1
;
// render target for vertical blur
116
vtkTextureObject
*
BlurPass2
;
// render target for horizontal blur
117
118
// Shader programs
119
vtkOpenGLHelper
*
BlurProgram
;
120
vtkOpenGLHelper
*
UpscaleProgram
;
121
122
// Default value of 3.0 gives a bright outline with a fading edge
123
float
OutlineIntensity
= 3.0f;
124
125
private
:
126
vtkOutlineGlowPass
(
const
vtkOutlineGlowPass
&) =
delete
;
127
void
operator=(
const
vtkOutlineGlowPass
&) =
delete
;
128
};
129
130
VTK_ABI_NAMESPACE_END
131
#endif
/* vtkOutlineGlowPass_h */
vtkImageProcessingPass::vtkImageProcessingPass
vtkImageProcessingPass()
Default constructor.
vtkIndent
a simple class to control print indentation
Definition
vtkIndent.h:108
vtkOpenGLFramebufferObject
Internal class which encapsulates OpenGL FramebufferObject.
Definition
vtkOpenGLFramebufferObject.h:175
vtkOpenGLHelper
Definition
vtkOpenGLHelper.h:21
vtkOutlineGlowPass::BlurPass2
vtkTextureObject * BlurPass2
Definition
vtkOutlineGlowPass.h:116
vtkOutlineGlowPass::UpscaleProgram
vtkOpenGLHelper * UpscaleProgram
Definition
vtkOutlineGlowPass.h:120
vtkOutlineGlowPass::~vtkOutlineGlowPass
~vtkOutlineGlowPass() override
Destructor.
vtkOutlineGlowPass::OutlineIntensity
float OutlineIntensity
Definition
vtkOutlineGlowPass.h:123
vtkOutlineGlowPass::BlurProgram
vtkOpenGLHelper * BlurProgram
Definition
vtkOutlineGlowPass.h:119
vtkOutlineGlowPass::New
static vtkOutlineGlowPass * New()
vtkOutlineGlowPass::vtkOutlineGlowPass
vtkOutlineGlowPass()
Default constructor.
vtkOutlineGlowPass::BlurPass1
vtkTextureObject * BlurPass1
Definition
vtkOutlineGlowPass.h:115
vtkOutlineGlowPass::Render
void Render(const vtkRenderState *s) override
Perform rendering according to a render state s.
vtkOutlineGlowPass::ScenePass
vtkTextureObject * ScenePass
Definition
vtkOutlineGlowPass.h:114
vtkOutlineGlowPass::FrameBufferObject
vtkOpenGLFramebufferObject * FrameBufferObject
Graphics resources.
Definition
vtkOutlineGlowPass.h:113
vtkOutlineGlowPass::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkOutlineGlowPass::ReleaseGraphicsResources
void ReleaseGraphicsResources(vtkWindow *w) override
Release graphics resources and ask components to release their own resources.
vtkRenderState
Context in which a vtkRenderPass will render.
Definition
vtkRenderState.h:30
vtkTextureObject
abstracts an OpenGL texture object.
Definition
vtkTextureObject.h:34
vtkWindow
window superclass for vtkRenderWindow
Definition
vtkWindow.h:48
vtkImageProcessingPass.h
vtkWrappingHints.h
VTK_MARSHALAUTO
#define VTK_MARSHALAUTO
Definition
vtkWrappingHints.h:60
Generated on Sat Dec 13 2025 12:02:18 for VTK by
1.13.2