VTK  9.7.1
vtkRectangularButtonSource.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
35 #ifndef vtkRectangularButtonSource_h
36 #define vtkRectangularButtonSource_h
37 
38 #include "vtkButtonSource.h"
39 #include "vtkFiltersSourcesModule.h" // For export macro
40 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
41 
42 VTK_ABI_NAMESPACE_BEGIN
43 class vtkCellArray;
44 class vtkFloatArray;
45 class vtkPoints;
46 
47 class VTKFILTERSSOURCES_EXPORT VTK_MARSHALAUTO vtkRectangularButtonSource : public vtkButtonSource
48 {
49 public:
50  void PrintSelf(ostream& os, vtkIndent indent) override;
52 
57 
59 
62  vtkSetClampMacro(Width, double, 0.0, VTK_DOUBLE_MAX);
63  vtkGetMacro(Width, double);
65 
67 
70  vtkSetClampMacro(Height, double, 0.0, VTK_DOUBLE_MAX);
71  vtkGetMacro(Height, double);
73 
75 
78  vtkSetClampMacro(Depth, double, 0.0, VTK_DOUBLE_MAX);
79  vtkGetMacro(Depth, double);
81 
83 
89  vtkSetClampMacro(BoxRatio, double, 0.0, VTK_DOUBLE_MAX);
90  vtkGetMacro(BoxRatio, double);
92 
94 
102  vtkSetClampMacro(TextureRatio, double, 0.0, VTK_DOUBLE_MAX);
103  vtkGetMacro(TextureRatio, double);
105 
107 
114  vtkSetClampMacro(TextureHeightRatio, double, 0.0, VTK_DOUBLE_MAX);
115  vtkGetMacro(TextureHeightRatio, double);
117 
119 
124  vtkSetMacro(OutputPointsPrecision, int);
125  vtkGetMacro(OutputPointsPrecision, int);
127 
128 protected:
130  ~vtkRectangularButtonSource() override = default;
131 
133 
134  double Width;
135  double Height;
136  double Depth;
137 
138  double BoxRatio;
139  double TextureRatio;
141 
143 
144 private:
146  void operator=(const vtkRectangularButtonSource&) = delete;
147 };
148 
149 VTK_ABI_NAMESPACE_END
150 #endif
create a rectangular button
abstract class for creating various button types
#define VTK_DOUBLE_MAX
Definition: vtkType.h:202
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
dynamic, self-adjusting array of float
Definition: vtkFloatArray.h:31
static vtkPolyDataAlgorithm * New()
a simple class to control print indentation
Definition: vtkIndent.h:28
object to represent cell connectivity
Definition: vtkCellArray.h:177
Store zero or more vtkInformation instances.
#define VTK_MARSHALAUTO
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
represent and manipulate 3D points
Definition: vtkPoints.h:30