VTK  9.3.20240419
vtkStereoCompositor.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkStereoCompositor_h
16 #define vtkStereoCompositor_h
17 
18 #include "vtkObject.h"
19 #include "vtkRenderingCoreModule.h" // For export macro
20 
21 VTK_ABI_NAMESPACE_BEGIN
23 
24 class VTKRENDERINGCORE_EXPORT vtkStereoCompositor : public vtkObject
25 {
26 public:
29  void PrintSelf(ostream& os, vtkIndent indent) override;
30 
32 
38  bool RedBlue(vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight);
39 
40  bool Anaglyph(vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight,
41  float colorSaturation, const int colorMask[2]);
42 
43  bool Interlaced(
44  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
45 
46  bool Dresden(
47  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
48 
50  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
51 
53  vtkUnsignedCharArray* rgbLeftNResult, vtkUnsignedCharArray* rgbRight, const int size[2]);
55 
56 protected:
59 
60  bool Validate(
61  vtkUnsignedCharArray* rgbLeft, vtkUnsignedCharArray* rgbRight, const int* size = nullptr);
62 
63 private:
65  void operator=(const vtkStereoCompositor&) = delete;
66 };
67 
68 VTK_ABI_NAMESPACE_END
69 #endif
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:162
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:253