VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkRTAnalyticSource.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 =========================================================================*/ 00026 #ifndef __vtkRTAnalyticSource_h 00027 #define __vtkRTAnalyticSource_h 00028 00029 #include "vtkImageAlgorithm.h" 00030 00031 class VTK_IMAGING_EXPORT vtkRTAnalyticSource : public vtkImageAlgorithm 00032 { 00033 public: 00034 static vtkRTAnalyticSource *New(); 00035 vtkTypeRevisionMacro(vtkRTAnalyticSource,vtkImageAlgorithm); 00036 void PrintSelf(ostream& os, vtkIndent indent); 00037 00039 00041 void SetWholeExtent(int xMinx, int xMax, int yMin, int yMax, 00042 int zMin, int zMax); 00043 vtkGetVector6Macro(WholeExtent, int); 00045 00047 00048 vtkSetVector3Macro(Center, double); 00049 vtkGetVector3Macro(Center, double); 00051 00053 00054 vtkSetMacro(Maximum, double); 00055 vtkGetMacro(Maximum, double); 00057 00059 00060 vtkSetMacro(StandardDeviation, double); 00061 vtkGetMacro(StandardDeviation, double); 00063 00065 00066 vtkSetMacro(XFreq, double); 00067 vtkGetMacro(XFreq, double); 00069 00071 00072 vtkSetMacro(YFreq, double); 00073 vtkGetMacro(YFreq, double); 00075 00077 00078 vtkSetMacro(ZFreq, double); 00079 vtkGetMacro(ZFreq, double); 00081 00083 00084 vtkSetMacro(XMag, double); 00085 vtkGetMacro(XMag, double); 00087 00089 00090 vtkSetMacro(YMag, double); 00091 vtkGetMacro(YMag, double); 00093 00095 00096 vtkSetMacro(ZMag, double); 00097 vtkGetMacro(ZMag, double); 00099 00101 00102 vtkSetMacro(SubsampleRate, int); 00103 vtkGetMacro(SubsampleRate, int); 00105 00106 protected: 00111 vtkRTAnalyticSource(); 00112 00114 00115 ~vtkRTAnalyticSource() 00116 { 00117 } 00119 00120 double XFreq; 00121 double YFreq; 00122 double ZFreq; 00123 double XMag; 00124 double YMag; 00125 double ZMag; 00126 double StandardDeviation; 00127 int WholeExtent[6]; 00128 double Center[3]; 00129 double Maximum; 00130 int SubsampleRate; 00131 00132 virtual int RequestInformation(vtkInformation *request, 00133 vtkInformationVector **inputVector, 00134 vtkInformationVector *outputVector); 00135 virtual void ExecuteData(vtkDataObject *data); 00136 private: 00137 vtkRTAnalyticSource(const vtkRTAnalyticSource&); // Not implemented. 00138 void operator=(const vtkRTAnalyticSource&); // Not implemented. 00139 }; 00140 00141 00142 #endif