VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPlaybackRepresentation.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 __vtkPlaybackRepresentation_h 00030 #define __vtkPlaybackRepresentation_h 00031 00032 #include "vtkInteractionWidgetsModule.h" // For export macro 00033 #include "vtkBorderRepresentation.h" 00034 00035 class vtkRenderer; 00036 class vtkRenderWindowInteractor; 00037 class vtkPoints; 00038 class vtkPolyData; 00039 class vtkTransformPolyDataFilter; 00040 class vtkPolyDataMapper2D; 00041 class vtkProperty2D; 00042 class vtkActor2D; 00043 00044 class VTKINTERACTIONWIDGETS_EXPORT vtkPlaybackRepresentation : public vtkBorderRepresentation 00045 { 00046 public: 00048 static vtkPlaybackRepresentation *New(); 00049 00051 00052 vtkTypeMacro(vtkPlaybackRepresentation,vtkBorderRepresentation); 00053 void PrintSelf(ostream& os, vtkIndent indent); 00055 00057 00059 vtkGetObjectMacro(Property,vtkProperty2D); 00061 00063 00064 virtual void Play() {} 00065 virtual void Stop() {} 00066 virtual void ForwardOneFrame() {} 00067 virtual void BackwardOneFrame() {} 00068 virtual void JumpToBeginning() {} 00069 virtual void JumpToEnd() {} 00071 00073 00074 virtual void BuildRepresentation(); 00075 virtual void GetSize(double size[2]) 00076 {size[0]=12.0; size[1]=2.0;} 00078 00080 00082 virtual void GetActors2D(vtkPropCollection*); 00083 virtual void ReleaseGraphicsResources(vtkWindow*); 00084 virtual int RenderOverlay(vtkViewport*); 00085 virtual int RenderOpaqueGeometry(vtkViewport*); 00086 virtual int RenderTranslucentPolygonalGeometry(vtkViewport*); 00087 virtual int HasTranslucentPolygonalGeometry(); 00089 00090 protected: 00091 vtkPlaybackRepresentation(); 00092 ~vtkPlaybackRepresentation(); 00093 00094 // representation geometry 00095 vtkPoints *Points; 00096 vtkPolyData *PolyData; 00097 vtkTransformPolyDataFilter *TransformFilter; 00098 vtkPolyDataMapper2D *Mapper; 00099 vtkProperty2D *Property; 00100 vtkActor2D *Actor; 00101 00102 private: 00103 vtkPlaybackRepresentation(const vtkPlaybackRepresentation&); //Not implemented 00104 void operator=(const vtkPlaybackRepresentation&); //Not implemented 00105 }; 00106 00107 #endif