00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkImageCursor3D.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 =========================================================================*/ 00040 #ifndef __vtkImageCursor3D_h 00041 #define __vtkImageCursor3D_h 00042 00043 #include "vtkImageInPlaceFilter.h" 00044 00045 class VTK_IMAGING_EXPORT vtkImageCursor3D : public vtkImageInPlaceFilter 00046 { 00047 public: 00048 static vtkImageCursor3D *New(); 00049 vtkTypeRevisionMacro(vtkImageCursor3D,vtkImageInPlaceFilter); 00050 void PrintSelf(ostream& os, vtkIndent indent); 00051 00052 00054 00055 vtkSetVector3Macro(CursorPosition, float); 00056 vtkGetVector3Macro(CursorPosition, float); 00058 00060 00061 vtkSetMacro(CursorValue, float); 00062 vtkGetMacro(CursorValue, float); 00064 00066 00068 vtkSetMacro(CursorRadius, int); 00069 vtkGetMacro(CursorRadius, int); 00071 00072 00073 protected: 00074 vtkImageCursor3D(); 00075 ~vtkImageCursor3D() {}; 00076 00077 float CursorPosition[3]; 00078 float CursorValue; 00079 int CursorRadius; 00080 00081 // not threaded because it's too simple a filter 00082 void ExecuteData(vtkDataObject *outData); 00083 private: 00084 vtkImageCursor3D(const vtkImageCursor3D&); // Not implemented. 00085 void operator=(const vtkImageCursor3D&); // Not implemented. 00086 }; 00087 00088 00089 00090 #endif 00091 00092 00093