VTK  9.0.2
vtkCursor3D.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCursor3D.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 =========================================================================*/
30 #ifndef vtkCursor3D_h
31 #define vtkCursor3D_h
32 
33 #include "vtkFiltersGeneralModule.h" // For export macro
34 #include "vtkPolyDataAlgorithm.h"
35 
36 class VTKFILTERSGENERAL_EXPORT vtkCursor3D : public vtkPolyDataAlgorithm
37 {
38 public:
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
46  static vtkCursor3D* New();
47 
49 
52  void SetModelBounds(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
53  void SetModelBounds(const double bounds[6]);
54  vtkGetVectorMacro(ModelBounds, double, 6);
56 
58 
65  void SetFocalPoint(double x[3]);
66  void SetFocalPoint(double x, double y, double z)
67  {
68  double xyz[3];
69  xyz[0] = x;
70  xyz[1] = y;
71  xyz[2] = z;
72  this->SetFocalPoint(xyz);
73  }
74  vtkGetVectorMacro(FocalPoint, double, 3);
76 
78 
81  vtkSetMacro(Outline, vtkTypeBool);
82  vtkGetMacro(Outline, vtkTypeBool);
83  vtkBooleanMacro(Outline, vtkTypeBool);
85 
87 
90  vtkSetMacro(Axes, vtkTypeBool);
91  vtkGetMacro(Axes, vtkTypeBool);
92  vtkBooleanMacro(Axes, vtkTypeBool);
94 
96 
99  vtkSetMacro(XShadows, vtkTypeBool);
100  vtkGetMacro(XShadows, vtkTypeBool);
101  vtkBooleanMacro(XShadows, vtkTypeBool);
103 
105 
108  vtkSetMacro(YShadows, vtkTypeBool);
109  vtkGetMacro(YShadows, vtkTypeBool);
110  vtkBooleanMacro(YShadows, vtkTypeBool);
112 
114 
117  vtkSetMacro(ZShadows, vtkTypeBool);
118  vtkGetMacro(ZShadows, vtkTypeBool);
119  vtkBooleanMacro(ZShadows, vtkTypeBool);
121 
123 
128  vtkSetMacro(TranslationMode, vtkTypeBool);
129  vtkGetMacro(TranslationMode, vtkTypeBool);
130  vtkBooleanMacro(TranslationMode, vtkTypeBool);
132 
134 
139  vtkSetMacro(Wrap, vtkTypeBool);
140  vtkGetMacro(Wrap, vtkTypeBool);
141  vtkBooleanMacro(Wrap, vtkTypeBool);
143 
147  vtkPolyData* GetFocus() { return this->Focus; }
148 
150 
153  void AllOn();
154  void AllOff();
156 
157 protected:
159  ~vtkCursor3D() override;
160 
162 
164  double ModelBounds[6];
165  double FocalPoint[3];
173 
174 private:
175  vtkCursor3D(const vtkCursor3D&) = delete;
176  void operator=(const vtkCursor3D&) = delete;
177 };
178 
179 #endif
generate a 3D cursor representation
Definition: vtkCursor3D.h:37
vtkTypeBool TranslationMode
Definition: vtkCursor3D.h:171
void SetModelBounds(const double bounds[6])
void AllOn()
Turn every part of the 3D cursor on or off.
vtkTypeBool Wrap
Definition: vtkCursor3D.h:172
vtkPolyData * Focus
Definition: vtkCursor3D.h:163
void SetModelBounds(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
Set / get the boundary of the 3D cursor.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkTypeBool YShadows
Definition: vtkCursor3D.h:169
void SetFocalPoint(double x, double y, double z)
Definition: vtkCursor3D.h:66
vtkTypeBool ZShadows
Definition: vtkCursor3D.h:170
vtkTypeBool Axes
Definition: vtkCursor3D.h:167
void AllOff()
void SetFocalPoint(double x[3])
Set/Get the position of cursor focus.
vtkTypeBool Outline
Definition: vtkCursor3D.h:166
vtkTypeBool XShadows
Definition: vtkCursor3D.h:168
~vtkCursor3D() override
vtkPolyData * GetFocus()
Get the focus for this filter.
Definition: vtkCursor3D.h:147
static vtkCursor3D * New()
Construct with model bounds = (-1,1,-1,1,-1,1), focal point = (0,0,0), all parts of cursor visible,...
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:85
int vtkTypeBool
Definition: vtkABI.h:69