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 =========================================================================*/ 00038 #ifndef vtkTextActor3D_h 00039 #define vtkTextActor3D_h 00040 00041 #include "vtkRenderingCoreModule.h" // For export macro 00042 #include "vtkProp3D.h" 00043 00044 class vtkImageActor; 00045 class vtkImageData; 00046 class vtkTextProperty; 00047 00048 class VTKRENDERINGCORE_EXPORT vtkTextActor3D : public vtkProp3D 00049 { 00050 public: 00051 static vtkTextActor3D *New(); 00052 vtkTypeMacro(vtkTextActor3D,vtkProp3D); 00053 void PrintSelf(ostream& os, vtkIndent indent); 00054 00056 00057 vtkSetStringMacro(Input); 00058 vtkGetStringMacro(Input); 00060 00062 00063 virtual void SetTextProperty(vtkTextProperty *p); 00064 vtkGetObjectMacro(TextProperty,vtkTextProperty); 00066 00069 void ShallowCopy(vtkProp *prop); 00070 00072 00073 virtual double *GetBounds(); 00074 void GetBounds(double bounds[6]) {this->vtkProp3D::GetBounds( bounds );} 00076 00081 virtual int GetBoundingBox(int bbox[4]); 00082 00083 //BTX 00088 virtual void ReleaseGraphicsResources(vtkWindow *); 00089 00091 00094 int RenderOpaqueGeometry(vtkViewport* viewport); 00095 virtual int RenderTranslucentPolygonalGeometry(vtkViewport* viewport); 00096 int RenderOverlay(vtkViewport* viewport); 00098 00100 00101 virtual int HasTranslucentPolygonalGeometry(); 00102 //ETX 00104 00105 protected: 00106 vtkTextActor3D(); 00107 ~vtkTextActor3D(); 00108 00109 char *Input; 00110 00111 vtkImageActor *ImageActor; 00112 vtkImageData *ImageData; 00113 vtkTextProperty *TextProperty; 00114 00115 vtkTimeStamp BuildTime; 00116 00117 virtual int UpdateImageActor(); 00118 00119 private: 00120 vtkTextActor3D(const vtkTextActor3D&); // Not implemented. 00121 void operator=(const vtkTextActor3D&); // Not implemented. 00122 }; 00123 00124 00125 #endif