TTK
Loading...
Searching...
No Matches
ttkDistanceField.h
Go to the documentation of this file.
1
31#pragma once
32
33// VTK Module
34#include <ttkDistanceFieldModule.h>
35
36// ttk code includes
37#include <DistanceField.h>
38#include <ttkAlgorithm.h>
39
40#include <string>
41
42class TTKDISTANCEFIELD_EXPORT ttkDistanceField : public ttkAlgorithm,
43 protected ttk::DistanceField {
44public:
46
48
49 vtkSetMacro(OutputScalarFieldType, int);
50 vtkGetMacro(OutputScalarFieldType, int);
51
52 vtkSetMacro(OutputScalarFieldName, const std::string &);
53 vtkGetMacro(OutputScalarFieldName, std::string);
54
55 vtkSetMacro(ForceInputVertexScalarField, bool);
56 vtkGetMacro(ForceInputVertexScalarField, bool);
57
58protected:
60
61 int FillInputPortInformation(int port, vtkInformation *info) override;
62 int FillOutputPortInformation(int port, vtkInformation *info) override;
63 int RequestData(vtkInformation *request,
64 vtkInformationVector **inputVector,
65 vtkInformationVector *outputVector) override;
66
67private:
68 enum class DistanceType { Float = 0, Double = 1 };
69
70 bool ForceInputVertexScalarField{false};
71 int OutputScalarFieldType{static_cast<int>(DistanceType::Float)};
72 std::string OutputScalarFieldName{"DistanceFieldValues"};
73};
Baseclass of all VTK filters that wrap ttk modules.
virtual int RequestData(vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
int FillInputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
int FillOutputPortInformation(int ttkNotUsed(port), vtkInformation *ttkNotUsed(info)) override
TTK VTK-filter for distance field computations.
static ttkDistanceField * New()
TTK processing package for distance field computation on PL manifolds.