VTK
vtkDepthImageToPointCloud.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDepthImageToPointCloud.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 =========================================================================*/
71 #ifndef vtkDepthImageToPointCloud_h
72 #define vtkDepthImageToPointCloud_h
73 
74 #include "vtkRenderingImageModule.h" // For export macro
75 #include "vtkPolyDataAlgorithm.h"
76 
77 
78 class vtkCamera;
79 
80 class VTKRENDERINGIMAGE_EXPORT vtkDepthImageToPointCloud : public vtkPolyDataAlgorithm
81 {
82 public:
84 
89  void PrintSelf(ostream& os, vtkIndent indent) override;
91 
95  vtkMTimeType GetMTime() override;
96 
102  void SetCamera(vtkCamera*);
103 
105 
109  vtkGetObjectMacro(Camera, vtkCamera);
111 
113 
118  vtkSetMacro(CullNearPoints,bool);
119  vtkGetMacro(CullNearPoints,bool);
120  vtkBooleanMacro(CullNearPoints,bool);
122 
124 
129  vtkSetMacro(CullFarPoints,bool);
130  vtkGetMacro(CullFarPoints,bool);
131  vtkBooleanMacro(CullFarPoints,bool);
133 
135 
140  vtkSetMacro(ProduceColorScalars,bool);
141  vtkGetMacro(ProduceColorScalars,bool);
142  vtkBooleanMacro(ProduceColorScalars,bool);
144 
146 
152  vtkSetMacro(ProduceVertexCellArray,bool);
153  vtkGetMacro(ProduceVertexCellArray,bool);
154  vtkBooleanMacro(ProduceVertexCellArray,bool);
156 
158 
163  vtkSetMacro(OutputPointsPrecision, int);
164  vtkGetMacro(OutputPointsPrecision, int);
166 
167 protected:
169  ~vtkDepthImageToPointCloud() override;
170 
177 
180  vtkInformationVector*) override;
181 
182  int RequestUpdateExtent(vtkInformation *request,
183  vtkInformationVector **inInfo,
184  vtkInformationVector *outInfo) override;
185 
186  int RequestData(vtkInformation* request,
187  vtkInformationVector** inputVector,
188  vtkInformationVector* outputVector) override;
189 
190  int FillInputPortInformation(int port, vtkInformation *info) override;
192 
193 private:
195  void operator=(const vtkDepthImageToPointCloud&) = delete;
196 
197 };
198 
199 #endif
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:302
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:39
a virtual camera for 3D rendering
Definition: vtkCamera.h:50
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.