65 vtkGetMacro(ForceInputOffsetScalarField,
bool);
66 void SetForceInputOffsetScalarField(
bool onOff);
68 void SetTreeType(
int tree);
70 void ShowMin(
bool state);
71 void ShowMax(
bool state);
72 void ShowSaddle1(
bool state);
73 void ShowSaddle2(
bool state);
75 void ShowArc(
bool state);
76 void SetArcResolution(
int arcResolution);
77 void SetPartitionNumber(
int partitionNum);
78 void SetLessPartition(
bool l);
80 void SetSkeletonSmoothing(
double skeletonSmooth);
82 void SetSimplificationType(
int type);
84 void SetSimplificationThreshold(
double simplificationThreshold);
93 vtkInformationVector **inputVector,
94 vtkInformationVector *outputVector)
override;
95 void Modified()
override;
98 bool isCoincident(
float p1[],
double p2[]);
99 bool isCoincident(
double p1[],
double p2[]);
108 void getCriticalPoints();
113 void clearSkeleton();
114 void getSkeletonNodes();
115 void getSkeletonArcs();
116 int getSkeletonScalars(
117 const std::vector<double> &scalars,
118 std::vector<std::vector<double>> &skeletonScalars)
const;
121 void getSegmentation(vtkDataSet *input);
122 void clearSegmentation();
124 int sample(
unsigned int samplingLevel);
126 int computeBarycenters();
127 void computeSkeleton(
unsigned int arcRes);
128 void smoothSkeleton(
unsigned int skeletonSmoothing);
134 bool lessPartition_{
true};
141 vtkNew<vtkUnstructuredGrid> voidUnstructuredGrid_{};
142 vtkNew<vtkPolyData> voidPolyData_{};
145 bool ForceInputOffsetScalarField{
false};
147 bool varyingDataValues_{};
151 bool showSaddle1_{
true};
152 bool showSaddle2_{
true};
154 unsigned int arcResolution_{20};
155 int partitionNum_{-1};
156 unsigned int skeletonSmoothing_{15};
157 int simplificationType_{};
158 double simplificationThreshold_{};
159 double simplificationThresholdBuffer_{};
162 bool toUpdateVertexSoSoffsets_{
true};
163 bool toComputeContourTree_{
true};
164 bool toUpdateTree_{
true};
165 bool toComputeSkeleton_{
true};
166 bool toComputeSegmentation_{
true};
169 vtkDataArray *vtkInputScalars_{};
170 double deltaScalar_{};
174 std::vector<ttk::SimplexId> criticalPoints_{};
175 std::vector<double> vertexScalars_{};
178 std::vector<std::vector<std::vector<std::vector<ttk::SimplexId>>>> samples_{};
179 std::vector<std::vector<std::vector<std::vector<double>>>> barycenters_{};