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 =========================================================================*/ 00034 #ifndef vtkCameraPass_h 00035 #define vtkCameraPass_h 00036 00037 #include "vtkRenderingOpenGLModule.h" // For export macro 00038 #include "vtkRenderPass.h" 00039 00040 class VTKRENDERINGOPENGL_EXPORT vtkCameraPass : public vtkRenderPass 00041 { 00042 public: 00043 static vtkCameraPass *New(); 00044 vtkTypeMacro(vtkCameraPass,vtkRenderPass); 00045 void PrintSelf(ostream& os, vtkIndent indent); 00046 00047 //BTX 00049 00051 virtual void Render(const vtkRenderState *s); 00052 //ETX 00054 00057 void ReleaseGraphicsResources(vtkWindow *w); 00058 00060 00064 vtkGetObjectMacro(DelegatePass,vtkRenderPass); 00065 virtual void SetDelegatePass(vtkRenderPass *delegatePass); 00067 00069 00071 vtkSetMacro(AspectRatioOverride, double); 00072 vtkGetMacro(AspectRatioOverride, double); 00073 protected: 00075 00076 vtkCameraPass(); 00077 00079 00080 virtual ~vtkCameraPass(); 00081 virtual void GetTiledSizeAndOrigin( 00082 const vtkRenderState* render_state, 00083 int* width, int* height, int *originX, 00084 int* originY); 00086 00087 vtkRenderPass *DelegatePass; 00088 00089 double AspectRatioOverride; 00090 private: 00091 vtkCameraPass(const vtkCameraPass&); // Not implemented. 00092 void operator=(const vtkCameraPass&); // Not implemented. 00093 }; 00094 00095 #endif