VTK
vtkOpenGLRenderWindow.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOpenGLRenderWindow.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
25 #ifndef vtkOpenGLRenderWindow_h
26 #define vtkOpenGLRenderWindow_h
27 
28 #include "vtkRenderingOpenGL2Module.h" // For export macro
29 #include "vtkRenderWindow.h"
30 #include <string> // for ivar
31 #include <map> // for ivar
32 #include <set> // for ivar
33 #include "vtkType.h" // for ivar
34 
35 class vtkIdList;
39 class vtkShaderProgram;
40 class vtkStdString;
41 class vtkTexture;
42 class vtkTextureObject;
45 
46 class VTKRENDERINGOPENGL2_EXPORT vtkOpenGLRenderWindow : public vtkRenderWindow
47 {
48 public:
50  void PrintSelf(ostream& os, vtkIndent indent);
51 
55  virtual const char *GetRenderingBackend();
56 
58 
64 
68  virtual void StereoUpdate();
69 
71 
74  virtual unsigned char *GetPixelData(int x,int y,int x2,int y2,int front);
75  virtual int GetPixelData(int x,int y,int x2,int y2, int front,
77  virtual int SetPixelData(int x,int y,int x2,int y2,unsigned char *data,
78  int front);
79  virtual int SetPixelData(int x,int y,int x2,int y2,
80  vtkUnsignedCharArray *data, int front);
82 
84 
87  virtual float *GetRGBAPixelData(int x,int y,int x2,int y2,int front);
88  virtual int GetRGBAPixelData(int x,int y,int x2,int y2, int front,
90  virtual int SetRGBAPixelData(int x,int y,int x2,int y2, float *data,
91  int front, int blend=0);
92  virtual int SetRGBAPixelData(int x,int y,int x2,int y2, vtkFloatArray *data,
93  int front, int blend=0);
94  virtual void ReleaseRGBAPixelData(float *data);
95  virtual unsigned char *GetRGBACharPixelData(int x,int y,int x2,int y2,
96  int front);
97  virtual int GetRGBACharPixelData(int x,int y,int x2,int y2, int front,
99  virtual int SetRGBACharPixelData(int x, int y, int x2, int y2,
100  unsigned char *data, int front,
101  int blend=0);
102  virtual int SetRGBACharPixelData(int x,int y,int x2,int y2,
103  vtkUnsignedCharArray *data, int front,
104  int blend=0);
106 
108 
111  virtual float *GetZbufferData( int x1, int y1, int x2, int y2 );
112  virtual int GetZbufferData( int x1, int y1, int x2, int y2, float* z );
113  virtual int GetZbufferData( int x1, int y1, int x2, int y2,
114  vtkFloatArray* z );
115  virtual int SetZbufferData( int x1, int y1, int x2, int y2, float *buffer );
116  virtual int SetZbufferData( int x1, int y1, int x2, int y2,
117  vtkFloatArray *buffer );
119 
120 
125 
130 
135 
140 
145  int GetColorBufferSizes(int *rgba);
146 
148 
151  virtual void SetSize(int a[2]);
152  virtual void SetSize(int,int);
154 
158  virtual void OpenGLInit();
159 
160  // Initialize the state of OpenGL that VTK wants for this window
161  virtual void OpenGLInitState();
162 
163  // Initialize VTK for rendering in a new OpenGL context
164  virtual void OpenGLInitContext();
165 
167 
173 
179  void GetOpenGLVersion(int &major, int &minor);
180 
188  unsigned int GetBackLeftBuffer();
189 
197  unsigned int GetBackRightBuffer();
198 
206  unsigned int GetFrontLeftBuffer();
207 
215  unsigned int GetFrontRightBuffer();
216 
224  unsigned int GetBackBuffer();
225 
233  unsigned int GetFrontBuffer();
234 
239 
241 
244  vtkGetObjectMacro(ShaderCache,vtkOpenGLShaderCache);
246 
248 
251  vtkGetMacro(FrameBufferObject, unsigned int);
253 
259 
264  virtual void WaitForCompletion();
265 
269  virtual void DrawPixels(int x1, int y1, int x2, int y2,
270  int numComponents, int dataType, void *data);
271 
276  virtual void DrawPixels(
277  int dstXmin, int dstYmin, int dstXmax, int dstYmax,
278  int srcXmin, int srcYmin, int srcXmax, int srcYmax,
279  int srcWidth, int srcHeight, int numComponents, int dataType, void *data);
280 
285  virtual void DrawPixels(
286  int srcWidth, int srcHeight, int numComponents, int dataType, void *data);
287 
291  virtual float GetMaximumHardwareLineWidth() {
292  return this->MaximumHardwareLineWidth; };
293 
300  virtual bool IsPointSpriteBugPresent()
301  {
302  return 0;
303  }
304 
311  int vtktype, int numComponents,
312  bool needInteger, bool needFloat);
313 
320  {
321  return this->OpenGLSupportMessage;
322  }
323 
324  // Create and bind offscreen rendering buffers without destroying the current
325  // OpenGL context. This allows to temporary switch to offscreen rendering
326  // (ie. to make a screenshot even if the window is hidden).
327  // Return if the creation was successful (1) or not (0).
328  // Note: This function requires that the device supports OpenGL framebuffer extension.
329  // The function has no effect if OffScreenRendering is ON.
330  virtual int SetUseOffScreenBuffers(bool offScreen);
331  virtual bool GetUseOffScreenBuffers();
332 
336  virtual int SupportsOpenGL();
337 
344  virtual void Initialize(void) {};
345 
346  std::set<vtkGenericOpenGLResourceFreeCallback *> Resources;
347 
349  std::set<vtkGenericOpenGLResourceFreeCallback *>::iterator it
350  = this->Resources.find(cb);
351  if (it == this->Resources.end())
352  {
353  this->Resources.insert(cb);
354  }
355  }
356 
358  std::set<vtkGenericOpenGLResourceFreeCallback *>::iterator it
359  = this->Resources.find(cb);
360  if (it != this->Resources.end())
361  {
362  this->Resources.erase(it);
363  }
364  }
365 
375  virtual void PushContext() { this->MakeCurrent(); }
376  virtual void PopContext() {}
377 
378 protected:
381 
383 
384  // used in testing for opengl support
385  // in the SupportsOpenGL() method
389 
390  int TextureInternalFormats[VTK_UNICODE_STRING][3][5];
392 
393  std::map<const vtkTextureObject *, int> TextureResourceIds;
394 
395  virtual int GetPixelData(int x, int y, int x2, int y2, int front, unsigned char* data);
396  int GetRGBAPixelData(int x, int y, int x2, int y2, int front, float* data);
397  int GetRGBACharPixelData(int x, int y, int x2, int y2, int front,
398  unsigned char* data);
399 
410 
411  int CreateHardwareOffScreenBuffers(int width, int height, bool bind = false);
413 
420 
423 
427  int OffScreenUseFrameBuffer;
428 
430 
433  int NumberOfFrameBuffers;
434  unsigned int TextureObjects[4]; // really GLuint
435  unsigned int FrameBufferObject; // really GLuint
436  unsigned int DepthRenderBufferObject; // really GLuint
437  int HardwareBufferSize[2];
438  bool HardwareOffScreenBuffersBind;
440 
444  virtual void CreateAWindow() = 0;
445 
449  virtual void DestroyWindow() = 0;
450 
456 
460  void SetTextureUnitManager(vtkTextureUnitManager *textureUnitManager);
461 
462 
466  void SaveGLState();
467 
472 
473  std::map<std::string, int> GLStateIntegers;
474 
475  unsigned int BackLeftBuffer;
476  unsigned int BackRightBuffer;
477  unsigned int FrontLeftBuffer;
478  unsigned int FrontRightBuffer;
479  unsigned int FrontBuffer;
480  unsigned int BackBuffer;
481 
482  #ifndef VTK_LEGACY_REMOVE
483 
487  unsigned int LastGraphicError;
488  #endif
489 
493  int OwnContext;
494 
495  vtkTimeStamp ContextCreationTime;
496 
497  vtkTextureUnitManager *TextureUnitManager;
498 
500 
501  bool Initialized; // ensure glewinit has been called
502 
504 
505 private:
506  vtkOpenGLRenderWindow(const vtkOpenGLRenderWindow&) VTK_DELETE_FUNCTION;
507  void operator=(const vtkOpenGLRenderWindow&) VTK_DELETE_FUNCTION;
508 };
509 
510 #endif
vtkOpenGLRenderWindow::SetPixelData
virtual int SetPixelData(int x, int y, int x2, int y2, unsigned char *data, int front)
Set/Get the pixel data of an image, transmitted as RGBRGBRGB.
vtkOpenGLRenderWindow::GetContextCreationTime
virtual vtkMTimeType GetContextCreationTime()
Get the time when the OpenGL context was created.
vtkOpenGLRenderWindow::GetRenderingBackend
virtual const char * GetRenderingBackend()
What rendering backend has the user requested.
vtkOpenGLRenderWindow::OpenGLInit
virtual void OpenGLInit()
Initialize OpenGL for this window.
vtkOpenGLRenderWindow::DestroyHardwareOffScreenBuffers
void DestroyHardwareOffScreenBuffers()
vtkOpenGLRenderWindow::GetOpenGLVersion
void GetOpenGLVersion(int &major, int &minor)
Get the major and minor version numbers of the OpenGL context we are using ala 3.2,...
vtkOpenGLRenderWindow::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkOpenGLRenderWindow::GetMaximumHardwareLineWidth
virtual float GetMaximumHardwareLineWidth()
Return the largest line width supported by the hardware.
Definition: vtkOpenGLRenderWindow.h:291
vtkOpenGLRenderWindow::RegisterGraphicsResources
void RegisterGraphicsResources(vtkGenericOpenGLResourceFreeCallback *cb)
Definition: vtkOpenGLRenderWindow.h:348
vtkOpenGLRenderWindow::SetZbufferData
virtual int SetZbufferData(int x1, int y1, int x2, int y2, float *buffer)
vtkOpenGLRenderWindow::ActivateTexture
void ActivateTexture(vtkTextureObject *)
Activate a texture unit for this texture.
vtkOpenGLRenderWindow::DrawPixels
virtual void DrawPixels(int x1, int y1, int x2, int y2, int numComponents, int dataType, void *data)
Replacement for the old glDrawPixels function.
vtkOpenGLRenderWindow::GetZbufferData
virtual int GetZbufferData(int x1, int y1, int x2, int y2, float *z)
vtkOpenGLRenderWindow::DestroyHardwareOffScreenWindow
void DestroyHardwareOffScreenWindow()
Destroy an offscreen window based on OpenGL framebuffer extension.
vtkOpenGLRenderWindow::MaximumHardwareLineWidth
float MaximumHardwareLineWidth
Definition: vtkOpenGLRenderWindow.h:503
vtkOpenGLRenderWindow::DrawPixels
virtual void DrawPixels(int srcWidth, int srcHeight, int numComponents, int dataType, void *data)
Replacement for the old glDrawPixels function.
vtkOpenGLRenderWindow::SetPixelData
virtual int SetPixelData(int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front)
vtkFloatArray
dynamic, self-adjusting array of float
Definition: vtkFloatArray.h:42
vtkX3D::data
@ data
Definition: vtkX3D.h:315
vtkOpenGLRenderWindow::SetRGBAPixelData
virtual int SetRGBAPixelData(int x, int y, int x2, int y2, float *data, int front, int blend=0)
vtkOpenGLRenderWindow::TextureResourceIds
std::map< const vtkTextureObject *, int > TextureResourceIds
Definition: vtkOpenGLRenderWindow.h:393
vtkOpenGLRenderWindow::SetUseOffScreenBuffers
virtual int SetUseOffScreenBuffers(bool offScreen)
Create and bind offscreen rendering buffers without destroying the current OpenGL context.
vtkOpenGLRenderWindow::GetOpenGLSupportMessage
std::string GetOpenGLSupportMessage()
Return a message profiding additional details about the results of calling SupportsOpenGL() This can ...
Definition: vtkOpenGLRenderWindow.h:319
VTK_UNICODE_STRING
#define VTK_UNICODE_STRING
Definition: vtkType.h:81
vtkTimeStamp
record modification and/or execution time
Definition: vtkTimeStamp.h:36
vtkOpenGLRenderWindow::SetTextureUnitManager
void SetTextureUnitManager(vtkTextureUnitManager *textureUnitManager)
Set the texture unit manager.
vtkUnsignedCharArray
dynamic, self-adjusting array of unsigned char
Definition: vtkUnsignedCharArray.h:42
vtkOpenGLRenderWindow::SupportsOpenGL
virtual int SupportsOpenGL()
Does this render window support OpenGL? 0-false, 1-true.
vtkOpenGLRenderWindow::BindHardwareOffScreenBuffers
void BindHardwareOffScreenBuffers()
vtkRenderWindow.h
vtkOpenGLRenderWindow::CreateHardwareOffScreenWindow
int CreateHardwareOffScreenWindow(int width, int height)
Create an offScreen window based on OpenGL framebuffer extension.
vtkOpenGLRenderWindow::Resources
std::set< vtkGenericOpenGLResourceFreeCallback * > Resources
Definition: vtkOpenGLRenderWindow.h:344
vtkOpenGLRenderWindow::UnregisterGraphicsResources
void UnregisterGraphicsResources(vtkGenericOpenGLResourceFreeCallback *cb)
Definition: vtkOpenGLRenderWindow.h:357
vtkOpenGLRenderWindow::DrawPixelsTextureObject
vtkTextureObject * DrawPixelsTextureObject
Definition: vtkOpenGLRenderWindow.h:499
vtkOpenGLRenderWindow::GetBackLeftBuffer
unsigned int GetBackLeftBuffer()
Return the OpenGL name of the back left buffer.
vtkOpenGLRenderWindow::SetRGBACharPixelData
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0)
vtkOpenGLRenderWindow::OpenGLSupportMessage
std::string OpenGLSupportMessage
Definition: vtkOpenGLRenderWindow.h:388
vtkOpenGLRenderWindow::GetBackRightBuffer
unsigned int GetBackRightBuffer()
Return the OpenGL name of the back right buffer.
vtkOpenGLRenderWindow::DrawPixels
virtual void DrawPixels(int dstXmin, int dstYmin, int dstXmax, int dstYmax, int srcXmin, int srcYmin, int srcXmax, int srcYmax, int srcWidth, int srcHeight, int numComponents, int dataType, void *data)
Replacement for the old glDrawPixels function, but it allows for scaling the data and using only part...
vtkOpenGLRenderWindow::~vtkOpenGLRenderWindow
~vtkOpenGLRenderWindow()
vtkOpenGLRenderWindow::GetZbufferData
virtual int GetZbufferData(int x1, int y1, int x2, int y2, vtkFloatArray *z)
vtkOpenGLRenderWindow::SetRGBACharPixelData
virtual int SetRGBACharPixelData(int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int blend=0)
vtkOpenGLRenderWindow::PopContext
virtual void PopContext()
Definition: vtkOpenGLRenderWindow.h:376
vtkOpenGLRenderWindow::SetContextSupportsOpenGL32
void SetContextSupportsOpenGL32(bool val)
vtkOpenGLRenderWindow::GetRGBACharPixelData
virtual unsigned char * GetRGBACharPixelData(int x, int y, int x2, int y2, int front)
vtkMTimeType
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248
vtkType.h
vtkOpenGLRenderWindow::SaveGLState
void SaveGLState()
Query and save OpenGL state.
vtkOpenGLRenderWindow::GetZbufferData
virtual float * GetZbufferData(int x1, int y1, int x2, int y2)
Set/Get the zbuffer data from an image.
vtkOpenGLRenderWindow::GetRGBAPixelData
int GetRGBAPixelData(int x, int y, int x2, int y2, int front, float *data)
vtkTexture
handles properties associated with a texture map
Definition: vtkTexture.h:71
vtkOpenGLRenderWindow::OpenGLSupportResult
int OpenGLSupportResult
Definition: vtkOpenGLRenderWindow.h:387
vtkTextureUnitManager
allocate/free texture units.
Definition: vtkTextureUnitManager.h:39
vtkOpenGLRenderWindow::ShaderCache
vtkOpenGLShaderCache * ShaderCache
Definition: vtkOpenGLRenderWindow.h:382
vtkOpenGLRenderWindow::WaitForCompletion
virtual void WaitForCompletion()
Block the thread until the actual rendering is finished().
vtkOpenGLRenderWindow::GetPixelData
virtual int GetPixelData(int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data)
vtkOpenGLRenderWindow::DeactivateTexture
void DeactivateTexture(vtkTextureObject *)
Deactive a previously activated texture.
vtkX3D::height
@ height
Definition: vtkX3D.h:254
vtkOpenGLRenderWindow::GetTextureUnitForTexture
int GetTextureUnitForTexture(vtkTextureObject *)
Get the texture unit for a given texture object.
vtkOpenGLHardwareSupport
OpenGL rendering window.
Definition: vtkOpenGLHardwareSupport.h:39
vtkOpenGLRenderWindow::GetPixelData
virtual unsigned char * GetPixelData(int x, int y, int x2, int y2, int front)
Set/Get the pixel data of an image, transmitted as RGBRGB...
vtkOpenGLRenderWindow::OpenGLInitState
virtual void OpenGLInitState()
vtkShaderProgram
The ShaderProgram uses one or more Shader objects.
Definition: vtkShaderProgram.h:45
vtkGenericOpenGLResourceFreeCallback
Definition: vtkOpenGLResourceFreeCallback.h:26
vtkOpenGLRenderWindow::OpenGLInitContext
virtual void OpenGLInitContext()
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:40
vtkTextureObject
abstracts an OpenGL texture object.
Definition: vtkTextureObject.h:44
vtkOpenGLRenderWindow::GetContextSupportsOpenGL32
static bool GetContextSupportsOpenGL32()
Get if the context includes opengl core profile 3.2 support.
vtkOpenGLRenderWindow::StereoUpdate
virtual void StereoUpdate()
Update system if needed due to stereo rendering.
vtkOpenGLRenderWindow::GetFrontBuffer
unsigned int GetFrontBuffer()
Return the OpenGL name of the front left buffer.
vtkIdList
list of point or cell ids
Definition: vtkIdList.h:37
vtkOpenGLRenderWindow::GetDefaultTextureInternalFormat
int GetDefaultTextureInternalFormat(int vtktype, int numComponents, bool needInteger, bool needFloat)
Get a mapping of vtk data types to native texture formats for this window we put this on the RenderWi...
vtkOpenGLRenderWindow::SetZbufferData
virtual int SetZbufferData(int x1, int y1, int x2, int y2, vtkFloatArray *buffer)
vtkOpenGLShaderCache
manage Shader Programs within a context
Definition: vtkOpenGLShaderCache.h:35
vtkOpenGLRenderWindow::GetBackBuffer
unsigned int GetBackBuffer()
Return the OpenGL name of the back left buffer.
vtkOpenGLRenderWindow::GetTextureUnitManager
vtkTextureUnitManager * GetTextureUnitManager()
Returns its texture unit manager object.
vtkOpenGLRenderWindow::IsPointSpriteBugPresent
virtual bool IsPointSpriteBugPresent()
Returns true if driver has an EGL/OpenGL bug that makes vtkChartsCoreCxx-TestChartDoubleColors and ot...
Definition: vtkOpenGLRenderWindow.h:300
vtkOpenGLRenderWindow::RestoreGLState
void RestoreGLState()
Restore OpenGL state at end of the rendering.
vtkOpenGLRenderWindow::Initialized
bool Initialized
Definition: vtkOpenGLRenderWindow.h:501
vtkOpenGLRenderWindow::GetFrontLeftBuffer
unsigned int GetFrontLeftBuffer()
Return the OpenGL name of the front left buffer.
vtkX3D::string
@ string
Definition: vtkX3D.h:490
vtkOpenGLRenderWindow::CreateHardwareOffScreenBuffers
int CreateHardwareOffScreenBuffers(int width, int height, bool bind=false)
vtkOpenGLRenderWindow::OpenGLSupportTested
bool OpenGLSupportTested
Definition: vtkOpenGLRenderWindow.h:386
vtkOpenGLRenderWindow::GetFrontRightBuffer
unsigned int GetFrontRightBuffer()
Return the OpenGL name of the front right buffer.
vtkOpenGLRenderWindow::GetRGBAPixelData
virtual float * GetRGBAPixelData(int x, int y, int x2, int y2, int front)
Set/Get the pixel data of an image, transmitted as RGBARGBA...
vtkOpenGLRenderWindow::GetUseOffScreenBuffers
virtual bool GetUseOffScreenBuffers()
vtkRenderWindow::MakeCurrent
virtual void MakeCurrent()=0
Attempt to make this window the current graphics context for the calling thread.
vtkOpenGLRenderWindow::GetPixelData
virtual int GetPixelData(int x, int y, int x2, int y2, int front, unsigned char *data)
vtkOpenGLRenderWindow::vtkOpenGLRenderWindow
vtkOpenGLRenderWindow()
vtkOpenGLRenderWindow::ReleaseGraphicsResources
virtual void ReleaseGraphicsResources(vtkRenderWindow *)
Free up any graphics resources associated with this window a value of NULL means the context may alre...
vtkOpenGLRenderWindow::DestroyWindow
virtual void DestroyWindow()=0
Destroy a not-off-screen window.
vtkOpenGLRenderWindow::InitializeTextureInternalFormats
void InitializeTextureInternalFormats()
vtkOpenGLRenderWindow::GetGlobalMaximumNumberOfMultiSamples
static int GetGlobalMaximumNumberOfMultiSamples()
vtkOpenGLRenderWindow::GLStateIntegers
std::map< std::string, int > GLStateIntegers
Definition: vtkOpenGLRenderWindow.h:473
vtkOpenGLRenderWindow::GetColorBufferSizes
int GetColorBufferSizes(int *rgba)
Get the size of the color buffer.
vtkOpenGLRenderWindow::SetSize
virtual void SetSize(int, int)
vtkOpenGLRenderWindow
OpenGL rendering window.
Definition: vtkOpenGLRenderWindow.h:42
vtkOpenGLRenderWindow::ReleaseRGBAPixelData
virtual void ReleaseRGBAPixelData(float *data)
vtkOpenGLRenderWindow::GetDepthBufferSize
int GetDepthBufferSize()
Get the size of the depth buffer.
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:87
vtkStdString
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:49
vtkOpenGLRenderWindow::GetRGBAPixelData
virtual int GetRGBAPixelData(int x, int y, int x2, int y2, int front, vtkFloatArray *data)
vtkOpenGLRenderWindow::UnbindHardwareOffScreenBuffers
void UnbindHardwareOffScreenBuffers()
vtkOpenGLRenderWindow::SetGlobalMaximumNumberOfMultiSamples
static void SetGlobalMaximumNumberOfMultiSamples(int val)
Set/Get the maximum number of multisamples.
vtkOpenGLRenderWindow::PushContext
virtual void PushContext()
Ability to push and pop this window's context as the current context.
Definition: vtkOpenGLRenderWindow.h:375
vtkOpenGLRenderWindow::SetRGBAPixelData
virtual int SetRGBAPixelData(int x, int y, int x2, int y2, vtkFloatArray *data, int front, int blend=0)
vtkOpenGLVertexArrayObject
The VertexArrayObject class uses, or emulates, vertex array objects.
Definition: vtkOpenGLVertexArrayObject.h:36
vtkOpenGLRenderWindow::GetRGBACharPixelData
virtual int GetRGBACharPixelData(int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data)
vtkOpenGLRenderWindow::Initialize
virtual void Initialize(void)
Initialize the rendering window.
Definition: vtkOpenGLRenderWindow.h:344
vtkOpenGLRenderWindow::CreateAWindow
virtual void CreateAWindow()=0
Create a not-off-screen window.
vtkOpenGLRenderWindow::LastGraphicError
unsigned int LastGraphicError
Definition: vtkOpenGLRenderWindow.h:487
vtkOpenGLRenderWindow::GetRGBACharPixelData
int GetRGBACharPixelData(int x, int y, int x2, int y2, int front, unsigned char *data)
vtkOpenGLRenderWindow::SetSize
virtual void SetSize(int a[2])
Set the size of the window in screen coordinates in pixels.