VTK  9.3.20240424
vtkHiddenLineRemovalPass.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
3
13#ifndef vtkHiddenLineRemovalPass_h
14#define vtkHiddenLineRemovalPass_h
15
16#include "vtkOpenGLRenderPass.h"
17#include "vtkRenderingOpenGL2Module.h" // For export macro
18
19#include <vector> // For std::vector!
20
21VTK_ABI_NAMESPACE_BEGIN
22class vtkProp;
23class vtkViewport;
24
25class VTKRENDERINGOPENGL2_EXPORT vtkHiddenLineRemovalPass : public vtkOpenGLRenderPass
26{
27public:
30 void PrintSelf(ostream& os, vtkIndent indent) override;
31
32 void Render(const vtkRenderState* s) override;
33
37 static bool WireframePropsExist(vtkProp** propArray, int nProps);
38
39protected:
42
43 void SetRepresentation(std::vector<vtkProp*>& props, int repr);
44 int RenderProps(std::vector<vtkProp*>& props, vtkViewport* vp);
45
46private:
48 void operator=(const vtkHiddenLineRemovalPass&) = delete;
49};
50
51VTK_ABI_NAMESPACE_END
52#endif // vtkHiddenLineRemovalPass_h
~vtkHiddenLineRemovalPass() override
static bool WireframePropsExist(vtkProp **propArray, int nProps)
Returns true if any of the nProps in propArray are rendered as wireframe.
static vtkHiddenLineRemovalPass * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetRepresentation(std::vector< vtkProp * > &props, int repr)
int RenderProps(std::vector< vtkProp * > &props, vtkViewport *vp)
void Render(const vtkRenderState *s) override
Perform rendering according to a render state s.
a simple class to control print indentation
Definition vtkIndent.h:108
Abstract render pass with shader modifications.
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:66
Context in which a vtkRenderPass will render.
abstract specification for Viewports
Definition vtkViewport.h:65