VTK  9.4.20250203
vtkOSPRayPolyDataMapperNode.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 vtkOSPRayPolyDataMapperNode_h
11#define vtkOSPRayPolyDataMapperNode_h
12
13#include "vtkOSPRayCache.h" // For common cache infrastructure
15#include "vtkRenderingRayTracingModule.h" // For export macro
16
17VTK_ABI_NAMESPACE_BEGIN
19class vtkPolyData;
20
21class VTKRENDERINGRAYTRACING_EXPORT vtkOSPRayPolyDataMapperNode : public vtkPolyDataMapperNode
22{
23public:
26 void PrintSelf(ostream& os, vtkIndent indent) override;
27
31 void Render(bool prepass) override;
32
36 void Invalidate(bool prepass) override;
37
38protected:
41
42 void ORenderPoly(void* renderer, vtkOSPRayActorNode* aNode, vtkPolyData* poly,
43 double* ambientColor, double* diffuseColor, double opacity, std::string material);
44
45 std::vector<OSPGeometricModel> GeometricModels;
46 std::vector<OSPInstance> Instances;
48
53
54private:
56 void operator=(const vtkOSPRayPolyDataMapperNode&) = delete;
57};
58
59VTK_ABI_NAMESPACE_END
60#endif
a simple class to control print indentation
Definition vtkIndent.h:108
links vtkActor and vtkMapper to OSPRay
links vtkActor and vtkMapper to OSPRay
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ORenderPoly(void *renderer, vtkOSPRayActorNode *aNode, vtkPolyData *poly, double *ambientColor, double *diffuseColor, double opacity, std::string material)
static vtkOSPRayPolyDataMapperNode * New()
void Invalidate(bool prepass) override
Invalidates cached rendering data.
std::vector< OSPGeometricModel > GeometricModels
~vtkOSPRayPolyDataMapperNode() override
void Render(bool prepass) override
Make ospray calls to render me.
std::vector< OSPInstance > Instances
void RenderGeometricModels()
add precomputed ospray geometries to renderer model.
vtkViewNode specialized for vtkPolyDataMappers
concrete dataset represents vertices, lines, polygons, and triangle strips