00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00028 #ifndef __vtkPen_h
00029 #define __vtkPen_h
00030
00031 #include "vtkObject.h"
00032 #include "vtkColor.h"
00033
00034 class VTK_CHARTS_EXPORT vtkPen : public vtkObject
00035 {
00036 public:
00037 vtkTypeMacro(vtkPen, vtkObject);
00038 virtual void PrintSelf(ostream &os, vtkIndent indent);
00039
00040 static vtkPen *New();
00041
00042
00044
00045 enum {
00046 NO_PEN,
00047 SOLID_LINE,
00048 DASH_LINE,
00049 DOT_LINE,
00050 DASH_DOT_LINE,
00051 DASH_DOT_DOT_LINE};
00053
00054
00057 void SetLineType(int type);
00058
00060 int GetLineType();
00061
00064 void SetColorF(double color[3]);
00065
00068 void SetColorF(double r, double g, double b);
00069
00072 void SetColorF(double r, double g, double b, double a);
00073
00076 void SetOpacityF(double a);
00077
00080 void SetColor(unsigned char color[3]);
00081
00084 void SetColor(unsigned char r, unsigned char g, unsigned char b);
00085
00087
00089 void SetColor(unsigned char r, unsigned char g, unsigned char b,
00090 unsigned char a);
00092
00095 void SetOpacity(unsigned char a);
00096
00099 void GetColorF(double color[3]);
00100
00102 void GetColor(unsigned char color[3]);
00103
00106 unsigned char GetOpacity();
00107
00109 unsigned char * GetColor() { return this->Color; }
00110
00112
00113 vtkSetMacro(Width, float);
00114 vtkGetMacro(Width, float);
00116
00118 void DeepCopy(vtkPen *pen);
00119
00120
00121 protected:
00122 vtkPen();
00123 ~vtkPen();
00124
00126
00127 unsigned char* Color;
00128 vtkColor4ub PenColor;
00130
00132 float Width;
00133
00135 int LineType;
00136
00137 private:
00138 vtkPen(const vtkPen &);
00139 void operator=(const vtkPen &);
00140
00141 };
00142
00143 #endif //__vtkPen_h