VTK  9.1.20211115
vtkStereoCompositor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkStereoCompositor.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 =========================================================================*/
27 #ifndef vtkStereoCompositor_h
28 #define vtkStereoCompositor_h
29 
30 #include "vtkObject.h"
31 #include "vtkRenderingCoreModule.h" // For export macro
32 
34 
35 class VTKRENDERINGCORE_EXPORT vtkStereoCompositor : public vtkObject
36 {
37 public:
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
43 
49  bool RedBlue(vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight);
50 
51  bool Anaglyph(vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight,
52  float colorSaturation, const int colorMask[2]);
53 
54  bool Interlaced(
55  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
56 
57  bool Dresden(
58  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
59 
61  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
62 
64  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
66 
67 protected:
70 
71  bool Validate(
72  vtkUnsignedCharArray* rgbLeft, vtkUnsignedCharArray* rgbRight, const int* size = nullptr);
73 
74 private:
76  void operator=(const vtkStereoCompositor&) = delete;
77 };
78 
79 #endif
a simple class to control print indentation
Definition: vtkIndent.h:113
abstract base class for most VTK objects
Definition: vtkObject.h:82
helper class to generate composited stereo images.
static vtkStereoCompositor * New()
bool Anaglyph(vtkUnsignedCharArray *rgbLeftNResult, vtkUnsignedCharArray *rgbRight, float colorSaturation, const int colorMask[2])
Methods for compositing left and right eye images based on various supported modes.
~vtkStereoCompositor() override
bool SplitViewportHorizontal(vtkUnsignedCharArray *rgbLeftNResult, vtkUnsignedCharArray *rgbRight, const int size[2])
Methods for compositing left and right eye images based on various supported modes.
bool Dresden(vtkUnsignedCharArray *rgbLeftNResult, vtkUnsignedCharArray *rgbRight, const int size[2])
Methods for compositing left and right eye images based on various supported modes.
bool Validate(vtkUnsignedCharArray *rgbLeft, vtkUnsignedCharArray *rgbRight, const int *size=nullptr)
bool Checkerboard(vtkUnsignedCharArray *rgbLeftNResult, vtkUnsignedCharArray *rgbRight, const int size[2])
Methods for compositing left and right eye images based on various supported modes.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool RedBlue(vtkUnsignedCharArray *rgbLeftNResult, vtkUnsignedCharArray *rgbRight)
Methods for compositing left and right eye images based on various supported modes.
bool Interlaced(vtkUnsignedCharArray *rgbLeftNResult, vtkUnsignedCharArray *rgbRight, const int size[2])
Methods for compositing left and right eye images based on various supported modes.
dynamic, self-adjusting array of unsigned char
@ size
Definition: vtkX3D.h:259