Go to the documentation of this file.
33 #ifndef vtkSynchronizedRenderers_h
34 #define vtkSynchronizedRenderers_h
36 #include "vtkRenderingParallelModule.h"
81 vtkGetMacro(ParallelRendering,
bool);
89 vtkSetClampMacro(ImageReductionFactor,
int, 1, 50);
90 vtkGetMacro(ImageReductionFactor,
int);
100 vtkGetMacro(WriteBackImages,
bool);
110 vtkGetMacro(UseFXAA,
bool)
129 vtkGetMacro(RootProcessId,
int);
139 void CollectiveExpandForVisiblePropBounds(
double bounds[6]);
159 vtkGetMacro(AutomaticEventHandling,
bool);
165 SYNC_RENDERER_TAG = 15101,
166 RESET_CAMERA_TAG = 15102,
167 COMPUTE_BOUNDS_TAG = 15103
178 this->Size[0] = this->Size[1] = 0;
182 void Resize(
int dx,
int dy,
int numcomps)
185 this->Allocate(dx, dy, numcomps);
200 {
return this->Data; }
223 void Allocate(
int dx,
int dy,
int numcomps);
236 double CameraPosition[3];
237 double CameraFocalPoint[3];
238 double CameraViewUp[3];
239 double CameraWindowCenter[2];
240 double CameraClippingRange[2];
243 double EyeTransformMatrix[16];
244 double ModelTransformMatrix[16];
304 vtkObserver* Observer;
305 friend class vtkObserver;
307 double LastViewport[4];
vtkSynchronizedRenderers * CaptureDelegate
virtual vtkRawImage & CaptureRenderedImage()
Can be used in HandleEndRender(), MasterEndRender() or SlaveEndRender() calls to capture the rendered...
int CameraParallelProjection
bool Restore(vtkMultiProcessStream &stream)
void SaveAsPNG(const char *filename)
stream used to pass data across processes using vtkMultiProcessController.
bool PushToViewport(vtkRenderer *)
dynamic, self-adjusting array of unsigned char
vtkOpenGLFXAAFilter * FXAAFilter
abstract base class for most VTK objects
vtkFXAAOptions * FXAAOptions
Configuration for FXAA implementations.
virtual void HandleAbortRender()
void Save(vtkMultiProcessStream &stream)
bool AutomaticEventHandling
vtkMultiProcessController * ParallelController
vtkSynchronizedRenderers()
virtual vtkRenderer * GetRenderer()
virtual void SetParallelController(vtkMultiProcessController *)
Set the parallel message communicator.
Multiprocessing communication superclass.
double CameraParallelScale
void Resize(int dx, int dy, int numcomps)
virtual void HandleEndRender()
a simple class to control print indentation
virtual void HandleStartRender()
virtual void PushImageToScreen()
Can be used in HandleEndRender(), MasterEndRender() or SlaveEndRender() calls to paste back the image...
void CopyTo(vtkRenderer *)
static vtkSmartPointer< T > New()
Create an instance of a VTK object.
Perform FXAA antialiasing on the current framebuffer.
void CopyFrom(vtkRenderer *)
bool Capture(vtkRenderer *)
virtual void SlaveEndRender()
virtual void SlaveStartRender()
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
bool PushToFrameBuffer(vtkRenderer *ren=NULL)
~vtkSynchronizedRenderers()
vtkRawImage can be used to make it easier to deal with images for compositing/communicating over clie...
vtkUnsignedCharArray * GetRawPtr()
abstract specification for renderers
vtkOpenGLRenderer * Renderer
synchronizes renderers across processes.
static vtkSynchronizedRenderers * New()
virtual void MasterStartRender()
virtual void MasterEndRender()
void Initialize(int dx, int dy, vtkUnsignedCharArray *data)
Create the buffer from an image data.
virtual void SetRenderer(vtkRenderer *)
Set the renderer to be synchronized by this instance.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.