VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImageSinusoidSource.h 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 =========================================================================*/ 00025 #ifndef __vtkImageSinusoidSource_h 00026 #define __vtkImageSinusoidSource_h 00027 00028 #include "vtkImagingSourcesModule.h" // For export macro 00029 #include "vtkImageAlgorithm.h" 00030 00031 class VTKIMAGINGSOURCES_EXPORT vtkImageSinusoidSource : public vtkImageAlgorithm 00032 { 00033 public: 00034 static vtkImageSinusoidSource *New(); 00035 vtkTypeMacro(vtkImageSinusoidSource,vtkImageAlgorithm); 00036 void PrintSelf(ostream& os, vtkIndent indent); 00037 00039 00040 void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, 00041 int zMin, int zMax); 00043 00045 00047 void SetDirection(double,double,double); 00048 void SetDirection(double dir[3]); 00049 vtkGetVector3Macro(Direction, double); 00051 00053 00054 vtkSetMacro(Period, double); 00055 vtkGetMacro(Period, double); 00057 00059 00060 vtkSetMacro(Phase, double); 00061 vtkGetMacro(Phase, double); 00063 00065 00066 vtkSetMacro(Amplitude, double); 00067 vtkGetMacro(Amplitude, double); 00069 00070 protected: 00071 vtkImageSinusoidSource(); 00072 ~vtkImageSinusoidSource() {}; 00073 00074 int WholeExtent[6]; 00075 double Direction[3]; 00076 double Period; 00077 double Phase; 00078 double Amplitude; 00079 00080 virtual int RequestInformation (vtkInformation *, vtkInformationVector**, vtkInformationVector *); 00081 virtual void ExecuteDataWithInformation(vtkDataObject *data, vtkInformation* outInfo); 00082 private: 00083 vtkImageSinusoidSource(const vtkImageSinusoidSource&); // Not implemented. 00084 void operator=(const vtkImageSinusoidSource&); // Not implemented. 00085 }; 00086 00087 00088 #endif 00089 00090 00091