VTK
vtkImageActor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageActor.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 =========================================================================*/
36 #ifndef vtkImageActor_h
37 #define vtkImageActor_h
38 
39 #include "vtkRenderingCoreModule.h" // For export macro
40 #include "vtkImageSlice.h"
41 
42 class vtkAlgorithm;
43 class vtkPropCollection;
44 class vtkRenderer;
45 class vtkImageData;
46 
47 
49 {
50 public:
52  void PrintSelf(ostream& os, vtkIndent indent);
53 
55  static vtkImageActor *New();
56 
58 
61  virtual void SetInputData(vtkImageData *);
62  virtual vtkImageData *GetInput();
64 
66 
68  virtual void SetInterpolate(int);
69  virtual int GetInterpolate();
70  vtkBooleanMacro(Interpolate,int);
72 
74 
76  virtual void SetOpacity(double);
77  virtual double GetOpacity();
78  double GetOpacityMinValue() { return 0.0; }
79  double GetOpacityMaxValue() { return 1.0; }
81 
83 
85  void SetDisplayExtent(int extent[6]);
86  void SetDisplayExtent(int minX, int maxX, int minY, int maxY,
87  int minZ, int maxZ);
88  void GetDisplayExtent(int extent[6]);
89  int *GetDisplayExtent() {return this->DisplayExtent;}
91 
93 
97  double *GetBounds();
98  void GetBounds(double bounds[6]) { this->Superclass::GetBounds(bounds); };
100 
102 
105  double *GetDisplayBounds();
106  void GetDisplayBounds(double bounds[6]);
108 
110 
112  int GetSliceNumber();
113  int GetSliceNumberMax();
114  int GetSliceNumberMin();
116 
118 
125  void SetZSlice(int z) {this->SetDisplayExtent(
126  this->DisplayExtent[0], this->DisplayExtent[1],
127  this->DisplayExtent[2], this->DisplayExtent[3], z, z);
128  };
129  int GetZSlice() { return this->DisplayExtent[4];};
130  int GetWholeZMin();
131  int GetWholeZMax();
133 
136  virtual int HasTranslucentPolygonalGeometry();
137 
138 protected:
139  vtkImageActor();
140  ~vtkImageActor();
141 
144  static int GetOrientationFromExtent(const int extent[6]);
145 
146  int DisplayExtent[6];
147  double DisplayBounds[6];
148 
149  // Convenience function that returns the input of the mapper
150  vtkAlgorithm *GetInputAlgorithm();
151 
152 private:
153  vtkImageActor(const vtkImageActor&); // Not implemented.
154  void operator=(const vtkImageActor&); // Not implemented.
155 };
156 
157 #endif
void SetZSlice(int z)
int * GetDisplayExtent()
Definition: vtkImageActor.h:89
abstract specification for renderers
Definition: vtkRenderer.h:63
void GetBounds(double bounds[6])
Definition: vtkImageActor.h:98
a list of Props
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:61
draw an image in a rendered 3D scene
Definition: vtkImageActor.h:48
void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual int HasTranslucentPolygonalGeometry()
topologically and geometrically regular array of data
Definition: vtkImageData.h:44
double GetOpacityMinValue()
Definition: vtkImageActor.h:78
double GetOpacityMaxValue()
Definition: vtkImageActor.h:79
represents an image in a 3D scene
Definition: vtkImageSlice.h:51
#define VTKRENDERINGCORE_EXPORT
static vtkImageSlice * New()
virtual double * GetBounds()=0
double * GetBounds()