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];
Configuration for FXAA implementations.
a simple class to control print indentation
Multiprocessing communication superclass.
stream used to pass data across processes using vtkMultiProcessController.
abstract base class for most VTK objects
Perform FXAA antialiasing on the current framebuffer.
abstract specification for renderers
static vtkSmartPointer< T > New()
Create an instance of a VTK object.
synchronizes renderers across processes.
virtual void SetParallelController(vtkMultiProcessController *)
Set the parallel message communicator.
vtkOpenGLRenderer * Renderer
virtual void SlaveStartRender()
virtual void SetRenderer(vtkRenderer *)
Set the renderer to be synchronized by this instance.
static vtkSynchronizedRenderers * New()
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkSynchronizedRenderers()
virtual void HandleStartRender()
virtual vtkRawImage & CaptureRenderedImage()
Can be used in HandleEndRender(), MasterEndRender() or SlaveEndRender() calls to capture the rendered...
virtual vtkRenderer * GetRenderer()
bool AutomaticEventHandling
virtual void HandleAbortRender()
vtkSynchronizedRenderers * CaptureDelegate
virtual void HandleEndRender()
~vtkSynchronizedRenderers()
vtkFXAAOptions * FXAAOptions
vtkMultiProcessController * ParallelController
virtual void MasterEndRender()
vtkOpenGLFXAAFilter * FXAAFilter
virtual void SlaveEndRender()
virtual void MasterStartRender()
virtual void PushImageToScreen()
Can be used in HandleEndRender(), MasterEndRender() or SlaveEndRender() calls to paste back the image...
dynamic, self-adjusting array of unsigned char
void CopyTo(vtkRenderer *)
bool Restore(vtkMultiProcessStream &stream)
void Save(vtkMultiProcessStream &stream)
void CopyFrom(vtkRenderer *)
double CameraParallelScale
int CameraParallelProjection
vtkRawImage can be used to make it easier to deal with images for compositing/communicating over clie...
void Initialize(int dx, int dy, vtkUnsignedCharArray *data)
Create the buffer from an image data.
void SaveAsPNG(const char *filename)
vtkUnsignedCharArray * GetRawPtr()
bool PushToFrameBuffer(vtkRenderer *ren=NULL)
void Resize(int dx, int dy, int numcomps)
bool Capture(vtkRenderer *)
bool PushToViewport(vtkRenderer *)
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.