TTK
Loading...
Searching...
No Matches
ttkSignedDistanceField.h
Go to the documentation of this file.
1
36
37#pragma once
38
39// VTK Module
40#include <ttkSignedDistanceFieldModule.h>
41
42// ttk code includes
43#include <SignedDistanceField.h>
44#include <ttkAlgorithm.h>
45
46class vtkImageData;
47
48class TTKSIGNEDDISTANCEFIELD_EXPORT ttkSignedDistanceField
49 : public ttkAlgorithm,
50 protected ttk::SignedDistanceField {
51public:
54
56
59 vtkSetVector3Macro(SamplingDimensions, int);
60 vtkGetVector3Macro(SamplingDimensions, int);
62
63 vtkSetMacro(ExpandBox, bool);
64 vtkGetMacro(ExpandBox, bool);
65
66 vtkSetMacro(Backend, int);
67 vtkGetMacro(Backend, int);
68
69 vtkSetMacro(FastMarchingOrder, int);
70 vtkGetMacro(FastMarchingOrder, int);
71
75 vtkImageData *GetOutput();
76
77protected:
79
80 // Usual data generation method
81 vtkTypeBool ProcessRequest(vtkInformation *,
82 vtkInformationVector **,
83 vtkInformationVector *) override;
84 int RequestData(vtkInformation *request,
85 vtkInformationVector **inputVector,
86 vtkInformationVector *outputVector) override;
87 int RequestInformation(vtkInformation *,
88 vtkInformationVector **,
89 vtkInformationVector *) override;
90 int RequestUpdateExtent(vtkInformation *,
91 vtkInformationVector **,
92 vtkInformationVector *) override;
93 int FillInputPortInformation(int, vtkInformation *) override;
94 int FillOutputPortInformation(int, vtkInformation *) override;
95
96 void computeOutputInformation(vtkInformationVector **inputVector);
97
98 int SamplingDimensions[3];
99 bool ExpandBox = true;
100 int Backend = 0;
101 int FastMarchingOrder = 1;
102
103private:
104 std::array<int, 6> DataExtent{0, 0, 0, 0, 0, 0};
105 std::array<double, 3> Origin{0.0, 0.0, 0.0};
106};
Baseclass of all VTK filters that wrap ttk modules.
virtual int RequestData(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
virtual int RequestInformation(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
int ProcessRequest(vtkInformation *request, vtkInformationVector **inputVectors, vtkInformationVector *outputVector) override
virtual int RequestUpdateExtent(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
vtkDataSet * GetOutput()
int FillInputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
int FillOutputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
This filter computes a signed distance field given a surface in input.
static ttkSignedDistanceField * New()
This filter computes a signed distance field given a surface in input.