Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MITKLookupTable_H_HEADER_INCLUDED_C1EBD53D
00020 #define MITKLookupTable_H_HEADER_INCLUDED_C1EBD53D
00021
00022 #include "mitkCommon.h"
00023 #include "vtkLookupTable.h"
00024 #include <itkDataObject.h>
00025 #include <itkObjectFactory.h>
00026
00027 class vtkColorTransferFunction;
00028 class vtkPiecewiseFunction;
00029
00030 namespace mitk
00031 {
00032
00033
00034
00035
00036
00037
00038 class MITK_CORE_EXPORT LookupTable : public itk::DataObject
00039 {
00040 public:
00044 typedef unsigned char RawLookupTableType;
00045
00046 mitkClassMacro( LookupTable, itk::DataObject );
00047
00048 itkNewMacro( Self );
00049
00053 virtual vtkLookupTable* GetVtkLookupTable() const;
00054
00055 virtual RawLookupTableType * GetRawLookupTable() const;
00056
00057 virtual void SetVtkLookupTable( vtkLookupTable* lut );
00058
00059 virtual void ChangeOpacityForAll( float opacity );
00060
00061 virtual void ChangeOpacity(int index, float opacity );
00062
00063
00067 virtual bool operator==( const mitk::LookupTable& LookupTable ) const;
00068
00072 virtual bool operator!=( const LookupTable& LookupTable ) const;
00073
00078 virtual LookupTable& operator=( const LookupTable& LookupTable );
00079
00084 virtual void UpdateOutputInformation( );
00085
00092 virtual void SetRequestedRegionToLargestPossibleRegion( );
00093
00098 virtual bool RequestedRegionIsOutsideOfTheBufferedRegion( );
00099
00105 virtual bool VerifyRequestedRegion( );
00106
00111 virtual void SetRequestedRegion( itk::DataObject *data );
00112
00113 LookupTable();
00114 virtual ~LookupTable();
00115
00116 void CreateColorTransferFunction(vtkColorTransferFunction*& colorFunction);
00117 void CreateOpacityTransferFunction(vtkPiecewiseFunction*& opacityFunction);
00118 void CreateGradientTransferFunction(vtkPiecewiseFunction*& gradientFunction);
00119
00120 protected:
00121
00122 vtkLookupTable* m_LookupTable;
00123
00124 private:
00125
00126 };
00127
00128 }
00129
00130
00131
00132 #endif