VTK
vtkFrustumCoverageCuller.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkFrustumCoverageCuller.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
38 #ifndef vtkFrustumCoverageCuller_h
39 #define vtkFrustumCoverageCuller_h
40 
41 #include "vtkRenderingCoreModule.h" // For export macro
42 #include "vtkCuller.h"
43 
44 #define VTK_CULLER_SORT_NONE 0
45 #define VTK_CULLER_SORT_FRONT_TO_BACK 1
46 #define VTK_CULLER_SORT_BACK_TO_FRONT 2
47 
48 class vtkProp;
49 class vtkRenderer;
50 
51 class VTKRENDERINGCORE_EXPORT vtkFrustumCoverageCuller : public vtkCuller
52 {
53 public:
56  void PrintSelf(ostream& os,vtkIndent indent);
57 
59 
63  vtkSetMacro( MinimumCoverage, double );
64  vtkGetMacro( MinimumCoverage, double );
66 
68 
72  vtkSetMacro( MaximumCoverage, double );
73  vtkGetMacro( MaximumCoverage, double );
75 
77 
81  vtkSetClampMacro( SortingStyle, int,
83  vtkGetMacro(SortingStyle,int);
85  {this->SetSortingStyle(VTK_CULLER_SORT_NONE);};
87  {this->SetSortingStyle(VTK_CULLER_SORT_BACK_TO_FRONT);};
89  {this->SetSortingStyle(VTK_CULLER_SORT_FRONT_TO_BACK);};
90  const char *GetSortingStyleAsString(void);
92 
100  double Cull( vtkRenderer *ren, vtkProp **propList,
101  int& listLength, int& initialized );
102 
103 protected:
106 
110 private:
111  vtkFrustumCoverageCuller(const vtkFrustumCoverageCuller&) VTK_DELETE_FUNCTION;
112  void operator=(const vtkFrustumCoverageCuller&) VTK_DELETE_FUNCTION;
113 };
114 
115 
116 #endif
vtkFrustumCoverageCuller::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkFrustumCoverageCuller
cull props based on frustum coverage
Definition: vtkFrustumCoverageCuller.h:52
vtkFrustumCoverageCuller::MinimumCoverage
double MinimumCoverage
Definition: vtkFrustumCoverageCuller.h:107
vtkFrustumCoverageCuller::~vtkFrustumCoverageCuller
~vtkFrustumCoverageCuller()
Definition: vtkFrustumCoverageCuller.h:105
VTK_CULLER_SORT_BACK_TO_FRONT
#define VTK_CULLER_SORT_BACK_TO_FRONT
Definition: vtkFrustumCoverageCuller.h:46
vtkFrustumCoverageCuller::SortingStyle
int SortingStyle
Definition: vtkFrustumCoverageCuller.h:109
vtkFrustumCoverageCuller::SetSortingStyleToNone
void SetSortingStyleToNone()
Definition: vtkFrustumCoverageCuller.h:84
vtkCuller
a superclass for prop cullers
Definition: vtkCuller.h:41
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:40
vtkFrustumCoverageCuller::MaximumCoverage
double MaximumCoverage
Definition: vtkFrustumCoverageCuller.h:108
vtkFrustumCoverageCuller::SetSortingStyleToFrontToBack
void SetSortingStyleToFrontToBack()
Definition: vtkFrustumCoverageCuller.h:88
vtkFrustumCoverageCuller::SetSortingStyleToBackToFront
void SetSortingStyleToBackToFront()
Definition: vtkFrustumCoverageCuller.h:86
vtkFrustumCoverageCuller::Cull
double Cull(vtkRenderer *ren, vtkProp **propList, int &listLength, int &initialized)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkProp
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:48
VTK_CULLER_SORT_FRONT_TO_BACK
#define VTK_CULLER_SORT_FRONT_TO_BACK
Definition: vtkFrustumCoverageCuller.h:45
vtkFrustumCoverageCuller::New
static vtkFrustumCoverageCuller * New()
vtkRenderer
abstract specification for renderers
Definition: vtkRenderer.h:64
vtkCuller.h
vtkFrustumCoverageCuller::GetSortingStyleAsString
const char * GetSortingStyleAsString(void)
vtkFrustumCoverageCuller::vtkFrustumCoverageCuller
vtkFrustumCoverageCuller()
VTK_CULLER_SORT_NONE
#define VTK_CULLER_SORT_NONE
Definition: vtkFrustumCoverageCuller.h:44