VTK
vtkOptiXCompositePolyDataMapper2Node.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOptiXCompositePolyDataMapper2Node.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 =========================================================================*/
22 #ifndef vtkOptiXCompositePolyDataMapper2Node_h
23 #define vtkOptiXCompositePolyDataMapper2Node_h
24 
25 #include "vtkRenderingOptiXModule.h" // For export macro
27 #include "vtkColor.h" // used for ivars
28 #include <stack> // used for ivars
29 
30 class vtkDataObject;
33 
34 class VTKRENDERINGOPTIX_EXPORT vtkOptiXCompositePolyDataMapper2Node :
36 {
37 public:
40  void PrintSelf(ostream& os, vtkIndent indent);
41 
45  void Render(bool prepass) override;
46 
47 protected:
50 
52  {
53  public:
54  std::stack<bool> Visibility;
55  std::stack<double> Opacity;
56  std::stack<vtkColor3d> AmbientColor;
57  std::stack<vtkColor3d> DiffuseColor;
58  std::stack<vtkColor3d> SpecularColor;
59  };
60 
61  void RenderBlock(vtkOptiXRendererNode *orn,
63  vtkActor *actor,
64  vtkDataObject *dobj,
65  unsigned int &flat_index);
66 
68 
69 private:
71  void operator=(const vtkOptiXCompositePolyDataMapper2Node&) = delete;
72 };
73 #endif
vtkOptiXPolyDataMapperNode.h
vtkOptiXCompositePolyDataMapper2Node::RenderBlockState::DiffuseColor
std::stack< vtkColor3d > DiffuseColor
Definition: vtkOptiXCompositePolyDataMapper2Node.h:57
vtkOptiXCompositePolyDataMapper2Node
links vtkActor and vtkMapper to OptiX
Definition: vtkOptiXCompositePolyDataMapper2Node.h:34
vtkOptiXCompositePolyDataMapper2Node::RenderBlockState::Opacity
std::stack< double > Opacity
Definition: vtkOptiXCompositePolyDataMapper2Node.h:55
vtkCompositePolyDataMapper2
mapper for composite dataset consisting of polygonal data.
Definition: vtkCompositePolyDataMapper2.h:44
vtkOptiXPolyDataMapperNode::Render
virtual void Render(bool prepass)
Make OptiX calls for rendering.
vtkOptiXCompositePolyDataMapper2Node::RenderBlockState::Visibility
std::stack< bool > Visibility
Definition: vtkOptiXCompositePolyDataMapper2Node.h:54
vtkOptiXPolyDataMapperNode::New
static vtkOptiXPolyDataMapperNode * New()
vtkColor.h
vtkActor
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:51
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkOptiXCompositePolyDataMapper2Node::RenderBlockState::SpecularColor
std::stack< vtkColor3d > SpecularColor
Definition: vtkOptiXCompositePolyDataMapper2Node.h:58
vtkOptiXCompositePolyDataMapper2Node::RenderBlockState::AmbientColor
std::stack< vtkColor3d > AmbientColor
Definition: vtkOptiXCompositePolyDataMapper2Node.h:56
vtkOptiXRendererNode
links vtkRenderers to OptiX
Definition: vtkOptiXRendererNode.h:50
vtkOptiXPolyDataMapperNode
links vtkActor and vtkMapper to OptiX
Definition: vtkOptiXPolyDataMapperNode.h:33
vtkOptiXCompositePolyDataMapper2Node::RenderBlockState
Definition: vtkOptiXCompositePolyDataMapper2Node.h:51
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:64
vtkOptiXPolyDataMapperNode::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkOptiXCompositePolyDataMapper2Node::BlockState
RenderBlockState BlockState
Definition: vtkOptiXCompositePolyDataMapper2Node.h:67