VTK  9.3.1
vtkAbstractMapper3D.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 vtkAbstractMapper3D_h
24 #define vtkAbstractMapper3D_h
25 
26 #include "vtkAbstractMapper.h"
27 #include "vtkRenderingCoreModule.h" // For export macro
28 
29 VTK_ABI_NAMESPACE_BEGIN
30 class vtkWindow;
31 class vtkDataSet;
32 class vtkMatrix4x4;
33 
34 class VTKRENDERINGCORE_EXPORT vtkAbstractMapper3D : public vtkAbstractMapper
35 {
36 public:
38  void PrintSelf(ostream& os, vtkIndent indent) override;
39 
45  virtual double* GetBounds() VTK_SIZEHINT(6) = 0;
46 
50  virtual void GetBounds(double bounds[6]);
51 
53 
56  double* GetCenter() VTK_SIZEHINT(3);
57  void GetCenter(double center[3])
58  {
59  double* rc = this->GetCenter();
60  center[0] = rc[0];
61  center[1] = rc[1];
62  center[2] = rc[2];
63  }
65 
69  double GetLength();
70 
75  virtual vtkTypeBool IsARayCastMapper() { return 0; }
76 
81  virtual vtkTypeBool IsARenderIntoImageMapper() { return 0; }
82 
87  void GetClippingPlaneInDataCoords(vtkMatrix4x4* propMatrix, int i, double planeEquation[4]);
88 
89 protected:
91  ~vtkAbstractMapper3D() override = default;
92 
93  double Bounds[6];
94  double Center[3];
95 
96 private:
98  void operator=(const vtkAbstractMapper3D&) = delete;
99 };
100 
101 VTK_ABI_NAMESPACE_END
102 #endif
void GetBounds(T a, double bds[6])
virtual vtkTypeBool IsARenderIntoImageMapper()
Is this a "render into image" mapper? A subclass would return 1 if the mapper produces an image by re...
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:30
abstract class to specify dataset behavior
Definition: vtkDataSet.h:52
int vtkTypeBool
Definition: vtkABI.h:64
window superclass for vtkRenderWindow
Definition: vtkWindow.h:27
a simple class to control print indentation
Definition: vtkIndent.h:28
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
abstract class specifies interface to map 3D data
#define VTK_SIZEHINT(...)
virtual vtkTypeBool IsARayCastMapper()
Is this a ray cast mapper? A subclass would return 1 if the ray caster is needed to generate an image...
abstract class specifies interface to map data