VTK  9.1.0
vtkRenderWindow.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRenderWindow.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 =========================================================================*/
159 #ifndef vtkRenderWindow_h
160 #define vtkRenderWindow_h
161 
162 #include "vtkDeprecation.h" // for VTK_DEPRECATED_IN_9_0_0
163 #include "vtkNew.h" // For vtkNew
164 #include "vtkRenderingCoreModule.h" // For export macro
165 #include "vtkSmartPointer.h" // For vtkSmartPointer
166 #include "vtkWindow.h"
167 
168 class vtkFloatArray;
169 class vtkProp;
170 class vtkCollection;
171 class vtkRenderTimerLog;
173 class vtkRenderer;
175 class vtkStereoCompositor;
177 
178 // lets define the different types of stereo
179 #define VTK_STEREO_CRYSTAL_EYES 1
180 #define VTK_STEREO_RED_BLUE 2
181 #define VTK_STEREO_INTERLACED 3
182 #define VTK_STEREO_LEFT 4
183 #define VTK_STEREO_RIGHT 5
184 #define VTK_STEREO_DRESDEN 6
185 #define VTK_STEREO_ANAGLYPH 7
186 #define VTK_STEREO_CHECKERBOARD 8
187 #define VTK_STEREO_SPLITVIEWPORT_HORIZONTAL 9
188 #define VTK_STEREO_FAKE 10
189 #define VTK_STEREO_EMULATE 11
190 
191 #define VTK_CURSOR_DEFAULT 0
192 #define VTK_CURSOR_ARROW 1
193 #define VTK_CURSOR_SIZENE 2
194 #define VTK_CURSOR_SIZENW 3
195 #define VTK_CURSOR_SIZESW 4
196 #define VTK_CURSOR_SIZESE 5
197 #define VTK_CURSOR_SIZENS 6
198 #define VTK_CURSOR_SIZEWE 7
199 #define VTK_CURSOR_SIZEALL 8
200 #define VTK_CURSOR_HAND 9
201 #define VTK_CURSOR_CROSSHAIR 10
202 #define VTK_CURSOR_CUSTOM 11
203 
204 class VTKRENDERINGCORE_EXPORT vtkRenderWindow : public vtkWindow
205 {
206 public:
207  vtkTypeMacro(vtkRenderWindow, vtkWindow);
208  void PrintSelf(ostream& os, vtkIndent indent) override;
209 
215  static vtkRenderWindow* New();
216 
220  virtual void AddRenderer(vtkRenderer*);
221 
226 
231 
235  static const char* GetRenderLibrary();
236 
240  virtual const char* GetRenderingBackend();
241 
246 
250  vtkRendererCollection* GetRenderers() { return this->Renderers; }
251 
260 
262 
265  vtkGetMacro(CapturingGL2PSSpecialProps, int);
267 
272  void Render() override;
273 
277  virtual void Start() {}
278 
282  virtual void End(){};
283 
287  virtual void Finalize() {}
288 
293  virtual void Frame() {}
294 
299  virtual void WaitForCompletion() {}
300 
305  virtual void CopyResultFrame();
306 
313 
315 
321  virtual void HideCursor() {}
322  virtual void ShowCursor() {}
323  virtual void SetCursorPosition(int, int) {}
325 
327 
330  vtkSetMacro(CurrentCursor, int);
331  vtkGetMacro(CurrentCursor, int);
333 
335 
339  vtkSetFilePathMacro(CursorFileName);
340  vtkGetFilePathMacro(CursorFileName);
342 
344 
347  virtual void SetFullScreen(vtkTypeBool) {}
348  vtkGetMacro(FullScreen, vtkTypeBool);
349  vtkBooleanMacro(FullScreen, vtkTypeBool);
351 
353 
358  vtkSetMacro(Borders, vtkTypeBool);
359  vtkGetMacro(Borders, vtkTypeBool);
360  vtkBooleanMacro(Borders, vtkTypeBool);
362 
364 
368  vtkGetMacro(StereoCapableWindow, vtkTypeBool);
369  vtkBooleanMacro(StereoCapableWindow, vtkTypeBool);
370  virtual void SetStereoCapableWindow(vtkTypeBool capable);
372 
374 
377  vtkGetMacro(StereoRender, vtkTypeBool);
379  vtkBooleanMacro(StereoRender, vtkTypeBool);
381 
383 
386  vtkSetMacro(AlphaBitPlanes, vtkTypeBool);
387  vtkGetMacro(AlphaBitPlanes, vtkTypeBool);
388  vtkBooleanMacro(AlphaBitPlanes, vtkTypeBool);
390 
392 
396  vtkSetMacro(PointSmoothing, vtkTypeBool);
397  vtkGetMacro(PointSmoothing, vtkTypeBool);
398  vtkBooleanMacro(PointSmoothing, vtkTypeBool);
400 
402 
406  vtkSetMacro(LineSmoothing, vtkTypeBool);
407  vtkGetMacro(LineSmoothing, vtkTypeBool);
408  vtkBooleanMacro(LineSmoothing, vtkTypeBool);
410 
412 
416  vtkSetMacro(PolygonSmoothing, vtkTypeBool);
417  vtkGetMacro(PolygonSmoothing, vtkTypeBool);
418  vtkBooleanMacro(PolygonSmoothing, vtkTypeBool);
420 
422 
443  vtkGetMacro(StereoType, int);
444  void SetStereoType(int);
445  void SetStereoTypeToCrystalEyes() { this->SetStereoType(VTK_STEREO_CRYSTAL_EYES); }
446  void SetStereoTypeToRedBlue() { this->SetStereoType(VTK_STEREO_RED_BLUE); }
447  void SetStereoTypeToInterlaced() { this->SetStereoType(VTK_STEREO_INTERLACED); }
448  void SetStereoTypeToLeft() { this->SetStereoType(VTK_STEREO_LEFT); }
449  void SetStereoTypeToRight() { this->SetStereoType(VTK_STEREO_RIGHT); }
450  void SetStereoTypeToDresden() { this->SetStereoType(VTK_STEREO_DRESDEN); }
451  void SetStereoTypeToAnaglyph() { this->SetStereoType(VTK_STEREO_ANAGLYPH); }
452  void SetStereoTypeToCheckerboard() { this->SetStereoType(VTK_STEREO_CHECKERBOARD); }
454  {
455  this->SetStereoType(VTK_STEREO_SPLITVIEWPORT_HORIZONTAL);
456  }
457  void SetStereoTypeToFake() { this->SetStereoType(VTK_STEREO_FAKE); }
458  void SetStereoTypeToEmulate() { this->SetStereoType(VTK_STEREO_EMULATE); }
460 
462 
465  const char* GetStereoTypeAsString();
466  static const char* GetStereoTypeAsString(int type);
468 
473  virtual void StereoUpdate();
474 
479  virtual void StereoMidpoint();
480 
485  virtual void StereoRenderComplete();
486 
488 
495  vtkSetClampMacro(AnaglyphColorSaturation, float, 0.0f, 1.0f);
496  vtkGetMacro(AnaglyphColorSaturation, float);
498 
500 
514  vtkSetVector2Macro(AnaglyphColorMask, int);
515  vtkGetVectorMacro(AnaglyphColorMask, int, 2);
517 
523  virtual void WindowRemap() {}
524 
526 
529  vtkSetMacro(SwapBuffers, vtkTypeBool);
530  vtkGetMacro(SwapBuffers, vtkTypeBool);
531  vtkBooleanMacro(SwapBuffers, vtkTypeBool);
533 
535 
547  virtual int SetPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, unsigned char* /*data*/,
548  int /*front*/, int /*right*/ = 0)
549  {
550  return 0;
551  }
552  virtual int SetPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/,
553  vtkUnsignedCharArray* /*data*/, int /*front*/, int /*right*/ = 0)
554  {
555  return 0;
556  }
558 
560 
567  virtual float* GetRGBAPixelData(
568  int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, int /*front*/, int /*right*/ = 0)
569  {
570  return nullptr;
571  }
572  virtual int GetRGBAPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, int /*front*/,
573  vtkFloatArray* /*data*/, int /*right*/ = 0)
574  {
575  return 0;
576  }
577  virtual int SetRGBAPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, float*, int /*front*/,
578  int /*blend*/ = 0, int /*right*/ = 0)
579  {
580  return 0;
581  }
582  virtual int SetRGBAPixelData(
583  int, int, int, int, vtkFloatArray*, int, int /*blend*/ = 0, int /*right*/ = 0)
584  {
585  return 0;
586  }
587  virtual void ReleaseRGBAPixelData(float* /*data*/) {}
588  virtual unsigned char* GetRGBACharPixelData(
589  int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, int /*front*/, int /*right*/ = 0)
590  {
591  return nullptr;
592  }
593  virtual int GetRGBACharPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, int /*front*/,
594  vtkUnsignedCharArray* /*data*/, int /*right*/ = 0)
595  {
596  return 0;
597  }
598  virtual int SetRGBACharPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/,
599  unsigned char* /*data*/, int /*front*/, int /*blend*/ = 0, int /*right*/ = 0)
600  {
601  return 0;
602  }
603  virtual int SetRGBACharPixelData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/,
604  vtkUnsignedCharArray* /*data*/, int /*front*/, int /*blend*/ = 0, int /*right*/ = 0)
605  {
606  return 0;
607  }
609 
611 
616  virtual float* GetZbufferData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/) { return nullptr; }
617  virtual int GetZbufferData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, float* /*z*/)
618  {
619  return 0;
620  }
621  virtual int GetZbufferData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, vtkFloatArray* /*z*/)
622  {
623  return 0;
624  }
625  virtual int SetZbufferData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, float* /*z*/)
626  {
627  return 0;
628  }
629  virtual int SetZbufferData(int /*x*/, int /*y*/, int /*x2*/, int /*y2*/, vtkFloatArray* /*z*/)
630  {
631  return 0;
632  }
633  float GetZbufferDataAtPoint(int x, int y)
634  {
635  float value;
636  this->GetZbufferData(x, y, x, y, &value);
637  return value;
638  }
640 
642 
645  vtkGetMacro(NeverRendered, int);
647 
649 
653  vtkGetMacro(AbortRender, int);
654  vtkSetMacro(AbortRender, int);
655  vtkGetMacro(InAbortCheck, int);
656  vtkSetMacro(InAbortCheck, int);
657  virtual int CheckAbortStatus();
659 
661 
664  VTK_DEPRECATED_IN_9_0_0("Removed in 9.0")
665  vtkTypeBool GetIsPicking();
666  VTK_DEPRECATED_IN_9_0_0("Removed in 9.0")
667  void SetIsPicking(vtkTypeBool);
668  VTK_DEPRECATED_IN_9_0_0("Removed in 9.0")
669  void IsPickingOn();
670  VTK_DEPRECATED_IN_9_0_0("Removed in 9.0")
671  void IsPickingOff();
673 
680  virtual vtkTypeBool GetEventPending() { return 0; }
681 
685  virtual int CheckInRenderStatus() { return this->InRender; }
686 
690  virtual void ClearInRenderStatus() { this->InRender = 0; }
691 
693 
701  virtual void SetDesiredUpdateRate(double);
702  vtkGetMacro(DesiredUpdateRate, double);
704 
706 
712  vtkGetMacro(NumberOfLayers, int);
713  vtkSetClampMacro(NumberOfLayers, int, 1, VTK_INT_MAX);
715 
717 
720  vtkGetObjectMacro(Interactor, vtkRenderWindowInteractor);
722 
727 
732  void UnRegister(vtkObjectBase* o) override;
733 
735 
738  void SetDisplayId(void*) override {}
739  void SetWindowId(void*) override {}
740  virtual void SetNextWindowId(void*) {}
741  void SetParentId(void*) override {}
742  void* GetGenericDisplayId() override { return nullptr; }
743  void* GetGenericWindowId() override { return nullptr; }
744  void* GetGenericParentId() override { return nullptr; }
745  void* GetGenericContext() override { return nullptr; }
746  void* GetGenericDrawable() override { return nullptr; }
747  void SetWindowInfo(const char*) override {}
748  virtual void SetNextWindowInfo(const char*) {}
749  void SetParentInfo(const char*) override {}
751 
756  virtual bool InitializeFromCurrentContext() { return false; }
757 
759 
767  vtkGetObjectMacro(SharedRenderWindow, vtkRenderWindow);
768  virtual bool GetPlatformSupportsRenderWindowSharing() { return false; }
770 
775  virtual bool IsCurrent() { return false; }
776 
784  "Deprecated in 9.1 because no one knows what it's for and nothing uses it")
785  virtual bool IsDrawable();
786 
792  virtual void SetForceMakeCurrent() {}
793 
797  virtual const char* ReportCapabilities() { return "Not Implemented"; }
798 
802  virtual int SupportsOpenGL() { return 0; }
803 
807  virtual vtkTypeBool IsDirect() { return 0; }
808 
813  virtual int GetDepthBufferSize() { return 0; }
814 
819  virtual int GetColorBufferSizes(int* /*rgba*/) { return 0; }
820 
822 
826  virtual void SetMultiSamples(int);
827  vtkGetMacro(MultiSamples, int);
829 
831 
834  vtkSetMacro(StencilCapable, vtkTypeBool);
835  vtkGetMacro(StencilCapable, vtkTypeBool);
836  vtkBooleanMacro(StencilCapable, vtkTypeBool);
838 
840 
846  vtkSetMacro(DeviceIndex, int);
847  vtkGetMacro(DeviceIndex, int);
849 
853  virtual int GetNumberOfDevices() { return 0; }
854 
856 
860  vtkGetMacro(UseSRGBColorSpace, bool);
861  vtkSetMacro(UseSRGBColorSpace, bool);
862  vtkBooleanMacro(UseSRGBColorSpace, bool);
864 
865 protected:
867  ~vtkRenderWindow() override;
868 
869  virtual void DoStereoRender();
870 
875  int OldScreen[5];
890  int InRender;
895  int AnaglyphColorMask[2];
900 
903 
908 
910 
911 private:
912  vtkRenderWindow(const vtkRenderWindow&) = delete;
913  void operator=(const vtkRenderWindow&) = delete;
914 
915  vtkNew<vtkStereoCompositor> StereoCompositor;
916 };
917 
918 #endif
vtkRenderWindow::SharedRenderWindow
vtkRenderWindow * SharedRenderWindow
Definition: vtkRenderWindow.h:909
vtkRenderWindow::SetPixelData
virtual int SetPixelData(int, int, int, int, unsigned char *, int, int=0)
Set/Get the pixel data of an image, transmitted as RGBRGBRGB.
Definition: vtkRenderWindow.h:547
VTK_STEREO_RIGHT
#define VTK_STEREO_RIGHT
Definition: vtkRenderWindow.h:183
vtkRenderWindow::RemoveRenderer
void RemoveRenderer(vtkRenderer *)
Remove a renderer from the list of renderers.
vtkRenderWindow::StereoRender
vtkTypeBool StereoRender
Definition: vtkRenderWindow.h:879
VTK_INT_MAX
#define VTK_INT_MAX
Definition: vtkType.h:155
vtkRenderWindow::PointSmoothing
vtkTypeBool PointSmoothing
Definition: vtkRenderWindow.h:876
vtkRenderWindow::SwapBuffers
vtkTypeBool SwapBuffers
Definition: vtkRenderWindow.h:886
vtkRenderWindow::UnRegister
void UnRegister(vtkObjectBase *o) override
This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.
vtkRenderWindow::NeverRendered
int NeverRendered
Definition: vtkRenderWindow.h:891
vtkRenderWindow::FullScreen
vtkTypeBool FullScreen
Definition: vtkRenderWindow.h:874
vtkRenderWindow::GetZbufferData
virtual int GetZbufferData(int, int, int, int, float *)
Set/Get the zbuffer data from the frame buffer.
Definition: vtkRenderWindow.h:617
VTK_STEREO_RED_BLUE
#define VTK_STEREO_RED_BLUE
Definition: vtkRenderWindow.h:180
vtkRenderWindow::SetRGBAPixelData
virtual int SetRGBAPixelData(int, int, int, int, vtkFloatArray *, int, int=0, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:582
vtkRenderWindow::SetDesiredUpdateRate
virtual void SetDesiredUpdateRate(double)
Set/Get the desired update rate.
vtkRenderWindow::StereoRenderComplete
virtual void StereoRenderComplete()
Handles work required once both views have been rendered when using stereo rendering.
vtkX3D::value
@ value
Definition: vtkX3D.h:226
vtkX3D::type
@ type
Definition: vtkX3D.h:522
vtkRenderWindow::SetRGBACharPixelData
virtual int SetRGBACharPixelData(int, int, int, int, vtkUnsignedCharArray *, int, int=0, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:603
vtkRenderWindow::SetWindowInfo
void SetWindowInfo(const char *) override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:747
vtkFloatArray
dynamic, self-adjusting array of float
Definition: vtkFloatArray.h:145
vtkRenderWindow::DoStereoRender
virtual void DoStereoRender()
vtkRenderWindow::SetStereoTypeToRedBlue
void SetStereoTypeToRedBlue()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:446
vtkUnsignedCharArray
dynamic, self-adjusting array of unsigned char
Definition: vtkUnsignedCharArray.h:145
vtkRenderWindow::SetStereoTypeToCheckerboard
void SetStereoTypeToCheckerboard()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:452
vtkRenderWindow::CursorFileName
char * CursorFileName
Definition: vtkRenderWindow.h:902
vtkRenderWindow::SetWindowId
void SetWindowId(void *) override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:739
vtkSmartPointer< vtkUnsignedCharArray >
vtkRenderWindow::GetZbufferDataAtPoint
float GetZbufferDataAtPoint(int x, int y)
Set/Get the zbuffer data from the frame buffer.
Definition: vtkRenderWindow.h:633
VTK_DEPRECATED_IN_9_1_0
#define VTK_DEPRECATED_IN_9_1_0(reason)
Definition: vtkDeprecation.h:117
vtkRenderWindow::SetInteractor
virtual void SetInteractor(vtkRenderWindowInteractor *)
Set the interactor to the render window.
vtkRenderWindow::GetGenericParentId
void * GetGenericParentId() override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:744
vtkRenderWindow::InRender
int InRender
Definition: vtkRenderWindow.h:890
vtkRenderWindow::SetRGBACharPixelData
virtual int SetRGBACharPixelData(int, int, int, int, unsigned char *, int, int=0, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:598
vtkRenderWindow::Renderers
vtkRendererCollection * Renderers
Definition: vtkRenderWindow.h:871
vtkRenderWindow::SetStereoTypeToEmulate
void SetStereoTypeToEmulate()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:458
vtkRendererCollection
an ordered list of renderers
Definition: vtkRendererCollection.h:144
vtkRenderWindow::SetNextWindowInfo
virtual void SetNextWindowInfo(const char *)
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:748
vtkRenderWindow::InAbortCheck
int InAbortCheck
Definition: vtkRenderWindow.h:889
VTK_STEREO_CRYSTAL_EYES
#define VTK_STEREO_CRYSTAL_EYES
Definition: vtkRenderWindow.h:179
vtkRenderWindow::WaitForCompletion
virtual void WaitForCompletion()
Block the thread until the actual rendering is finished().
Definition: vtkRenderWindow.h:299
VTK_STEREO_SPLITVIEWPORT_HORIZONTAL
#define VTK_STEREO_SPLITVIEWPORT_HORIZONTAL
Definition: vtkRenderWindow.h:187
vtkRenderWindow::GetGenericDrawable
void * GetGenericDrawable() override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:746
vtkRenderWindow::GetGenericDisplayId
void * GetGenericDisplayId() override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:742
vtkRenderWindow::GetRenderers
vtkRendererCollection * GetRenderers()
Return the collection of renderers in the render window.
Definition: vtkRenderWindow.h:250
vtkRenderWindow::SetZbufferData
virtual int SetZbufferData(int, int, int, int, float *)
Set/Get the zbuffer data from the frame buffer.
Definition: vtkRenderWindow.h:625
vtkRenderWindow::WindowRemap
virtual void WindowRemap()
Remap the rendering window.
Definition: vtkRenderWindow.h:523
vtkWindow
window superclass for vtkRenderWindow
Definition: vtkWindow.h:39
vtkRenderWindow::GetZbufferData
virtual float * GetZbufferData(int, int, int, int)
Set/Get the zbuffer data from the frame buffer.
Definition: vtkRenderWindow.h:616
vtkRenderWindow::ShowCursor
virtual void ShowCursor()
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
Definition: vtkRenderWindow.h:322
vtkRenderWindow::StereoType
int StereoType
Definition: vtkRenderWindow.h:880
vtkRenderWindow::AnaglyphColorSaturation
float AnaglyphColorSaturation
Definition: vtkRenderWindow.h:894
vtkRenderWindow::HideCursor
virtual void HideCursor()
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
Definition: vtkRenderWindow.h:321
vtkRenderWindow::CopyResultFrame
virtual void CopyResultFrame()
Performed at the end of the rendering process to generate image.
vtkRenderWindow::vtkGetFilePathMacro
vtkGetFilePathMacro(CursorFileName)
Set/Get the full path to the custom cursor.
vtkRenderWindow::SetDisplayId
void SetDisplayId(void *) override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:738
vtkCollection
create and manipulate ordered lists of objects
Definition: vtkCollection.h:53
vtkRenderWindow::GetPlatformSupportsRenderWindowSharing
virtual bool GetPlatformSupportsRenderWindowSharing()
Set/Get an already existing window that this window should share data with if possible.
Definition: vtkRenderWindow.h:768
vtkRenderWindow::SetZbufferData
virtual int SetZbufferData(int, int, int, int, vtkFloatArray *)
Set/Get the zbuffer data from the frame buffer.
Definition: vtkRenderWindow.h:629
vtkRenderWindow::GetRGBACharPixelData
virtual unsigned char * GetRGBACharPixelData(int, int, int, int, int, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:588
vtkRenderWindow::StereoMidpoint
virtual void StereoMidpoint()
Intermediate method performs operations required between the rendering of the left and right eye.
vtkRenderWindow::Finalize
virtual void Finalize()
Finalize the rendering process.
Definition: vtkRenderWindow.h:287
vtkRenderWindow::SetStereoTypeToAnaglyph
void SetStereoTypeToAnaglyph()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:451
vtkRenderWindow::ReleaseRGBAPixelData
virtual void ReleaseRGBAPixelData(float *)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:587
vtkRenderWindow::DeviceIndex
int DeviceIndex
Definition: vtkRenderWindow.h:899
vtkObjectBase
abstract base class for most VTK objects
Definition: vtkObjectBase.h:70
vtkRenderWindow::SetNextWindowId
virtual void SetNextWindowId(void *)
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:740
vtkRenderWindow::GetColorBufferSizes
virtual int GetColorBufferSizes(int *)
Get the size of the color buffer.
Definition: vtkRenderWindow.h:819
vtkRenderWindow::vtkGetNewMacro
vtkGetNewMacro(RenderTimer, vtkRenderTimerLog)
Get the render timer log for this window.
vtkStereoCompositor
helper class to generate composited stereo images.
Definition: vtkStereoCompositor.h:36
vtkRenderWindow::GetRGBACharPixelData
virtual int GetRGBACharPixelData(int, int, int, int, int, vtkUnsignedCharArray *, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:593
vtkRenderWindow::CurrentCursor
int CurrentCursor
Definition: vtkRenderWindow.h:893
vtkRenderWindow::Interactor
vtkRenderWindowInteractor * Interactor
Definition: vtkRenderWindow.h:883
vtkRenderWindow::SetStereoType
void SetStereoType(int)
Set/Get what type of stereo rendering to use.
VTK_STEREO_INTERLACED
#define VTK_STEREO_INTERLACED
Definition: vtkRenderWindow.h:181
vtkRenderWindow::HasRenderer
int HasRenderer(vtkRenderer *)
Query if a renderer is in the list of renderers.
vtkRenderWindow::MakeRenderWindowInteractor
virtual vtkRenderWindowInteractor * MakeRenderWindowInteractor()
Create an interactor to control renderers in this window.
vtkRenderWindow::CapturingGL2PSSpecialProps
int CapturingGL2PSSpecialProps
Definition: vtkRenderWindow.h:898
vtkRenderWindow::IsDirect
virtual vtkTypeBool IsDirect()
Is this render window using hardware acceleration? 0-false, 1-true.
Definition: vtkRenderWindow.h:807
VTK_STEREO_LEFT
#define VTK_STEREO_LEFT
Definition: vtkRenderWindow.h:182
vtkRenderWindow::SetStereoTypeToLeft
void SetStereoTypeToLeft()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:448
vtkRenderWindow::UseSRGBColorSpace
bool UseSRGBColorSpace
Definition: vtkRenderWindow.h:901
VTK_STEREO_ANAGLYPH
#define VTK_STEREO_ANAGLYPH
Definition: vtkRenderWindow.h:185
vtkRenderWindow::AddRenderer
virtual void AddRenderer(vtkRenderer *)
Add a renderer to the list of renderers.
vtkRenderWindow::StencilCapable
vtkTypeBool StencilCapable
Definition: vtkRenderWindow.h:897
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:113
vtkRenderWindow::Render
void Render() override
Ask each renderer owned by this RenderWindow to render its image and synchronize this process.
VTK_DEPRECATED_IN_9_0_0
#define VTK_DEPRECATED_IN_9_0_0(reason)
Definition: vtkDeprecation.h:126
vtkSmartPointer.h
vtkRenderWindow::StereoCapableWindow
vtkTypeBool StereoCapableWindow
Definition: vtkRenderWindow.h:881
vtkRenderWindow::Borders
vtkTypeBool Borders
Definition: vtkRenderWindow.h:873
vtkRenderWindow::GetRGBAPixelData
virtual float * GetRGBAPixelData(int, int, int, int, int, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:567
vtkRenderWindow::ResultFrame
vtkSmartPointer< vtkUnsignedCharArray > ResultFrame
Definition: vtkRenderWindow.h:885
vtkNew< vtkRenderTimerLog >
vtkRenderWindow::GetZbufferData
virtual int GetZbufferData(int, int, int, int, vtkFloatArray *)
Set/Get the zbuffer data from the frame buffer.
Definition: vtkRenderWindow.h:621
vtkRenderWindow::DesiredUpdateRate
double DesiredUpdateRate
Definition: vtkRenderWindow.h:887
vtkRenderWindow::SetParentInfo
void SetParentInfo(const char *) override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:749
vtkRenderWindow::ReportCapabilities
virtual const char * ReportCapabilities()
Get report of capabilities for the render window.
Definition: vtkRenderWindow.h:797
vtkRenderWindow::SetStereoTypeToRight
void SetStereoTypeToRight()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:449
vtkRenderWindowInteractor
platform-independent render window interaction including picking and frame rate control.
Definition: vtkRenderWindowInteractor.h:192
vtkRenderWindow::SetStereoCapableWindow
virtual void SetStereoCapableWindow(vtkTypeBool capable)
Prescribe that the window be created in a stereo-capable mode.
vtkRenderWindow::Frame
virtual void Frame()
A termination method performed at the end of the rendering process to do things like swapping buffers...
Definition: vtkRenderWindow.h:293
vtkRenderWindow::GetDepthBufferSize
virtual int GetDepthBufferSize()
This method should be defined by the subclass.
Definition: vtkRenderWindow.h:813
vtkRenderWindow::End
virtual void End()
Update the system, if needed, at end of render process.
Definition: vtkRenderWindow.h:282
vtkRenderWindow::SetParentId
void SetParentId(void *) override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:741
vtkRenderTimerLog
Asynchronously measures GPU execution times for a series of events.
Definition: vtkRenderTimerLog.h:81
vtkRenderWindow::AbortCheckTime
double AbortCheckTime
The universal time since the last abort check occurred.
Definition: vtkRenderWindow.h:907
vtkRenderWindow::NumberOfLayers
int NumberOfLayers
Definition: vtkRenderWindow.h:892
vtkRenderWindow::GetStereoTypeAsString
const char * GetStereoTypeAsString()
Returns the stereo type as a string.
vtkRenderWindow::GetNumberOfDevices
virtual int GetNumberOfDevices()
Returns the number of devices (graphics cards) on a system.
Definition: vtkRenderWindow.h:853
vtkProp
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:76
vtkRenderWindow::Start
virtual void Start()
Start the rendering process for a frame.
Definition: vtkRenderWindow.h:277
vtkRenderWindow::SetStereoTypeToCrystalEyes
void SetStereoTypeToCrystalEyes()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:445
vtkRenderWindow::SetCursorPosition
virtual void SetCursorPosition(int, int)
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
Definition: vtkRenderWindow.h:323
vtkRenderWindow::GetRGBAPixelData
virtual int GetRGBAPixelData(int, int, int, int, int, vtkFloatArray *, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:572
vtkRenderWindow::SetPixelData
virtual int SetPixelData(int, int, int, int, vtkUnsignedCharArray *, int, int=0)
Set/Get the pixel data of an image, transmitted as RGBRGBRGB.
Definition: vtkRenderWindow.h:552
vtkNew.h
vtkDeprecation.h
VTK_STEREO_FAKE
#define VTK_STEREO_FAKE
Definition: vtkRenderWindow.h:188
vtkRenderWindow::MultiSamples
int MultiSamples
Definition: vtkRenderWindow.h:896
VTK_STEREO_EMULATE
#define VTK_STEREO_EMULATE
Definition: vtkRenderWindow.h:189
vtkRenderer
abstract specification for renderers
Definition: vtkRenderer.h:182
vtkRenderWindow::SetStereoTypeToFake
void SetStereoTypeToFake()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:457
vtkRenderWindow::SetStereoRender
void SetStereoRender(vtkTypeBool stereo)
Turn on/off stereo rendering.
vtkRenderWindow::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkRenderWindow::SetFullScreen
virtual void SetFullScreen(vtkTypeBool)
Turn on/off rendering full screen window size.
Definition: vtkRenderWindow.h:347
vtkRenderWindow::vtkRenderWindow
vtkRenderWindow()
vtkRenderWindow::AbortRender
int AbortRender
Definition: vtkRenderWindow.h:888
vtkRenderWindow::GetStereoTypeAsString
static const char * GetStereoTypeAsString(int type)
Returns the stereo type as a string.
vtkRenderWindow::StereoUpdate
virtual void StereoUpdate()
Update the system, if needed, due to stereo rendering.
VTK_STEREO_DRESDEN
#define VTK_STEREO_DRESDEN
Definition: vtkRenderWindow.h:184
vtkRenderWindow::SetStereoTypeToDresden
void SetStereoTypeToDresden()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:450
vtkRenderWindow::SetStereoTypeToInterlaced
void SetStereoTypeToInterlaced()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:447
vtkRenderWindow::SupportsOpenGL
virtual int SupportsOpenGL()
Does this render window support OpenGL? 0-false, 1-true.
Definition: vtkRenderWindow.h:802
vtkRenderWindow::AlphaBitPlanes
vtkTypeBool AlphaBitPlanes
Definition: vtkRenderWindow.h:882
vtkRenderWindow::SetRGBAPixelData
virtual int SetRGBAPixelData(int, int, int, int, float *, int, int=0, int=0)
Same as Get/SetPixelData except that the image also contains an alpha component.
Definition: vtkRenderWindow.h:577
vtkRenderWindow::CaptureGL2PSSpecialProps
void CaptureGL2PSSpecialProps(vtkCollection *specialProps)
The GL2PS exporter must handle certain props in a special way (e.g.
vtkRenderWindow::LineSmoothing
vtkTypeBool LineSmoothing
Definition: vtkRenderWindow.h:877
vtkRenderWindow::SetMultiSamples
virtual void SetMultiSamples(int)
Set / Get the number of multisamples to use for hardware antialiasing.
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:205
vtkRenderWindow::InitializeFromCurrentContext
virtual bool InitializeFromCurrentContext()
Initialize the render window from the information associated with the currently activated OpenGL cont...
Definition: vtkRenderWindow.h:756
vtkRenderWindow::GetRenderingBackend
virtual const char * GetRenderingBackend()
What rendering backend has the user requested.
vtkRenderWindow::GetGenericContext
void * GetGenericContext() override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:745
vtkRenderWindow::ClearInRenderStatus
virtual void ClearInRenderStatus()
Clear status (after an exception was thrown for example)
Definition: vtkRenderWindow.h:690
vtkRenderWindow::CheckInRenderStatus
virtual int CheckInRenderStatus()
Are we rendering at the moment.
Definition: vtkRenderWindow.h:685
vtkRenderWindow::IsCurrent
virtual bool IsCurrent()
Tells if this window is the current graphics context for the calling thread.
Definition: vtkRenderWindow.h:775
vtkRenderWindow::GetGenericWindowId
void * GetGenericWindowId() override
Dummy stubs for vtkWindow API.
Definition: vtkRenderWindow.h:743
vtkRenderWindow::SetSharedRenderWindow
virtual void SetSharedRenderWindow(vtkRenderWindow *)
Set/Get an already existing window that this window should share data with if possible.
vtkRenderWindow::New
static vtkRenderWindow * New()
Construct an instance of vtkRenderWindow with its screen size set to 300x300, borders turned on,...
vtkRenderWindow::StereoBuffer
vtkSmartPointer< vtkUnsignedCharArray > StereoBuffer
Definition: vtkRenderWindow.h:884
vtkRenderWindow::vtkSetFilePathMacro
vtkSetFilePathMacro(CursorFileName)
Set/Get the full path to the custom cursor.
vtkRenderWindow::RenderTimer
vtkNew< vtkRenderTimerLog > RenderTimer
Definition: vtkRenderWindow.h:872
vtkWindow.h
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69
vtkRenderWindow::PolygonSmoothing
vtkTypeBool PolygonSmoothing
Definition: vtkRenderWindow.h:878
vtkRenderWindow::GetRenderLibrary
static const char * GetRenderLibrary()
What rendering library has the user requested.
vtkRenderWindow::~vtkRenderWindow
~vtkRenderWindow() override
vtkRenderWindow::SetStereoTypeToSplitViewportHorizontal
void SetStereoTypeToSplitViewportHorizontal()
Set/Get what type of stereo rendering to use.
Definition: vtkRenderWindow.h:453
vtkRenderWindow::CheckAbortStatus
virtual int CheckAbortStatus()
This is a flag that can be set to interrupt a rendering that is in progress.
VTK_STEREO_CHECKERBOARD
#define VTK_STEREO_CHECKERBOARD
Definition: vtkRenderWindow.h:186