VTK  9.3.20240424
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#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
29
30VTK_ABI_NAMESPACE_BEGIN
31class vtkWindow;
32class vtkDataSet;
33class vtkMatrix4x4;
34
35class VTKRENDERINGCORE_EXPORT VTK_MARSHALAUTO vtkAbstractMapper3D : public vtkAbstractMapper
36{
37public:
39 void PrintSelf(ostream& os, vtkIndent indent) override;
40
46 virtual double* GetBounds() VTK_SIZEHINT(6) = 0;
47
51 virtual void GetBounds(double bounds[6]);
52
54
57 double* GetCenter() VTK_SIZEHINT(3);
58 void GetCenter(double center[3])
59 {
60 double* rc = this->GetCenter();
61 center[0] = rc[0];
62 center[1] = rc[1];
63 center[2] = rc[2];
64 }
66
70 double GetLength();
71
76 virtual vtkTypeBool IsARayCastMapper() { return 0; }
77
82 virtual vtkTypeBool IsARenderIntoImageMapper() { return 0; }
83
88 void GetClippingPlaneInDataCoords(vtkMatrix4x4* propMatrix, int i, double planeEquation[4]);
89
90protected:
92 ~vtkAbstractMapper3D() override = default;
93
94 double Bounds[6];
95 double Center[3];
96
97private:
99 void operator=(const vtkAbstractMapper3D&) = delete;
100};
101
102VTK_ABI_NAMESPACE_END
103#endif
abstract class specifies interface to map 3D data
virtual double * GetBounds()=0
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax,...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkAbstractMapper3D() override=default
void GetClippingPlaneInDataCoords(vtkMatrix4x4 *propMatrix, int i, double planeEquation[4])
Get the ith clipping plane as a homogeneous plane equation.
virtual vtkTypeBool IsARayCastMapper()
Is this a ray cast mapper? A subclass would return 1 if the ray caster is needed to generate an image...
virtual vtkTypeBool IsARenderIntoImageMapper()
Is this a "render into image" mapper? A subclass would return 1 if the mapper produces an image by re...
double GetLength()
Return the diagonal length of this mappers bounding box.
abstract class specifies interface to map data
abstract class to specify dataset behavior
Definition vtkDataSet.h:166
a simple class to control print indentation
Definition vtkIndent.h:108
represent and manipulate 4x4 transformation matrices
window superclass for vtkRenderWindow
Definition vtkWindow.h:48
int vtkTypeBool
Definition vtkABI.h:64
#define VTK_SIZEHINT(...)
#define VTK_MARSHALAUTO