VTK  9.3.0
vtkCheckerboardRepresentation.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
32 #ifndef vtkCheckerboardRepresentation_h
33 #define vtkCheckerboardRepresentation_h
34 
35 #include "vtkInteractionWidgetsModule.h" // For export macro
37 
38 VTK_ABI_NAMESPACE_BEGIN
40 class vtkImageActor;
42 
43 class VTKINTERACTIONWIDGETS_EXPORT vtkCheckerboardRepresentation : public vtkWidgetRepresentation
44 {
45 public:
50 
52 
56  void PrintSelf(ostream& os, vtkIndent indent) override;
58 
60 
64  vtkGetObjectMacro(Checkerboard, vtkImageCheckerboard);
66 
68 
71  void SetImageActor(vtkImageActor* imageActor);
72  vtkGetObjectMacro(ImageActor, vtkImageActor);
74 
76 
81  vtkSetClampMacro(CornerOffset, double, 0.0, 0.4);
82  vtkGetMacro(CornerOffset, double);
84 
85  enum
86  {
87  TopSlider = 0,
90  LeftSlider
91  };
92 
97  void SliderValueChanged(int sliderNum);
98 
100 
109  vtkGetObjectMacro(TopRepresentation, vtkSliderRepresentation3D);
110  vtkGetObjectMacro(RightRepresentation, vtkSliderRepresentation3D);
111  vtkGetObjectMacro(BottomRepresentation, vtkSliderRepresentation3D);
112  vtkGetObjectMacro(LeftRepresentation, vtkSliderRepresentation3D);
114 
116 
119  void BuildRepresentation() override;
120  void GetActors(vtkPropCollection*) override;
122  int RenderOverlay(vtkViewport* viewport) override;
123  int RenderOpaqueGeometry(vtkViewport* viewport) override;
127 
128 protected:
131 
132  // Instances that this class manipulates
135 
136  // The internal widgets for each side
141 
142  // The corner offset
143  double CornerOffset;
144 
145  // Direction index of image actor's plane normal
147 
148 private:
150  void operator=(const vtkCheckerboardRepresentation&) = delete;
151 };
152 
153 VTK_ABI_NAMESPACE_END
154 #endif
represent the vtkCheckerboardWidget
void SetImageActor(vtkImageActor *imageActor)
Specify an instance of vtkImageActor to decorate.
int RenderOverlay(vtkViewport *viewport) override
Methods required by superclass.
void GetActors(vtkPropCollection *) override
Methods required by superclass.
void SetCheckerboard(vtkImageCheckerboard *chkrbrd)
Specify an instance of vtkImageCheckerboard to manipulate.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard VTK methods.
int RenderOpaqueGeometry(vtkViewport *viewport) override
Methods required by superclass.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Methods required by superclass.
void SliderValueChanged(int sliderNum)
This method is invoked by the vtkCheckerboardWidget() when a value of some slider has changed.
void SetRightRepresentation(vtkSliderRepresentation3D *)
Set and get the instances of vtkSliderRepresentation used to implement this representation.
vtkSliderRepresentation3D * RightRepresentation
vtkSliderRepresentation3D * LeftRepresentation
void SetLeftRepresentation(vtkSliderRepresentation3D *)
Set and get the instances of vtkSliderRepresentation used to implement this representation.
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
Methods required by superclass.
void BuildRepresentation() override
Methods required by superclass.
void SetBottomRepresentation(vtkSliderRepresentation3D *)
Set and get the instances of vtkSliderRepresentation used to implement this representation.
vtkSliderRepresentation3D * TopRepresentation
~vtkCheckerboardRepresentation() override
void ReleaseGraphicsResources(vtkWindow *w) override
Methods required by superclass.
vtkSliderRepresentation3D * BottomRepresentation
void SetTopRepresentation(vtkSliderRepresentation3D *)
Set and get the instances of vtkSliderRepresentation used to implement this representation.
static vtkCheckerboardRepresentation * New()
Instantiate class.
draw an image in a rendered 3D scene
Definition: vtkImageActor.h:47
show two images at once using a checkboard pattern
a simple class to control print indentation
Definition: vtkIndent.h:38
an ordered list of Props
provide the representation for a vtkSliderWidget with a 3D skin
abstract specification for Viewports
Definition: vtkViewport.h:54
abstract class defines interface between the widget and widget representation classes
window superclass for vtkRenderWindow
Definition: vtkWindow.h:37
int vtkTypeBool
Definition: vtkABI.h:64