VTK
9.2.6
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Rendering
OpenGL2
vtkSobelGradientMagnitudePass.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkSobelGradientMagnitudePass.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
=========================================================================*/
63
#ifndef vtkSobelGradientMagnitudePass_h
64
#define vtkSobelGradientMagnitudePass_h
65
66
#include "
vtkImageProcessingPass.h
"
67
#include "vtkRenderingOpenGL2Module.h"
// For export macro
68
69
class
vtkDepthPeelingPassLayerList;
// Pimpl
70
class
vtkOpenGLFramebufferObject
;
71
class
vtkOpenGLHelper
;
72
class
vtkOpenGLRenderWindow
;
73
class
vtkTextureObject
;
74
75
class
VTKRENDERINGOPENGL2_EXPORT
vtkSobelGradientMagnitudePass
:
public
vtkImageProcessingPass
76
{
77
public
:
78
static
vtkSobelGradientMagnitudePass
*
New
();
79
vtkTypeMacro(
vtkSobelGradientMagnitudePass
,
vtkImageProcessingPass
);
80
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
81
86
void
Render
(
const
vtkRenderState
* s)
override
;
87
93
void
ReleaseGraphicsResources
(
vtkWindow
* w)
override
;
94
95
protected
:
99
vtkSobelGradientMagnitudePass
();
100
104
~vtkSobelGradientMagnitudePass
()
override
;
105
109
vtkOpenGLFramebufferObject
*
FrameBufferObject
;
110
vtkTextureObject
*
Pass1
;
// render target for the scene
111
vtkTextureObject
*
Gx1
;
// render target 0 for the first shader
112
vtkTextureObject
*
Gy1
;
// render target 1 for the first shader
113
114
// Structures for the various cell types we render.
115
vtkOpenGLHelper
*
Program1
;
// shader to compute Gx1 and Gy1
116
vtkOpenGLHelper
*
Program2
;
// shader to compute |G| from Gx1 and Gy1
117
118
private
:
119
vtkSobelGradientMagnitudePass
(
const
vtkSobelGradientMagnitudePass
&) =
delete
;
120
void
operator=(
const
vtkSobelGradientMagnitudePass
&) =
delete
;
121
};
122
123
#endif
vtkImageProcessingPass
Convenient class for post-processing passes.
Definition
vtkImageProcessingPass.h:39
vtkIndent
a simple class to control print indentation
Definition
vtkIndent.h:40
vtkOpenGLFramebufferObject
Internal class which encapsulates OpenGL FramebufferObject.
Definition
vtkOpenGLFramebufferObject.h:185
vtkOpenGLHelper
Definition
vtkOpenGLHelper.h:31
vtkOpenGLRenderWindow
OpenGL rendering window.
Definition
vtkOpenGLRenderWindow.h:57
vtkRenderState
Context in which a vtkRenderPass will render.
Definition
vtkRenderState.h:41
vtkSobelGradientMagnitudePass
Implement a post-processing edge detection with a Sobel gradient magnitude render pass.
Definition
vtkSobelGradientMagnitudePass.h:76
vtkSobelGradientMagnitudePass::Program2
vtkOpenGLHelper * Program2
Definition
vtkSobelGradientMagnitudePass.h:116
vtkSobelGradientMagnitudePass::vtkSobelGradientMagnitudePass
vtkSobelGradientMagnitudePass()
Default constructor.
vtkSobelGradientMagnitudePass::Render
void Render(const vtkRenderState *s) override
Perform rendering according to a render state s.
vtkSobelGradientMagnitudePass::Program1
vtkOpenGLHelper * Program1
Definition
vtkSobelGradientMagnitudePass.h:115
vtkSobelGradientMagnitudePass::ReleaseGraphicsResources
void ReleaseGraphicsResources(vtkWindow *w) override
Release graphics resources and ask components to release their own resources.
vtkSobelGradientMagnitudePass::FrameBufferObject
vtkOpenGLFramebufferObject * FrameBufferObject
Graphics resources.
Definition
vtkSobelGradientMagnitudePass.h:109
vtkSobelGradientMagnitudePass::~vtkSobelGradientMagnitudePass
~vtkSobelGradientMagnitudePass() override
Destructor.
vtkSobelGradientMagnitudePass::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSobelGradientMagnitudePass::Gx1
vtkTextureObject * Gx1
Definition
vtkSobelGradientMagnitudePass.h:111
vtkSobelGradientMagnitudePass::New
static vtkSobelGradientMagnitudePass * New()
vtkSobelGradientMagnitudePass::Gy1
vtkTextureObject * Gy1
Definition
vtkSobelGradientMagnitudePass.h:112
vtkSobelGradientMagnitudePass::Pass1
vtkTextureObject * Pass1
Definition
vtkSobelGradientMagnitudePass.h:110
vtkTextureObject
abstracts an OpenGL texture object.
Definition
vtkTextureObject.h:44
vtkWindow
window superclass for vtkRenderWindow
Definition
vtkWindow.h:39
vtkImageProcessingPass.h
Generated on Fri Sep 13 2024 21:26:33 for VTK by
1.9.7