VTK  9.7.1
vtkFrustumSource.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
23 #ifndef vtkFrustumSource_h
24 #define vtkFrustumSource_h
25 
26 #include "vtkFiltersSourcesModule.h" // For export macro
27 #include "vtkPolyDataAlgorithm.h"
28 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
29 VTK_ABI_NAMESPACE_BEGIN
30 class vtkPlanes;
31 
32 class VTKFILTERSSOURCES_EXPORT VTK_MARSHALAUTO vtkFrustumSource : public vtkPolyDataAlgorithm
33 {
34 public:
35  static vtkFrustumSource* New();
37  void PrintSelf(ostream& os, vtkIndent indent) override;
38 
40 
47  vtkGetObjectMacro(Planes, vtkPlanes);
49 
53  virtual void SetPlanes(vtkPlanes* planes);
54 
56 
59  vtkGetMacro(ShowLines, bool);
60  vtkSetMacro(ShowLines, bool);
61  vtkBooleanMacro(ShowLines, bool);
63 
65 
69  vtkGetMacro(LinesLength, double);
70  vtkSetMacro(LinesLength, double);
72 
76  vtkMTimeType GetMTime() override;
77 
79 
84  vtkSetMacro(OutputPointsPrecision, int);
85  vtkGetMacro(OutputPointsPrecision, int);
87 
88 protected:
93 
94  ~vtkFrustumSource() override;
95 
96  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
97  vtkInformationVector* outputVector) override;
98 
102  void ComputePoint(int planes[3], double* pt);
103 
105  bool ShowLines;
106  double LinesLength;
108 
109 private:
110  vtkFrustumSource(const vtkFrustumSource&) = delete;
111  void operator=(const vtkFrustumSource&) = delete;
112 };
113 
114 VTK_ABI_NAMESPACE_END
115 #endif
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:318
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
implicit function for convex set of planes
Definition: vtkPlanes.h:41
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual vtkMTimeType GetMTime()
Return this object's modified time.
create a polygonal representation of a frustum
Store zero or more vtkInformation instances.
#define VTK_MARSHALAUTO
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.