00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkTexturedActor2D.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 =========================================================================*/ 00029 #ifndef __vtkTexturedActor2D_h 00030 #define __vtkTexturedActor2D_h 00031 00032 #include "vtkActor2D.h" 00033 00034 class vtkProp; 00035 class vtkTexture; 00036 class vtkViewport; 00037 class vtkWindow; 00038 00039 class VTK_RENDERING_EXPORT vtkTexturedActor2D : public vtkActor2D 00040 { 00041 public: 00042 static vtkTexturedActor2D* New(); 00043 void PrintSelf(ostream& os, vtkIndent indent); 00044 vtkTypeMacro(vtkTexturedActor2D, vtkActor2D); 00045 00047 00050 virtual void SetTexture(vtkTexture* texture); 00051 vtkGetObjectMacro(Texture, vtkTexture); 00053 00057 virtual void ReleaseGraphicsResources(vtkWindow* win); 00058 00060 00061 virtual int RenderOverlay(vtkViewport* viewport); 00062 virtual int RenderOpaqueGeometry(vtkViewport* viewport); 00063 virtual int RenderTranslucentPolygonalGeometry(vtkViewport* viewport); 00065 00067 virtual unsigned long int GetMTime(); 00068 00070 virtual void ShallowCopy(vtkProp* prop); 00071 00072 protected: 00073 vtkTexturedActor2D(); 00074 ~vtkTexturedActor2D(); 00075 00076 vtkTexture* Texture; 00077 00078 private: 00079 vtkTexturedActor2D(const vtkTexturedActor2D&); // Not implemented. 00080 void operator=(const vtkTexturedActor2D&); // Not implemented. 00081 }; 00082 00083 #endif 00084