VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImageMapToColors.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 =========================================================================*/ 00034 #ifndef __vtkImageMapToColors_h 00035 #define __vtkImageMapToColors_h 00036 00037 00038 #include "vtkThreadedImageAlgorithm.h" 00039 00040 class vtkScalarsToColors; 00041 00042 class VTK_IMAGING_EXPORT vtkImageMapToColors : public vtkThreadedImageAlgorithm 00043 { 00044 public: 00045 static vtkImageMapToColors *New(); 00046 vtkTypeMacro(vtkImageMapToColors,vtkThreadedImageAlgorithm); 00047 void PrintSelf(ostream& os, vtkIndent indent); 00048 00050 00051 virtual void SetLookupTable(vtkScalarsToColors*); 00052 vtkGetObjectMacro(LookupTable,vtkScalarsToColors); 00054 00056 00057 vtkSetMacro(OutputFormat,int); 00058 vtkGetMacro(OutputFormat,int); 00059 void SetOutputFormatToRGBA() { this->OutputFormat = VTK_RGBA; }; 00060 void SetOutputFormatToRGB() { this->OutputFormat = VTK_RGB; }; 00061 void SetOutputFormatToLuminanceAlpha() { this->OutputFormat = VTK_LUMINANCE_ALPHA; }; 00062 void SetOutputFormatToLuminance() { this->OutputFormat = VTK_LUMINANCE; }; 00064 00066 00067 vtkSetMacro(ActiveComponent,int); 00068 vtkGetMacro(ActiveComponent,int); 00070 00072 00075 vtkSetMacro(PassAlphaToOutput,int); 00076 vtkBooleanMacro(PassAlphaToOutput,int); 00077 vtkGetMacro(PassAlphaToOutput,int); 00079 00081 virtual unsigned long GetMTime(); 00082 00083 protected: 00084 vtkImageMapToColors(); 00085 ~vtkImageMapToColors(); 00086 00087 virtual int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00088 00089 void ThreadedRequestData(vtkInformation *request, 00090 vtkInformationVector **inputVector, 00091 vtkInformationVector *outputVector, 00092 vtkImageData ***inData, vtkImageData **outData, 00093 int extent[6], int id); 00094 00095 virtual int RequestData(vtkInformation *request, 00096 vtkInformationVector **inputVector, 00097 vtkInformationVector *outputVector); 00098 00099 vtkScalarsToColors *LookupTable; 00100 int OutputFormat; 00101 00102 int ActiveComponent; 00103 int PassAlphaToOutput; 00104 00105 int DataWasPassed; 00106 private: 00107 vtkImageMapToColors(const vtkImageMapToColors&); // Not implemented. 00108 void operator=(const vtkImageMapToColors&); // Not implemented. 00109 }; 00110 00111 #endif 00112 00113 00114 00115 00116 00117 00118