VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkTextActor3D.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 =========================================================================*/ 00041 #ifndef __vtkTextActor3D_h 00042 #define __vtkTextActor3D_h 00043 00044 #include "vtkRenderingFreeTypeModule.h" // For export macro 00045 #include "vtkProp3D.h" 00046 00047 class vtkImageActor; 00048 class vtkImageData; 00049 class vtkTextProperty; 00050 00051 class VTKRENDERINGFREETYPE_EXPORT vtkTextActor3D : public vtkProp3D 00052 { 00053 public: 00054 static vtkTextActor3D *New(); 00055 vtkTypeMacro(vtkTextActor3D,vtkProp3D); 00056 void PrintSelf(ostream& os, vtkIndent indent); 00057 00059 00060 vtkSetStringMacro(Input); 00061 vtkGetStringMacro(Input); 00063 00065 00066 virtual void SetTextProperty(vtkTextProperty *p); 00067 vtkGetObjectMacro(TextProperty,vtkTextProperty); 00069 00072 void ShallowCopy(vtkProp *prop); 00073 00075 00076 virtual double *GetBounds(); 00077 void GetBounds(double bounds[6]) {this->vtkProp3D::GetBounds( bounds );} 00079 00084 virtual int GetBoundingBox(int bbox[4]); 00085 00086 //BTX 00091 virtual void ReleaseGraphicsResources(vtkWindow *); 00092 00094 00097 int RenderOpaqueGeometry(vtkViewport* viewport); 00098 virtual int RenderTranslucentPolygonalGeometry(vtkViewport* viewport); 00099 int RenderOverlay(vtkViewport* viewport); 00101 00103 00104 virtual int HasTranslucentPolygonalGeometry(); 00105 //ETX 00107 00108 protected: 00109 vtkTextActor3D(); 00110 ~vtkTextActor3D(); 00111 00112 char *Input; 00113 00114 vtkImageActor *ImageActor; 00115 vtkImageData *ImageData; 00116 vtkTextProperty *TextProperty; 00117 00118 vtkTimeStamp BuildTime; 00119 00120 virtual int UpdateImageActor(); 00121 00122 private: 00123 vtkTextActor3D(const vtkTextActor3D&); // Not implemented. 00124 void operator=(const vtkTextActor3D&); // Not implemented. 00125 }; 00126 00127 00128 #endif 00129