Go to the documentation of this file.
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];
unsigned char * ResultFrame
virtual int SetRGBAPixelData(int, int, int, int, vtkFloatArray *, int, int blend=0)=0
void RemoveRenderer(vtkRenderer *)
Remove a renderer from the list of renderers.
virtual int SetPixelData(int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front)=0
unsigned char * StereoBuffer
virtual void SetNextWindowInfo(char *)=0
unsigned int AccumulationBufferSize
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0)=0
virtual void Start()=0
Initialize the rendering process.
virtual void SetStereoCapableWindow(int capable)
#define VTK_STEREO_RED_BLUE
virtual void SetDesiredUpdateRate(double)
Set/Get the desired update rate.
virtual void StereoRenderComplete()
Handles work required once both views have been rendered when using stereo rendering.
virtual bool GetUseOffScreenBuffers()
virtual int GetColorBufferSizes(int *rgba)=0
Get the size of the color buffer.
virtual int GetDepthBufferSize()=0
This method should be defined by the subclass.
virtual void ShowCursor()=0
dynamic, self-adjusting array of float
An adapter between a vtkPainter and a rendering device.
virtual void SetFullScreen(int)=0
Turn on/off rendering full screen window size.
virtual int SetRGBAPixelData(int x, int y, int x2, int y2, float *, int front, int blend=0)=0
virtual void DoStereoRender()
void SetStereoTypeToRedBlue()
virtual int SetUseOffScreenBuffers(bool)
Create and bind offscreen rendering buffers without destroying the current OpenGL context.
virtual int GetZbufferData(int x, int y, int x2, int y2, float *z)=0
virtual void SetDisplayId(void *)=0
Dummy stubs for vtkWindow API.
dynamic, self-adjusting array of unsigned char
void SetStereoTypeToCheckerboard()
virtual int SetZbufferData(int x, int y, int x2, int y2, vtkFloatArray *z)=0
float GetZbufferDataAtPoint(int x, int y)
virtual void UnRegister(vtkObjectBase *o)
This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.
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 void Finalize()=0
Finalize the rendering process.
virtual void SetWindowInfo(char *)=0
vtkRendererCollection * Renderers
virtual bool IsCurrent()=0
Tells if this window is the current graphics context for the calling thread.
#define VTK_STEREO_CRYSTAL_EYES
#define VTK_STEREO_SPLITVIEWPORT_HORIZONTAL
virtual int GetRGBAPixelData(int x, int y, int x2, int y2, int front, vtkFloatArray *data)=0
virtual void SetForceMakeCurrent()
If called, allow MakeCurrent() to skip cache-check when called.
vtkRendererCollection * GetRenderers()
Return the collection of renderers in the render window.
virtual void WindowRemap()=0
Remap the rendering window.
virtual void * GetGenericParentId()=0
window superclass for vtkRenderWindow
float AnaglyphColorSaturation
virtual void CopyResultFrame()
Performed at the end of the rendering process to generate image.
create and manipulate unsorted lists of objects
void SetStereoRender(int stereo)
virtual void StereoMidpoint()
Intermediate method performs operations required between the rendering of the left and right eye.
virtual void * GetGenericDisplayId()=0
vtkPainterDeviceAdapter * PainterDeviceAdapter
void SetInteractor(vtkRenderWindowInteractor *)
Set the interactor to the render window.
void SetStereoTypeToAnaglyph()
virtual void * GetGenericDrawable()=0
abstract base class for most VTK objects
virtual void Render()
Ask each renderer owned by this RenderWindow to render its image and synchronize this process.
vtkRenderWindowInteractor * Interactor
#define VTK_STEREO_INTERLACED
int HasRenderer(vtkRenderer *)
Query if a renderer is in the list of renderers.
virtual vtkRenderWindowInteractor * MakeRenderWindowInteractor()
Create an interactor to control renderers in this window.
virtual void DoAARender()
int CapturingGL2PSSpecialProps
virtual float * GetZbufferData(int x, int y, int x2, int y2)=0
Set/Get the zbuffer data from the frame buffer.
void SetStereoTypeToLeft()
#define VTK_STEREO_ANAGLYPH
virtual unsigned char * GetRGBACharPixelData(int x, int y, int x2, int y2, int front)=0
virtual void AddRenderer(vtkRenderer *)
Add a renderer to the list of renderers.
a simple class to control print indentation
virtual void WaitForCompletion()=0
Block the thread until the actual rendering is finished().
virtual const char * ReportCapabilities()
Get report of capabilities for the render window.
void SetStereoTypeToRight()
platform-independent render window interaction including picking and frame rate control.
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.
virtual int GetRGBACharPixelData(int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data)=0
virtual void SetWindowId(void *)=0
double AbortCheckTime
The universal time since the last abort check occurred.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
const char * GetStereoTypeAsString()
virtual int GetNumberOfDevices()
Returns the number of devices (graphics cards) on a system.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
abstract superclass for all actors, volumes and annotations
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int blend=0)=0
void SetStereoTypeToCrystalEyes()
virtual void * GetGenericWindowId()=0
virtual int SetZbufferData(int x, int y, int x2, int y2, float *z)=0
virtual void SetCursorPosition(int, int)
virtual void SetParentInfo(char *)=0
virtual bool IsDrawable()
Test if the window has a valid drawable.
virtual void SetParentId(void *)=0
abstract specification for renderers
void SetStereoTypeToFake()
virtual void MakeCurrent()=0
Attempt to make this window the current graphics context for the calling thread.
float * AccumulationBuffer
virtual void * GetGenericContext()=0
virtual void DoFDRender()
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.
virtual void ReleaseRGBAPixelData(float *data)=0
virtual int IsDirect()
Is this render window using hardware acceleration? 0-false, 1-true.
#define VTK_STEREO_DRESDEN
void SetStereoTypeToDresden()
virtual void SetSubFrames(int subFrames)
void SetStereoTypeToInterlaced()
virtual int SupportsOpenGL()
Does this render window support OpenGL? 0-false, 1-true.
void CaptureGL2PSSpecialProps(vtkCollection *specialProps)
The GL2PS exporter must handle certain props in a special way (e.g.
virtual int GetZbufferData(int x, int y, int x2, int y2, vtkFloatArray *z)=0
create a window for renderers to draw into
virtual bool InitializeFromCurrentContext()
Initialize the render window from the information associated with the currently activated OpenGL cont...
virtual const char * GetRenderingBackend()
What rendering backend has the user requested.
virtual void ClearInRenderStatus()
Clear status (after an exception was thrown for example)
virtual int CheckInRenderStatus()
Are we rendering at the moment.
virtual void Frame()=0
A termination method performed at the end of the rendering process to do things like swapping buffers...
virtual void SetNextWindowId(void *)=0
static vtkRenderWindow * New()
Construct an instance of vtkRenderWindow with its screen size set to 300x300, borders turned on,...
virtual int GetEventPending()=0
Check to see if a mouse button has been pressed.
virtual void SetFDFrames(int fdFrames)
static const char * GetRenderLibrary()
What rendering library has the user requested.
void SetStereoTypeToSplitViewportHorizontal()
virtual int CheckAbortStatus()
#define VTK_STEREO_CHECKERBOARD
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.