VTK  9.3.1
vtkDepthImageToPointCloud.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
59 #ifndef vtkDepthImageToPointCloud_h
60 #define vtkDepthImageToPointCloud_h
61 
62 #include "vtkPolyDataAlgorithm.h"
63 #include "vtkRenderingImageModule.h" // For export macro
64 
65 VTK_ABI_NAMESPACE_BEGIN
66 class vtkCamera;
67 
68 class VTKRENDERINGIMAGE_EXPORT vtkDepthImageToPointCloud : public vtkPolyDataAlgorithm
69 {
70 public:
72 
77  void PrintSelf(ostream& os, vtkIndent indent) override;
79 
83  vtkMTimeType GetMTime() override;
84 
90  void SetCamera(vtkCamera*);
91 
93 
97  vtkGetObjectMacro(Camera, vtkCamera);
99 
101 
106  vtkSetMacro(CullNearPoints, bool);
107  vtkGetMacro(CullNearPoints, bool);
108  vtkBooleanMacro(CullNearPoints, bool);
110 
112 
117  vtkSetMacro(CullFarPoints, bool);
118  vtkGetMacro(CullFarPoints, bool);
119  vtkBooleanMacro(CullFarPoints, bool);
121 
123 
128  vtkSetMacro(ProduceColorScalars, bool);
129  vtkGetMacro(ProduceColorScalars, bool);
130  vtkBooleanMacro(ProduceColorScalars, bool);
132 
134 
140  vtkSetMacro(ProduceVertexCellArray, bool);
141  vtkGetMacro(ProduceVertexCellArray, bool);
142  vtkBooleanMacro(ProduceVertexCellArray, bool);
144 
146 
151  vtkSetMacro(OutputPointsPrecision, int);
152  vtkGetMacro(OutputPointsPrecision, int);
154 
155 protected:
157  ~vtkDepthImageToPointCloud() override;
158 
165 
167 
168  int RequestUpdateExtent(vtkInformation* request, vtkInformationVector** inputVector,
169  vtkInformationVector* outInfo) override;
170 
171  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
172  vtkInformationVector* outputVector) override;
173 
174  int FillInputPortInformation(int port, vtkInformation* info) override;
176 
177 private:
179  void operator=(const vtkDepthImageToPointCloud&) = delete;
180 };
181 
182 VTK_ABI_NAMESPACE_END
183 #endif
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
static vtkPolyDataAlgorithm * New()
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:28
a virtual camera for 3D rendering
Definition: vtkCamera.h:40
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual vtkMTimeType GetMTime()
Return this object's modified time.
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Store zero or more vtkInformation instances.
convert a depth image into a point cloud
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.