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
23 #ifndef vtkCheckerboardRepresentation_h
24 #define vtkCheckerboardRepresentation_h
25 
26 #include "vtkInteractionWidgetsModule.h" // For export macro
28 
29 VTK_ABI_NAMESPACE_BEGIN
31 class vtkImageActor;
33 
34 class VTKINTERACTIONWIDGETS_EXPORT vtkCheckerboardRepresentation : public vtkWidgetRepresentation
35 {
36 public:
41 
43 
47  void PrintSelf(ostream& os, vtkIndent indent) override;
49 
51 
55  vtkGetObjectMacro(Checkerboard, vtkImageCheckerboard);
57 
59 
62  void SetImageActor(vtkImageActor* imageActor);
63  vtkGetObjectMacro(ImageActor, vtkImageActor);
65 
67 
72  vtkSetClampMacro(CornerOffset, double, 0.0, 0.4);
73  vtkGetMacro(CornerOffset, double);
75 
76  enum
77  {
78  TopSlider = 0,
81  LeftSlider
82  };
83 
88  void SliderValueChanged(int sliderNum);
89 
91 
100  vtkGetObjectMacro(TopRepresentation, vtkSliderRepresentation3D);
101  vtkGetObjectMacro(RightRepresentation, vtkSliderRepresentation3D);
102  vtkGetObjectMacro(BottomRepresentation, vtkSliderRepresentation3D);
103  vtkGetObjectMacro(LeftRepresentation, vtkSliderRepresentation3D);
105 
107 
110  void BuildRepresentation() override;
111  void GetActors(vtkPropCollection*) override;
113  int RenderOverlay(vtkViewport* viewport) override;
114  int RenderOpaqueGeometry(vtkViewport* viewport) override;
118 
119 protected:
122 
123  // Instances that this class manipulates
126 
127  // The internal widgets for each side
132 
133  // The corner offset
134  double CornerOffset;
135 
136  // Direction index of image actor's plane normal
138 
139 private:
141  void operator=(const vtkCheckerboardRepresentation&) = delete;
142 };
143 
144 VTK_ABI_NAMESPACE_END
145 #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:38
show two images at once using a checkboard pattern
a simple class to control print indentation
Definition: vtkIndent.h:29
an ordered list of Props
provide the representation for a vtkSliderWidget with a 3D skin
abstract specification for Viewports
Definition: vtkViewport.h:45
abstract class defines interface between the widget and widget representation classes
window superclass for vtkRenderWindow
Definition: vtkWindow.h:28
int vtkTypeBool
Definition: vtkABI.h:64