vtkImageActor.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00052 #ifndef __vtkImageActor_h
00053 #define __vtkImageActor_h
00054
00055 #include "vtkProp3D.h"
00056
00057 class vtkPropCollection;
00058 class vtkRenderer;
00059 class vtkImageData;
00060
00061 class VTK_RENDERING_EXPORT vtkImageActor : public vtkProp3D
00062 {
00063 public:
00064 vtkTypeRevisionMacro(vtkImageActor,vtkProp3D);
00065 void PrintSelf(ostream& os, vtkIndent indent);
00066
00068 static vtkImageActor *New();
00069
00071
00072 virtual void SetInput(vtkImageData *);
00073 vtkGetObjectMacro(Input,vtkImageData);
00075
00077
00078 vtkGetMacro(Interpolate,int);
00079 vtkSetMacro(Interpolate,int);
00080 vtkBooleanMacro(Interpolate,int);
00082
00084
00086 vtkSetClampMacro(Opacity,double,0.0,1.0);
00087 vtkGetMacro(Opacity,double);
00089
00091
00093 void SetDisplayExtent(int extent[6]);
00094 void SetDisplayExtent(int minX, int maxX, int minY, int maxY,
00095 int minZ, int maxZ);
00096 void GetDisplayExtent(int extent[6]);
00097 int *GetDisplayExtent() {return this->DisplayExtent;}
00099
00101
00105 double *GetBounds();
00106 void GetBounds(double bounds[6]) { this->Superclass::GetBounds(bounds); };
00108
00110
00113 double *GetDisplayBounds();
00114 void GetDisplayBounds(double bounds[6]);
00116
00118 int GetSliceNumber();
00119
00120
00122
00125 int RenderTranslucentGeometry(vtkViewport *viewport);
00126 int RenderOpaqueGeometry(vtkViewport *viewport);
00127 virtual void Render(vtkRenderer *) {};
00129
00130
00132
00139 void SetZSlice(int z) {this->SetDisplayExtent(
00140 this->DisplayExtent[0], this->DisplayExtent[1],
00141 this->DisplayExtent[2], this->DisplayExtent[3], z, z);
00142 };
00144
00145 int GetZSlice() { return this->DisplayExtent[4];};
00146 int GetWholeZMin();
00147 int GetWholeZMax();
00148
00149 protected:
00150 vtkImageActor();
00151 ~vtkImageActor();
00152
00153 int Interpolate;
00154 double Opacity;
00155 vtkImageData* Input;
00156 int DisplayExtent[6];
00157 double DisplayBounds[6];
00158
00159 private:
00160 vtkImageActor(const vtkImageActor&);
00161 void operator=(const vtkImageActor&);
00162 };
00163
00164 #endif
00165