Rendering/vtkTextProperty.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00033 #ifndef __vtkTextProperty_h
00034 #define __vtkTextProperty_h
00035
00036 #include "vtkObject.h"
00037
00038 class VTK_RENDERING_EXPORT vtkTextProperty : public vtkObject
00039 {
00040 public:
00041 vtkTypeRevisionMacro(vtkTextProperty,vtkObject);
00042 void PrintSelf(ostream& os, vtkIndent indent);
00043
00046 static vtkTextProperty *New();
00047
00049
00050 vtkSetVector3Macro(Color,double);
00051 vtkGetVectorMacro(Color,double,3);
00053
00055
00057 vtkSetMacro(Opacity,double);
00058 vtkGetMacro(Opacity,double);
00060
00062
00064 vtkSetClampMacro(FontFamily,int,VTK_ARIAL,VTK_TIMES);
00065 vtkGetMacro(FontFamily, int);
00066 void SetFontFamilyToArial() { this->SetFontFamily(VTK_ARIAL); };
00067 void SetFontFamilyToCourier() { this->SetFontFamily(VTK_COURIER);};
00068 void SetFontFamilyToTimes() { this->SetFontFamily(VTK_TIMES); };
00069 char *GetFontFamilyAsString();
00071
00073
00074 vtkSetClampMacro(FontSize,int,0,VTK_LARGE_INTEGER);
00075 vtkGetMacro(FontSize, int);
00077
00079
00080 vtkSetMacro(Bold, int);
00081 vtkGetMacro(Bold, int);
00082 vtkBooleanMacro(Bold, int);
00084
00086
00087 vtkSetMacro(Italic, int);
00088 vtkGetMacro(Italic, int);
00089 vtkBooleanMacro(Italic, int);
00091
00093
00094 vtkSetMacro(Shadow, int);
00095 vtkGetMacro(Shadow, int);
00096 vtkBooleanMacro(Shadow, int);
00098
00100
00101 vtkSetMacro(AntiAliasing, int);
00102 vtkGetMacro(AntiAliasing, int);
00103 vtkBooleanMacro(AntiAliasing, int);
00105
00107
00111 static int GetGlobalAntiAliasing();
00112 static void SetGlobalAntiAliasing(int val);
00113 static void SetGlobalAntiAliasingToSome()
00114 { vtkTextProperty::SetGlobalAntiAliasing(VTK_TEXT_GLOBAL_ANTIALIASING_SOME); };
00115 static void SetGlobalAntiAliasingToNone()
00116 { vtkTextProperty::SetGlobalAntiAliasing(VTK_TEXT_GLOBAL_ANTIALIASING_NONE); };
00117 static void SetGlobalAntiAliasingToAll()
00118 { vtkTextProperty::SetGlobalAntiAliasing(VTK_TEXT_GLOBAL_ANTIALIASING_ALL); };
00120
00122
00124 vtkSetClampMacro(Justification,int,VTK_TEXT_LEFT,VTK_TEXT_RIGHT);
00125 vtkGetMacro(Justification,int);
00126 void SetJustificationToLeft()
00127 { this->SetJustification(VTK_TEXT_LEFT);};
00128 void SetJustificationToCentered()
00129 { this->SetJustification(VTK_TEXT_CENTERED);};
00130 void SetJustificationToRight()
00131 { this->SetJustification(VTK_TEXT_RIGHT);};
00132 char *GetJustificationAsString();
00134
00136
00138 vtkSetClampMacro(VerticalJustification,int,VTK_TEXT_BOTTOM,VTK_TEXT_TOP);
00139 vtkGetMacro(VerticalJustification,int);
00140 void SetVerticalJustificationToBottom()
00141 {this->SetVerticalJustification(VTK_TEXT_BOTTOM);};
00142 void SetVerticalJustificationToCentered()
00143 {this->SetVerticalJustification(VTK_TEXT_CENTERED);};
00144 void SetVerticalJustificationToTop()
00145 {this->SetVerticalJustification(VTK_TEXT_TOP);};
00146 char *GetVerticalJustificationAsString();
00148
00150
00154 vtkSetMacro(LineOffset, double);
00155 vtkGetMacro(LineOffset, double);
00156 vtkSetMacro(LineSpacing, double);
00157 vtkGetMacro(LineSpacing, double);
00159
00161 void ShallowCopy(vtkTextProperty *tprop);
00162
00164
00166 void SetFaceFileName(const char *);
00167 vtkGetStringMacro(FaceFileName);
00169
00170 protected:
00171 vtkTextProperty();
00172 ~vtkTextProperty();
00173
00174 double Color[3];
00175 double Opacity;
00176 int FontFamily;
00177 int FontSize;
00178 int Bold;
00179 int Italic;
00180 int Shadow;
00181 int AntiAliasing;
00182 int Justification;
00183 int VerticalJustification;
00184 double LineOffset;
00185 double LineSpacing;
00186 char *FaceFileName;
00187
00188 private:
00189 vtkTextProperty(const vtkTextProperty&);
00190 void operator=(const vtkTextProperty&);
00191 };
00192
00193 inline char *vtkTextProperty::GetFontFamilyAsString(void)
00194 {
00195 if (this->FontFamily == VTK_ARIAL)
00196 {
00197 return (char *)"Arial";
00198 }
00199 else if (this->FontFamily == VTK_COURIER)
00200 {
00201 return (char *)"Courier";
00202 }
00203 else if (this->FontFamily == VTK_TIMES)
00204 {
00205 return (char *)"Times";
00206 }
00207 return (char *)"Unknown";
00208 }
00209
00210 inline char *vtkTextProperty::GetJustificationAsString(void)
00211 {
00212 if (this->Justification == VTK_TEXT_LEFT)
00213 {
00214 return (char *)"Left";
00215 }
00216 else if (this->Justification == VTK_TEXT_CENTERED)
00217 {
00218 return (char *)"Centered";
00219 }
00220 else if (this->Justification == VTK_TEXT_RIGHT)
00221 {
00222 return (char *)"Right";
00223 }
00224 return (char *)"Unknown";
00225 }
00226
00227 inline char *vtkTextProperty::GetVerticalJustificationAsString(void)
00228 {
00229 if (this->VerticalJustification == VTK_TEXT_BOTTOM)
00230 {
00231 return (char *)"Bottom";
00232 }
00233 else if (this->VerticalJustification == VTK_TEXT_CENTERED)
00234 {
00235 return (char *)"Centered";
00236 }
00237 else if (this->VerticalJustification == VTK_TEXT_TOP)
00238 {
00239 return (char *)"Top";
00240 }
00241 return (char *)"Unknown";
00242 }
00243
00244 #endif