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