Rendering/vtkFrustumCoverageCuller.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00050 #ifndef __vtkFrustumCoverageCuller_h
00051 #define __vtkFrustumCoverageCuller_h
00052
00053 #include "vtkCuller.h"
00054
00055 #define VTK_CULLER_SORT_NONE 0
00056 #define VTK_CULLER_SORT_FRONT_TO_BACK 1
00057 #define VTK_CULLER_SORT_BACK_TO_FRONT 2
00058
00059 class vtkProp;
00060 class vtkRenderer;
00061
00062 class VTK_RENDERING_EXPORT vtkFrustumCoverageCuller : public vtkCuller
00063 {
00064 public:
00065 static vtkFrustumCoverageCuller *New();
00066 vtkTypeRevisionMacro(vtkFrustumCoverageCuller,vtkCuller);
00067 void PrintSelf(ostream& os,vtkIndent indent);
00068
00070
00072 vtkSetMacro( MinimumCoverage, float );
00073 vtkGetMacro( MinimumCoverage, float );
00075
00077
00079 vtkSetMacro( MaximumCoverage, float );
00080 vtkGetMacro( MaximumCoverage, float );
00082
00084
00086 vtkSetClampMacro( SortingStyle, int,
00087 VTK_CULLER_SORT_NONE, VTK_CULLER_SORT_BACK_TO_FRONT );
00088 vtkGetMacro(SortingStyle,int);
00089 void SetSortingStyleToNone()
00090 {this->SetSortingStyle(VTK_CULLER_SORT_NONE);};
00091 void SetSortingStyleToBackToFront()
00092 {this->SetSortingStyle(VTK_CULLER_SORT_BACK_TO_FRONT);};
00093 void SetSortingStyleToFrontToBack()
00094 {this->SetSortingStyle(VTK_CULLER_SORT_FRONT_TO_BACK);};
00095 const char *GetSortingStyleAsString(void);
00097
00098
00100
00104 float Cull( vtkRenderer *ren, vtkProp **propList,
00105 int& listLength, int& initialized );
00107
00108
00109 protected:
00110 vtkFrustumCoverageCuller();
00111 ~vtkFrustumCoverageCuller() {};
00112
00113 float MinimumCoverage;
00114 float MaximumCoverage;
00115 int SortingStyle;
00116 private:
00117 vtkFrustumCoverageCuller(const vtkFrustumCoverageCuller&);
00118 void operator=(const vtkFrustumCoverageCuller&);
00119 };
00120
00121
00122 #endif