VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkCameraPass.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 =========================================================================*/ 00031 #ifndef vtkCameraPass_h 00032 #define vtkCameraPass_h 00033 00034 #include "vtkRenderingOpenGL2Module.h" // For export macro 00035 #include "vtkRenderPass.h" 00036 00037 class VTKRENDERINGOPENGL2_EXPORT vtkCameraPass : public vtkRenderPass 00038 { 00039 public: 00040 static vtkCameraPass *New(); 00041 vtkTypeMacro(vtkCameraPass,vtkRenderPass); 00042 void PrintSelf(ostream& os, vtkIndent indent); 00043 00044 //BTX 00046 00048 virtual void Render(const vtkRenderState *s); 00049 //ETX 00051 00054 void ReleaseGraphicsResources(vtkWindow *w); 00055 00057 00061 vtkGetObjectMacro(DelegatePass,vtkRenderPass); 00062 virtual void SetDelegatePass(vtkRenderPass *delegatePass); 00064 00066 00068 vtkSetMacro(AspectRatioOverride, double); 00069 vtkGetMacro(AspectRatioOverride, double); 00070 protected: 00072 00073 vtkCameraPass(); 00074 00076 00077 virtual ~vtkCameraPass(); 00078 virtual void GetTiledSizeAndOrigin( 00079 const vtkRenderState* render_state, 00080 int* width, int* height, int *originX, 00081 int* originY); 00083 00084 vtkRenderPass *DelegatePass; 00085 00086 double AspectRatioOverride; 00087 private: 00088 vtkCameraPass(const vtkCameraPass&); // Not implemented. 00089 void operator=(const vtkCameraPass&); // Not implemented. 00090 }; 00091 00092 #endif