00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPiecewiseFunctionItem.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 =========================================================================*/ 00015 00016 #ifndef __vtkPiecewiseFunctionItem_h 00017 #define __vtkPiecewiseFunctionItem_h 00018 00019 #include "vtkScalarsToColorsItem.h" 00020 00021 class vtkPiecewiseFunction; 00022 class vtkImageData; 00023 00025 class VTK_CHARTS_EXPORT vtkPiecewiseFunctionItem: public vtkScalarsToColorsItem 00026 { 00027 public: 00028 static vtkPiecewiseFunctionItem* New(); 00029 vtkTypeMacro(vtkPiecewiseFunctionItem, vtkScalarsToColorsItem); 00030 virtual void PrintSelf(ostream &os, vtkIndent indent); 00031 00032 // Description: 00033 // Reimplemented to return the range of the piecewise function 00034 virtual void GetBounds(double bounds[4]); 00035 00036 void SetPiecewiseFunction(vtkPiecewiseFunction* t); 00037 vtkGetObjectMacro(PiecewiseFunction, vtkPiecewiseFunction); 00038 00039 protected: 00040 vtkPiecewiseFunctionItem(); 00041 virtual ~vtkPiecewiseFunctionItem(); 00042 00043 // Description 00044 // Compute the texture from the PiecewiseFunction 00045 virtual void ComputeTexture(); 00046 00047 vtkPiecewiseFunction* PiecewiseFunction; 00048 00049 private: 00050 vtkPiecewiseFunctionItem(const vtkPiecewiseFunctionItem &); // Not implemented. 00051 void operator=(const vtkPiecewiseFunctionItem &); // Not implemented. 00052 }; 00053 00054 #endif