47#ifndef vtkRenderWindow_h
48#define vtkRenderWindow_h
50#include "vtkRenderingCoreModule.h"
63#define VTK_STEREO_CRYSTAL_EYES 1
64#define VTK_STEREO_RED_BLUE 2
65#define VTK_STEREO_INTERLACED 3
66#define VTK_STEREO_LEFT 4
67#define VTK_STEREO_RIGHT 5
68#define VTK_STEREO_DRESDEN 6
69#define VTK_STEREO_ANAGLYPH 7
70#define VTK_STEREO_CHECKERBOARD 8
71#define VTK_STEREO_SPLITVIEWPORT_HORIZONTAL 9
72#define VTK_STEREO_FAKE 10
74#define VTK_CURSOR_DEFAULT 0
75#define VTK_CURSOR_ARROW 1
76#define VTK_CURSOR_SIZENE 2
77#define VTK_CURSOR_SIZENW 3
78#define VTK_CURSOR_SIZESW 4
79#define VTK_CURSOR_SIZESE 5
80#define VTK_CURSOR_SIZENS 6
81#define VTK_CURSOR_SIZEWE 7
82#define VTK_CURSOR_SIZEALL 8
83#define VTK_CURSOR_HAND 9
84#define VTK_CURSOR_CROSSHAIR 10
142 vtkGetMacro(CapturingGL2PSSpecialProps,
int);
203 vtkGetMacro(CurrentCursor,
int);
211 vtkGetMacro(FullScreen,
int);
222 vtkGetMacro(Borders,
int);
231 vtkGetMacro(StereoCapableWindow,
int);
240 vtkGetMacro(StereoRender,
int);
250 vtkGetMacro(AlphaBitPlanes,
int);
260 vtkGetMacro(PointSmoothing,
int);
270 vtkGetMacro(LineSmoothing,
int);
280 vtkGetMacro(PolygonSmoothing,
int);
303 vtkGetMacro(StereoType,
int);
355 vtkSetClampMacro(AnaglyphColorSaturation,
float, 0.0f, 1.0f);
356 vtkGetMacro(AnaglyphColorSaturation,
float);
374 vtkSetVector2Macro(AnaglyphColorMask,
int);
375 vtkGetVectorMacro(AnaglyphColorMask,
int,2);
390 vtkGetMacro(SwapBuffers,
int);
425 int front,
int blend=0) = 0;
427 int,
int blend=0) = 0;
434 unsigned char *
data,
int front,
457 this->GetZbufferData(x, y, x, y, &
value);
468 vtkGetMacro(AAFrames,
int);
480 vtkGetMacro(FDFrames,
int);
492 vtkGetMacro(UseConstantFDOffsets,
int);
505 vtkGetMacro(SubFrames,
int);
513 vtkGetMacro(NeverRendered,
int);
521 vtkGetMacro(AbortRender,
int);
523 vtkGetMacro(InAbortCheck,
int);
528 vtkGetMacro(IsPicking,
int);
560 vtkGetMacro(DesiredUpdateRate,
double);
570 vtkGetMacro(NumberOfLayers,
int);
684 vtkGetMacro(MultiSamples,
int);
692 vtkGetMacro(StencilCapable,
int);
704 vtkGetMacro(DeviceIndex,
int);
754 double *ConstantFDOffsets[2];
768 int AnaglyphColorMask[2];
create and manipulate unsorted lists of objects
dynamic, self-adjusting array of float
a simple class to control print indentation
abstract base class for most VTK objects
An adapter between a vtkPainter and a rendering device.
abstract superclass for all actors, volumes and annotations
platform-independent render window interaction including picking and frame rate control.
create a window for renderers to draw into
virtual int GetEventPending()=0
Check to see if a mouse button has been pressed.
virtual void SetNextWindowInfo(char *)=0
void SetStereoTypeToDresden()
virtual void SetDesiredUpdateRate(double)
Set/Get the desired update rate.
virtual void * GetGenericContext()=0
virtual int SetZbufferData(int x, int y, int x2, int y2, vtkFloatArray *z)=0
virtual void Render()
Ask each renderer owned by this RenderWindow to render its image and synchronize this process.
unsigned char * StereoBuffer
virtual int IsDirect()
Is this render window using hardware acceleration? 0-false, 1-true.
virtual bool IsDrawable()
Test if the window has a valid drawable.
void SetStereoTypeToRedBlue()
virtual void MakeCurrent()=0
Attempt to make this window the current graphics context for the calling thread.
unsigned char * ResultFrame
virtual void WaitForCompletion()=0
Block the thread until the actual rendering is finished().
vtkPainterDeviceAdapter * PainterDeviceAdapter
virtual void SetFDFrames(int fdFrames)
virtual float * GetRGBAPixelData(int x, int y, int x2, int y2, int front)=0
Same as Get/SetPixelData except that the image also contains an alpha component.
virtual int SetRGBAPixelData(int, int, int, int, vtkFloatArray *, int, int blend=0)=0
void SetInteractor(vtkRenderWindowInteractor *)
Set the interactor to the render window.
virtual void HideCursor()=0
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
virtual const char * GetRenderingBackend()
What rendering backend has the user requested.
double AbortCheckTime
The universal time since the last abort check occurred.
virtual void ReleaseRGBAPixelData(float *data)=0
virtual void AddRenderer(vtkRenderer *)
Add a renderer to the list of renderers.
virtual const char * ReportCapabilities()
Get report of capabilities for the render window.
vtkRenderWindowInteractor * Interactor
void SetStereoTypeToFake()
virtual void SetWindowInfo(char *)=0
float AnaglyphColorSaturation
virtual void SetStereoCapableWindow(int capable)
void SetStereoTypeToInterlaced()
virtual int GetDepthBufferSize()=0
This method should be defined by the subclass.
static vtkRenderWindow * New()
Construct an instance of vtkRenderWindow with its screen size set to 300x300, borders turned on,...
virtual void SetParentInfo(char *)=0
void CaptureGL2PSSpecialProps(vtkCollection *specialProps)
The GL2PS exporter must handle certain props in a special way (e.g.
virtual int SetRGBAPixelData(int x, int y, int x2, int y2, float *, int front, int blend=0)=0
float GetZbufferDataAtPoint(int x, int y)
virtual void StereoRenderComplete()
Handles work required once both views have been rendered when using stereo rendering.
virtual void SetFullScreen(int)=0
Turn on/off rendering full screen window size.
virtual vtkRenderWindowInteractor * MakeRenderWindowInteractor()
Create an interactor to control renderers in this window.
virtual void SetParentId(void *)=0
void SetStereoTypeToLeft()
virtual int GetColorBufferSizes(int *rgba)=0
Get the size of the color buffer.
virtual void DoAARender()
virtual bool InitializeFromCurrentContext()
Initialize the render window from the information associated with the currently activated OpenGL cont...
virtual void DoStereoRender()
virtual void ClearInRenderStatus()
Clear status (after an exception was thrown for example)
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0)=0
virtual bool GetUseOffScreenBuffers()
virtual float * GetZbufferData(int x, int y, int x2, int y2)=0
Set/Get the zbuffer data from the frame buffer.
virtual int GetRGBACharPixelData(int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data)=0
virtual void SetSubFrames(int subFrames)
virtual void UnRegister(vtkObjectBase *o)
This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.
float * AccumulationBuffer
virtual void Frame()=0
A termination method performed at the end of the rendering process to do things like swapping buffers...
virtual void Finalize()=0
Finalize the rendering process.
virtual void * GetGenericWindowId()=0
virtual int CheckAbortStatus()
virtual void SetForceMakeCurrent()
If called, allow MakeCurrent() to skip cache-check when called.
void SetStereoTypeToCheckerboard()
virtual int GetZbufferData(int x, int y, int x2, int y2, float *z)=0
virtual int SupportsOpenGL()
Does this render window support OpenGL? 0-false, 1-true.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual void StereoUpdate()
Update the system, if needed, due to stereo rendering.
void SetStereoTypeToAnaglyph()
virtual void * GetGenericParentId()=0
virtual void CopyResultFrame()
Performed at the end of the rendering process to generate image.
vtkRendererCollection * Renderers
virtual int SetPixelData(int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front)=0
static const char * GetRenderLibrary()
What rendering library has the user requested.
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int blend=0)=0
void RemoveRenderer(vtkRenderer *)
Remove a renderer from the list of renderers.
virtual void * GetGenericDrawable()=0
virtual bool IsCurrent()=0
Tells if this window is the current graphics context for the calling thread.
virtual int SetZbufferData(int x, int y, int x2, int y2, float *z)=0
virtual void WindowRemap()=0
Remap the rendering window.
virtual void SetCursorPosition(int, int)
virtual void StereoMidpoint()
Intermediate method performs operations required between the rendering of the left and right eye.
virtual void * GetGenericDisplayId()=0
void SetStereoTypeToSplitViewportHorizontal()
int HasRenderer(vtkRenderer *)
Query if a renderer is in the list of renderers.
virtual int GetNumberOfDevices()
Returns the number of devices (graphics cards) on a system.
virtual int SetUseOffScreenBuffers(bool)
Create and bind offscreen rendering buffers without destroying the current OpenGL context.
virtual void SetWindowId(void *)=0
virtual int SetPixelData(int x, int y, int x2, int y2, unsigned char *data, int front)=0
Set/Get the pixel data of an image, transmitted as RGBRGBRGB.
vtkRendererCollection * GetRenderers()
Return the collection of renderers in the render window.
virtual void ShowCursor()=0
virtual void SetNextWindowId(void *)=0
void SetStereoTypeToCrystalEyes()
virtual void SetDisplayId(void *)=0
Dummy stubs for vtkWindow API.
virtual void Start()=0
Initialize the rendering process.
virtual int GetRGBAPixelData(int x, int y, int x2, int y2, int front, vtkFloatArray *data)=0
int CapturingGL2PSSpecialProps
void SetStereoRender(int stereo)
virtual int GetZbufferData(int x, int y, int x2, int y2, vtkFloatArray *z)=0
void SetStereoTypeToRight()
virtual int CheckInRenderStatus()
Are we rendering at the moment.
unsigned int AccumulationBufferSize
virtual void DoFDRender()
const char * GetStereoTypeAsString()
virtual unsigned char * GetRGBACharPixelData(int x, int y, int x2, int y2, int front)=0
abstract specification for renderers
dynamic, self-adjusting array of unsigned char
window superclass for vtkRenderWindow
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
#define VTK_STEREO_ANAGLYPH
#define VTK_STEREO_SPLITVIEWPORT_HORIZONTAL
#define VTK_STEREO_DRESDEN
#define VTK_STEREO_CHECKERBOARD
#define VTK_STEREO_CRYSTAL_EYES
#define VTK_STEREO_RED_BLUE
#define VTK_STEREO_INTERLACED