00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00026 #ifndef __vtkColorSeries_h
00027 #define __vtkColorSeries_h
00028 
00029 #include "vtkObject.h"
00030 #include "vtkColor.h" 
00031 
00032 class VTK_CHARTS_EXPORT vtkColorSeries : public vtkObject
00033 {
00034 public:
00035   vtkTypeMacro(vtkColorSeries, vtkObject);
00036   virtual void PrintSelf(ostream &os, vtkIndent indent);
00037 
00039   static vtkColorSeries* New();
00040 
00041 
00043 
00044   enum {
00045     SPECTRUM = 0, 
00046     WARM,         
00047     COOL,         
00048     BLUES,        
00049     WILD_FLOWER,  
00050     CITRUS,       
00051     CUSTOM        
00052     };
00054 
00055 
00057   void SetColorScheme(int scheme);
00058 
00060 
00061   vtkGetMacro(ColorScheme, int);
00063 
00065   int GetNumberOfColors();
00066 
00067 
00070   vtkColor3ub GetColor(int index) const;
00071 
00074   vtkColor3ub GetColorRepeating(int index) const;
00075 
00078   void SetColor(int index, const vtkColor3ub &color);
00079 
00081   void AddColor(const vtkColor3ub &color);
00082 
00084   void InsertColor(int index, const vtkColor3ub &color);
00085 
00086 
00088   void RemoveColor(int index);
00089 
00091   void ClearColors();
00092 
00094   void DeepCopy(vtkColorSeries *chartColors);
00095 
00096 
00097 protected:
00098   vtkColorSeries();
00099   ~vtkColorSeries();
00100 
00102 
00103   class Private;
00104   Private *Storage;
00106 
00108   int ColorScheme;
00109 
00110 private:
00111   vtkColorSeries(const vtkColorSeries &); 
00112   void operator=(const vtkColorSeries &);   
00113 
00114 };
00115 
00116 #endif //__vtkColorSeries_h