VTK
vtkOSPRayActorNode.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOSPRayActorNode.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 vtkOSPRayActorNode_h
23 #define vtkOSPRayActorNode_h
24 
25 #include "vtkRenderingOSPRayModule.h" // For export macro
26 #include "vtkActorNode.h"
27 #include "vtkTimeStamp.h" //for mapper changed time
28 #include "vtkWeakPointer.h" //also for mapper changed time
29 
30 class vtkActor;
32 class vtkDataArray;
37 class vtkMapper;
39 class vtkPolyData;
40 class vtkProperty;
41 class vtkTimeStamp;
42 
43 
44 class VTKRENDERINGOSPRAY_EXPORT vtkOSPRayActorNode :
45  public vtkActorNode
46 {
47 public:
48  static vtkOSPRayActorNode* New();
50  void PrintSelf(ostream& os, vtkIndent indent) override;
51 
56  virtual vtkMTimeType GetMTime() override;
57 
61  static vtkInformationIntegerKey* ENABLE_SCALING();
62 
64 
67  static void SetEnableScaling(int value, vtkActor *);
68  static int GetEnableScaling(vtkActor *);
70 
78  static vtkInformationStringKey* SCALE_ARRAY_NAME();
79 
83  static void SetScaleArrayName(const char *scaleArrayName, vtkActor *);
84 
89  static vtkInformationObjectBaseKey* SCALE_FUNCTION();
90 
94  static void SetScaleFunction(vtkPiecewiseFunction *scaleFunction, vtkActor *);
95 
99  static vtkInformationDoubleKey* LUMINOSITY();
100 
102 
105  static void SetLuminosity(double value, vtkProperty *);
106  static double GetLuminosity(vtkProperty *);
108 
109 protected:
112 
113 private:
114  vtkOSPRayActorNode(const vtkOSPRayActorNode&) = delete;
115  void operator=(const vtkOSPRayActorNode&) = delete;
116 
117  vtkWeakPointer<vtkMapper> LastMapper;
118  vtkTimeStamp MapperChangedTime;
119 };
120 #endif
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:45
Defines a 1D piecewise function.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:300
represent surface properties of a geometric object
Definition: vtkProperty.h:60
static vtkActorNode * New()
record modification and/or execution time
Definition: vtkTimeStamp.h:32
Rendering attributes for a multi-block dataset.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:79
Key for string values in vtkInformation.
links vtkActor and vtkMapper to OSPRay
a simple class to control print indentation
Definition: vtkIndent.h:33
Key for integer values in vtkInformation.
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:48
virtual vtkMTimeType GetMTime()
Return this object&#39;s modified time.
Key for vtkObjectBase values.
vtkViewNode specialized for vtkActors
Definition: vtkActorNode.h:30
abstract class specifies interface to map data to graphics primitives
Definition: vtkMapper.h:77
Key for double values in vtkInformation.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.