VTK: Rendering/RayTracing/vtkOSPRayCompositePolyDataMapper2Node.h Source File

| VTK 9.3.1

vtkOSPRayCompositePolyDataMapper2Node.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 vtkOSPRayCompositePolyDataMapper2Node_h
11 #define vtkOSPRayCompositePolyDataMapper2Node_h
12
13 #include "vtkColor.h" // used for ivars
14 #include "vtkDeprecation.h" // For VTK_DEPRECATED_IN_9_3_0
15 #include "vtkOSPRayPolyDataMapperNode.h"
16 #include "vtkRenderingRayTracingModule.h" // For export macro
17 #include <stack> // used for ivars
18
19 VTK_ABI_NAMESPACE_BEGIN
20 class vtkDataObject;
21 class vtkCompositePolyDataMapper2;
22 class vtkOSPRayRendererNode;
23
24 class VTK_DEPRECATED_IN_9_3_0("Use vtkOSPRayCompositePolyDataMapperNode instead")
25 VTKRENDERINGRAYTRACING_EXPORT vtkOSPRayCompositePolyDataMapper2Node
26 : public vtkOSPRayPolyDataMapperNode
27 {
28 public:
29 static vtkOSPRayCompositePolyDataMapper2Node* New();
30 vtkTypeMacro(vtkOSPRayCompositePolyDataMapper2Node, vtkOSPRayPolyDataMapperNode);
31 void PrintSelf(ostream& os, vtkIndent indent) override;
32
36 void Render(bool prepass) override;
37
41 void Invalidate(bool prepass) override;
42
43 protected:
44 vtkOSPRayCompositePolyDataMapper2Node();
45 ~vtkOSPRayCompositePolyDataMapper2Node() override;
46
47 class RenderBlockState
48 {
49 public:
50 std::stack<bool> Visibility;
51 std::stack<double> Opacity;
52 std::stack<vtkColor3d> AmbientColor;
53 std::stack<vtkColor3d> DiffuseColor;
54 std::stack<vtkColor3d> SpecularColor;
55 std::stack<std::string> Material;
56 };
57
58 RenderBlockState BlockState;
59 void RenderBlock(vtkOSPRayRendererNode* orn, vtkCompositePolyDataMapper2* cpdm, vtkActor* actor,
60 vtkDataObject* dobj, unsigned int& flat_index);
61
62 private:
63 vtkOSPRayCompositePolyDataMapper2Node(const vtkOSPRayCompositePolyDataMapper2Node&) = delete;
64 void operator=(const vtkOSPRayCompositePolyDataMapper2Node&) = delete;
65 };
66 VTK_ABI_NAMESPACE_END
67 #endif
vtkActor
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:50
vtkCompositePolyDataMapper2
mapper for composite dataset consisting of polygonal data.
Definition: vtkCompositePolyDataMapper2.h:59
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:64
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:48
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState::AmbientColor
std::stack< vtkColor3d > AmbientColor
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:52
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState::Opacity
std::stack< double > Opacity
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:51
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState::DiffuseColor
std::stack< vtkColor3d > DiffuseColor
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:53
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState::Material
std::stack< std::string > Material
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:55
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState::Visibility
std::stack< bool > Visibility
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:50
vtkOSPRayCompositePolyDataMapper2Node::RenderBlockState::SpecularColor
std::stack< vtkColor3d > SpecularColor
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:54
vtkOSPRayCompositePolyDataMapper2Node
links vtkActor and vtkMapper to OSPRay
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:27
vtkOSPRayCompositePolyDataMapper2Node::~vtkOSPRayCompositePolyDataMapper2Node
~vtkOSPRayCompositePolyDataMapper2Node() override
vtkOSPRayCompositePolyDataMapper2Node::New
static vtkOSPRayCompositePolyDataMapper2Node * New()
vtkOSPRayCompositePolyDataMapper2Node::BlockState
RenderBlockState BlockState
Definition: vtkOSPRayCompositePolyDataMapper2Node.h:58
vtkOSPRayCompositePolyDataMapper2Node::Render
void Render(bool prepass) override
Make ospray calls to render me.
vtkOSPRayCompositePolyDataMapper2Node::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkOSPRayCompositePolyDataMapper2Node::RenderBlock
void RenderBlock(vtkOSPRayRendererNode *orn, vtkCompositePolyDataMapper2 *cpdm, vtkActor *actor, vtkDataObject *dobj, unsigned int &flat_index)
vtkOSPRayCompositePolyDataMapper2Node::vtkOSPRayCompositePolyDataMapper2Node
vtkOSPRayCompositePolyDataMapper2Node()
vtkOSPRayCompositePolyDataMapper2Node::Invalidate
void Invalidate(bool prepass) override
Invalidates cached rendering data.
vtkOSPRayCompositePolyDataMapperNode
links vtkActor and vtkMapper to OSPRay
Definition: vtkOSPRayCompositePolyDataMapperNode.h:25
vtkOSPRayPolyDataMapperNode
links vtkActor and vtkMapper to OSPRay
Definition: vtkOSPRayPolyDataMapperNode.h:22
vtkOSPRayRendererNode
links vtkRenderers to OSPRay
Definition: vtkOSPRayRendererNode.h:42
vtkColor.h
vtkDeprecation.h
VTK_DEPRECATED_IN_9_3_0
#define VTK_DEPRECATED_IN_9_3_0(reason)
Definition: vtkDeprecation.h:99
vtkOSPRayPolyDataMapperNode.h