Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkFrustumCoverageCuller.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkFrustumCoverageCuller.h,v $
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 __vtkFrustumCoverageCuller_h
00035 #define __vtkFrustumCoverageCuller_h
00036 
00037 #include "vtkCuller.h"
00038 
00039 #define VTK_CULLER_SORT_NONE          0
00040 #define VTK_CULLER_SORT_FRONT_TO_BACK 1
00041 #define VTK_CULLER_SORT_BACK_TO_FRONT 2
00042 
00043 class vtkProp;
00044 class vtkRenderer;
00045 
00046 class VTK_RENDERING_EXPORT vtkFrustumCoverageCuller : public vtkCuller
00047 {
00048 public:
00049   static vtkFrustumCoverageCuller *New();
00050   vtkTypeRevisionMacro(vtkFrustumCoverageCuller,vtkCuller);
00051   void PrintSelf(ostream& os,vtkIndent indent);
00052 
00054 
00056   vtkSetMacro( MinimumCoverage, double );
00057   vtkGetMacro( MinimumCoverage, double );
00059 
00061 
00063   vtkSetMacro( MaximumCoverage, double );
00064   vtkGetMacro( MaximumCoverage, double );
00066 
00068 
00070   vtkSetClampMacro( SortingStyle, int,
00071         VTK_CULLER_SORT_NONE, VTK_CULLER_SORT_BACK_TO_FRONT );
00072   vtkGetMacro(SortingStyle,int);
00073   void SetSortingStyleToNone()
00074         {this->SetSortingStyle(VTK_CULLER_SORT_NONE);};
00075   void SetSortingStyleToBackToFront()
00076     {this->SetSortingStyle(VTK_CULLER_SORT_BACK_TO_FRONT);};
00077   void SetSortingStyleToFrontToBack()
00078     {this->SetSortingStyle(VTK_CULLER_SORT_FRONT_TO_BACK);};
00079   const char *GetSortingStyleAsString(void);
00081 
00082 //BTX
00084 
00088   double Cull( vtkRenderer *ren, vtkProp **propList,
00089               int& listLength, int& initialized );
00091 //ETX
00092 
00093 protected:
00094   vtkFrustumCoverageCuller();
00095   ~vtkFrustumCoverageCuller() {};
00096 
00097   double       MinimumCoverage;
00098   double       MaximumCoverage;
00099   int          SortingStyle;
00100 private:
00101   vtkFrustumCoverageCuller(const vtkFrustumCoverageCuller&);  // Not implemented.
00102   void operator=(const vtkFrustumCoverageCuller&);  // Not implemented.
00103 };
00104 
00105                                          
00106 #endif

Generated on Mon Jan 21 23:07:34 2008 for VTK by  doxygen 1.4.3-20050530