Go to the documentation of this file.
25 #ifndef vtkOSPRayRendererNode_h
26 #define vtkOSPRayRendererNode_h
28 #include "vtkRenderingOSPRayModule.h"
32 #include "ospray/ospray.h"
40 class vtkOSPRayRendererNodeInternals;
55 virtual void Build(
bool prepass)
override;
60 virtual void Render(
bool prepass)
override;
70 virtual void WriteLayer(
unsigned char *buffer,
float *zbuffer,
71 int buffx,
int buffy,
int layer);
205 this->Lights.push_back(light); }
211 return this->Buffer; }
217 return this->ZBuffer; }
virtual void Build(bool prepass) override
Builds myself.
links vtkRenderers to OSPRay
virtual float * GetZBuffer()
Get the last rendered ZBuffer.
OSPModel GetOModel()
Methods for other nodes to access.
vtkRenderer * GetRenderer()
Convenience method to get and downcast renderable.
static vtkInformationIntegerKey * COMPOSITE_ON_GL()
used to make the renderer add ospray's content onto GL rendered content on the window
static void SetTimeCacheSize(int, vtkRenderer *renderer)
Convenience method to set/get TIME_CACHE_SIZE on a vtkRenderer.
virtual void Render(bool prepass) override
Traverse graph in ospray's preferred order and render.
OSPFrameBuffer OFrameBuffer
static double * GetEastPole(vtkRenderer *renderer)
static vtkInformationObjectBaseKey * MATERIAL_LIBRARY()
Material Library attached to the renderer.
static vtkInformationStringKey * RENDERER_TYPE()
Set the OSPRay renderer type to use (e.g.
static vtkInformationIntegerKey * TIME_CACHE_SIZE()
Temporal cache size.
static vtkOSPRayMaterialLibrary * GetMaterialLibrary(vtkRenderer *renderer)
static double GetViewTime(vtkRenderer *renderer)
static void SetMaterialLibrary(vtkOSPRayMaterialLibrary *, vtkRenderer *renderer)
Convenience method to set/get Material library on a renderer.
static void SetMaxFrames(int, vtkRenderer *renderer)
virtual void WriteLayer(unsigned char *buffer, float *zbuffer, int buffx, int buffy, int layer)
Put my results into the correct place in the provided pixel buffer.
virtual unsigned char * GetBuffer()
Get the last rendered ColorBuffer.
static void SetAmbientSamples(int, vtkRenderer *renderer)
Convenience method to set/get AMBIENT_SAMPLES on a vtkRenderer.
vtkOSPRayRendererNodeInternals * Internal
static vtkInformationIntegerKey * SAMPLES_PER_PIXEL()
When present on renderer, controls the number of primary rays shot per pixel default is 1.
static vtkOSPRayRendererNode * New()
virtual void Traverse(int operation) override
static void SetNorthPole(double *, vtkRenderer *renderer)
Convenience method to set/get NORTH_POLE on a vtkRenderer.
static vtkInformationDoubleVectorKey * EAST_POLE()
World space direction of east pole for texture background.
static int GetTimeCacheSize(vtkRenderer *renderer)
std::vector< OSPLight > Lights
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
a collection of materials for vtk apps to draw from
static int GetCompositeOnGL(vtkRenderer *renderer)
static int GetMaxFrames(vtkRenderer *renderer)
static void SetViewTime(double, vtkRenderer *renderer)
Convenience method to set/get VIEW_TIME on a vtkRenderer.
vtkMTimeType AccumulateTime
static vtkInformationIntegerKey * AMBIENT_SAMPLES()
When present on renderer, controls the number of ambient occlusion samples shot per hit.
void AddLight(OSPLight light)
static void SetRendererType(std::string name, vtkRenderer *renderer)
static vtkInformationDoubleVectorKey * NORTH_POLE()
World space direction of north pole for gradient and texture background.
virtual void Invalidate(bool prepass) override
Invalidates cached rendering data.
static double * GetNorthPole(vtkRenderer *renderer)
abstract specification for renderers
static std::string GetRendererType(vtkRenderer *renderer)
vtkMatrix4x4 * AccumulateMatrix
OSPRenderer GetORenderer()
static vtkInformationDoubleKey * VIEW_TIME()
Requested time to show in a renderer and to lookup in a temporal cache.
static void SetCompositeOnGL(int, vtkRenderer *renderer)
Convenience method to set/get COMPOSITE_ON_GL on a vtkRenderer.
static void SetEastPole(double *, vtkRenderer *renderer)
Convenience method to set/get EAST_POLE on a vtkRenderer.
vtkViewNode specialized for vtkRenderers
static int GetAmbientSamples(vtkRenderer *renderer)
static vtkInformationIntegerKey * MAX_FRAMES()
When present on renderer, controls the number of ospray render calls for each refresh.
static int GetSamplesPerPixel(vtkRenderer *renderer)
static void SetSamplesPerPixel(int, vtkRenderer *renderer)
Convenience method to set/get SAMPLES_PER_PIXEL on a vtkRenderer.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTypeUInt32 vtkMTimeType