VTK  9.3.20240419
vtkOpenGLLabeledContourMapper.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
10 #ifndef vtkOpenGLLabeledContourMapper_h
11 #define vtkOpenGLLabeledContourMapper_h
12 
14 #include "vtkRenderingOpenGL2Module.h" // For export macro
15 
16 VTK_ABI_NAMESPACE_BEGIN
17 class vtkMatrix4x4;
18 class vtkOpenGLHelper;
19 
20 class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLLabeledContourMapper : public vtkLabeledContourMapper
21 {
22 public:
25  void PrintSelf(ostream& os, vtkIndent indent) override;
26 
30  void ReleaseGraphicsResources(vtkWindow* win) override;
31 
32 protected:
35 
36  // We override this for compatibility with the OpenGL backend:
37  // The old backend pushes actor matrices onto the matrix stack, so the text
38  // actors already accounted for any transformations on this mapper's actor.
39  // The new backend passes each actor's matrix to the shader individually, and
40  // this mapper's actor matrix doesn't affect the label rendering.
41  bool CreateLabels(vtkActor* actor) override;
42 
43  bool ApplyStencil(vtkRenderer* ren, vtkActor* act) override;
44  bool RemoveStencil(vtkRenderer* ren) override;
45 
48 
49 private:
51  void operator=(const vtkOpenGLLabeledContourMapper&) = delete;
52 };
53 
54 VTK_ABI_NAMESPACE_END
55 #endif
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:151
a simple class to control print indentation
Definition: vtkIndent.h:108
Draw labeled isolines.
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:141
vtkOpenGLLabeledContourMapper is an override for vtkLabeledContourMapper that implements stenciling u...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool ApplyStencil(vtkRenderer *ren, vtkActor *act) override
~vtkOpenGLLabeledContourMapper() override
void ReleaseGraphicsResources(vtkWindow *win) override
Release graphics resources.
static vtkOpenGLLabeledContourMapper * New()
bool CreateLabels(vtkActor *actor) override
bool RemoveStencil(vtkRenderer *ren) override
abstract specification for renderers
Definition: vtkRenderer.h:172
window superclass for vtkRenderWindow
Definition: vtkWindow.h:48