Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

Rendering/vtkImageMapper.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkImageMapper.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00029 #ifndef __vtkImageMapper_h
00030 #define __vtkImageMapper_h
00031 
00032 #include "vtkMapper2D.h"
00033 
00034 class vtkWindow;
00035 class vtkViewport;
00036 class vtkActor2D;
00037 class vtkImageData;
00038 
00039 class VTK_RENDERING_EXPORT vtkImageMapper : public vtkMapper2D
00040 {
00041 public:
00042   vtkTypeRevisionMacro(vtkImageMapper,vtkMapper2D);
00043   static vtkImageMapper *New();
00044   void PrintSelf(ostream& os, vtkIndent indent);
00045 
00047   unsigned long int GetMTime();
00048 
00050 
00051   vtkSetMacro(ColorWindow, double);
00052   vtkGetMacro(ColorWindow, double);
00054   
00056 
00057   vtkSetMacro(ColorLevel, double);
00058   vtkGetMacro(ColorLevel, double);
00060 
00062 
00069   vtkSetMacro(ZSlice,int);
00070   vtkGetMacro(ZSlice,int);
00071   int GetWholeZMin();
00072   int GetWholeZMax();
00074 
00076   void RenderStart(vtkViewport* viewport, vtkActor2D* actor);
00077 
00079   virtual void RenderData(vtkViewport*, vtkImageData*, vtkActor2D* )=0;
00080 
00082 
00083   double GetColorShift();
00084   double GetColorScale();
00086 
00087   // Public for templated functions. * *  Should remove this * *
00088   int DisplayExtent[6];
00089 
00091 
00092   virtual void SetInput(vtkImageData *input);
00093   vtkImageData *GetInput();
00095 
00097 
00100   vtkSetMacro(RenderToRectangle,int);
00101   vtkGetMacro(RenderToRectangle,int);
00102   vtkBooleanMacro(RenderToRectangle,int);
00104 
00106 
00110   vtkSetMacro(UseCustomExtents,int);
00111   vtkGetMacro(UseCustomExtents,int);
00112   vtkBooleanMacro(UseCustomExtents,int);
00114 
00116 
00119   vtkSetVectorMacro(CustomDisplayExtents,int,4);
00120   vtkGetVectorMacro(CustomDisplayExtents,int,4);
00122 
00123 protected:
00124   vtkImageMapper();
00125   ~vtkImageMapper();
00126 
00127   double ColorWindow;
00128   double ColorLevel;
00129 
00130   int PositionAdjustment[2];
00131   int ZSlice;
00132   int UseCustomExtents;
00133   int CustomDisplayExtents[4];
00134   int RenderToRectangle;
00135 private:
00136   vtkImageMapper(const vtkImageMapper&);  // Not implemented.
00137   void operator=(const vtkImageMapper&);  // Not implemented.
00138 };
00139 
00140 
00141 
00142 #endif
00143 
00144