VTK
vtkFrustumSource.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkFrustumSource.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=========================================================================*/
35#ifndef vtkFrustumSource_h
36#define vtkFrustumSource_h
37
38#include "vtkFiltersSourcesModule.h" // For export macro
40class vtkPlanes;
41
42class VTKFILTERSSOURCES_EXPORT vtkFrustumSource : public vtkPolyDataAlgorithm
43{
44public:
47 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
48
50
57 vtkGetObjectMacro(Planes,vtkPlanes);
59
63 virtual void SetPlanes(vtkPlanes *planes);
64
66
69 vtkGetMacro(ShowLines,bool);
70 vtkSetMacro(ShowLines,bool);
71 vtkBooleanMacro(ShowLines,bool);
73
75
79 vtkGetMacro(LinesLength,double);
80 vtkSetMacro(LinesLength,double);
82
86 vtkMTimeType GetMTime() VTK_OVERRIDE;
87
89
94 vtkSetMacro(OutputPointsPrecision,int);
95 vtkGetMacro(OutputPointsPrecision,int);
97
98protected:
103
104 ~vtkFrustumSource() VTK_OVERRIDE;
105
106 int RequestData(vtkInformation *request,
107 vtkInformationVector **inputVector,
108 vtkInformationVector *outputVector) VTK_OVERRIDE;
109
113 void ComputePoint(int planes[3],
114 double *pt);
115
116 vtkPlanes *Planes;
117 bool ShowLines;
118 double LinesLength;
119 int OutputPointsPrecision;
120
121private:
122 vtkFrustumSource(const vtkFrustumSource&) VTK_DELETE_FUNCTION;
123 void operator=(const vtkFrustumSource&) VTK_DELETE_FUNCTION;
124};
125
126#endif
create a polygonal representation of a frustum
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void SetPlanes(vtkPlanes *planes)
Set the 6 planes defining the frustum.
static vtkFrustumSource * New()
vtkMTimeType GetMTime() override
Modified GetMTime because of Planes.
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
implicit function for convex set of planes
Definition: vtkPlanes.h:55
Superclass for algorithms that produce only polydata as output.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248