49 int Resolution[2]{256, 256};
51 int ProjectionMode{0};
53 bool AutoFocalPoint{
true};
54 bool AutoNearFar{
true};
55 bool AutoHeight{
true};
57 double FocalPoint[3]{0, 0, 0};
58 double NearFar[2]{0, 1};
68 vtkSetMacro(Backend,
int);
69 vtkGetMacro(Backend,
int);
72 vtkSetVector2Macro(Resolution,
int);
73 vtkGetVector2Macro(Resolution,
int);
76 vtkSetMacro(ProjectionMode,
int);
77 vtkGetMacro(ProjectionMode,
int);
79 vtkSetMacro(AutoFocalPoint,
bool);
80 vtkGetMacro(AutoFocalPoint,
bool);
81 vtkSetVector3Macro(FocalPoint,
double);
82 vtkGetVector3Macro(FocalPoint,
double);
84 vtkSetMacro(AutoNearFar,
bool);
85 vtkGetMacro(AutoNearFar,
bool);
86 vtkSetVector2Macro(NearFar,
double);
87 vtkGetVector2Macro(NearFar,
double);
89 vtkSetMacro(AutoHeight,
bool);
90 vtkGetMacro(AutoHeight,
bool);
91 vtkSetMacro(Height,
double);
92 vtkGetMacro(Height,
double);
95 vtkSetMacro(Angle,
double);
96 vtkGetMacro(Angle,
double);
98 static vtkCellArray *GetCells(vtkPointSet *pointSet);
100 static int Normalize(vtkDataArray *depthArray,
const double nearFar[2]);
102 static int AddFieldDataArray(vtkFieldData *fd,
105 const std::string &name =
"");
107 static int AddAllFieldDataArrays(vtkPointSet *inputGrid,
111 static int ComputeDirFromFocalPoint(vtkPointSet *inputGrid);
113 static int EnsureGridData(vtkPointData *fd,
114 const std::string &name,
116 const std::vector<double> &Values);
118 static int MapPointAndCellData(vtkImageData *outputImage,
120 vtkPointSet *inputObject,
122 const unsigned int *primitiveIdArray,
123 const float *barycentricCoordinates,
124 const vtkIdType *inputObjectConnectivityList);
134 vtkInformationVector **inputVector,
135 vtkInformationVector *outputVector)
override;
137 int RequestDataSingle(vtkMultiBlockDataSet *collection,
141 const std::vector<double> &defaultFocal,
142 const std::vector<double> &defaultNearFar,
143 const double defaultHeight,
144 const double defaultAngle);