TTK
Loading...
Searching...
No Matches
ttkEigenField.h
Go to the documentation of this file.
1
44
45#pragma once
46
47// VTK Module
48#include <ttkEigenFieldModule.h>
49
50// VTK Includes
51#include <ttkAlgorithm.h>
52
53// TTK Base Includes
54#include <EigenField.h>
55
56class TTKEIGENFIELD_EXPORT ttkEigenField : public ttkAlgorithm,
57 protected ttk::EigenField {
58
59public:
60 static ttkEigenField *New();
61
63
64 vtkSetMacro(OutputFieldName, const std::string &);
65 vtkGetMacro(OutputFieldName, std::string);
66
67 vtkSetMacro(EigenNumber, unsigned int);
68 vtkGetMacro(EigenNumber, unsigned int);
69
70 vtkSetMacro(ComputeStatistics, bool);
71 vtkGetMacro(ComputeStatistics, bool);
72
73protected:
75 ~ttkEigenField() override = default;
76
77 int FillInputPortInformation(int port, vtkInformation *info) override;
78 int FillOutputPortInformation(int port, vtkInformation *info) override;
79 int RequestData(vtkInformation *request,
80 vtkInformationVector **inputVector,
81 vtkInformationVector *outputVector) override;
82
83private:
84 // output field name
85 std::string OutputFieldName{"OutputEigenFunctions"};
86 // number of eigenpairs to compute
87 unsigned int EigenNumber{500};
88 // if statistics are to be computed
89 bool ComputeStatistics{false};
90
91 // enum: float or double
92 enum class FieldType { FLOAT, DOUBLE };
93
94 FieldType OutputFieldType{FieldType::FLOAT};
95};
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 eigenfunctions computation.
~ttkEigenField() override=default
static ttkEigenField * New()
TTK processing package for computing eigenfunctions of a triangular mesh.
Definition EigenField.h:36