00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkImageTranslateExtent.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00041 #ifndef __vtkImageTranslateExtent_h 00042 #define __vtkImageTranslateExtent_h 00043 00044 #include "vtkImageToImageFilter.h" 00045 00046 class VTK_IMAGING_EXPORT vtkImageTranslateExtent : public vtkImageToImageFilter 00047 { 00048 public: 00049 static vtkImageTranslateExtent *New(); 00050 vtkTypeRevisionMacro(vtkImageTranslateExtent,vtkImageToImageFilter); 00051 void PrintSelf(ostream& os, vtkIndent indent); 00052 00054 00055 vtkSetVector3Macro(Translation, int); 00056 vtkGetVector3Macro(Translation, int); 00058 00059 protected: 00060 vtkImageTranslateExtent(); 00061 ~vtkImageTranslateExtent() {}; 00062 00063 int Translation[3]; 00064 00065 void ComputeInputUpdateExtent(int extent[6], int wholeExtent[6]); 00066 void ExecuteInformation(vtkImageData *inData, vtkImageData *outData); 00067 void ExecuteInformation() { 00068 this->vtkImageToImageFilter::ExecuteInformation(); }; 00069 void ExecuteData(vtkDataObject *data); 00070 private: 00071 vtkImageTranslateExtent(const vtkImageTranslateExtent&); // Not implemented. 00072 void operator=(const vtkImageTranslateExtent&); // Not implemented. 00073 }; 00074 00075 #endif 00076 00077 00078