VTK
vtkAbstractMapper3D.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAbstractMapper3D.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 =========================================================================*/
32 #ifndef vtkAbstractMapper3D_h
33 #define vtkAbstractMapper3D_h
34 
35 #include "vtkRenderingCoreModule.h" // For export macro
36 #include "vtkAbstractMapper.h"
37 
38 class vtkWindow;
39 class vtkDataSet;
40 class vtkMatrix4x4;
41 
42 class VTKRENDERINGCORE_EXPORT vtkAbstractMapper3D : public vtkAbstractMapper
43 {
44 public:
46  void PrintSelf(ostream& os, vtkIndent indent) override;
47 
53  virtual double *GetBounds() VTK_SIZEHINT(6) = 0;
54 
58  virtual void GetBounds(double bounds[6]);
59 
61 
64  double *GetCenter() VTK_SIZEHINT(3);
65  void GetCenter(double center[3])
66  {
67  double *rc = this->GetCenter();
68  center[0] = rc[0]; center[1] = rc[1]; center[2] = rc[2];
69  }
71 
75  double GetLength();
76 
81  virtual int IsARayCastMapper()
82  { return 0; }
83 
89  { return 0; }
90 
95  void GetClippingPlaneInDataCoords(
96  vtkMatrix4x4 *propMatrix, int i, double planeEquation[4]);
97 
98 protected:
100  ~vtkAbstractMapper3D() override {}
101 
102  double Bounds[6];
103  double Center[3];
104 
105 private:
106  vtkAbstractMapper3D(const vtkAbstractMapper3D&) = delete;
107  void operator=(const vtkAbstractMapper3D&) = delete;
108 };
109 
110 #endif
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:35
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
window superclass for vtkRenderWindow
Definition: vtkWindow.h:34
a simple class to control print indentation
Definition: vtkIndent.h:33
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(...)
abstract class specifies interface to map data
virtual int IsARenderIntoImageMapper()
Is this a "render into image" mapper? A subclass would return 1 if the mapper produces an image by re...
virtual int IsARayCastMapper()
Is this a ray cast mapper? A subclass would return 1 if the ray caster is needed to generate an image...