49#include <ttkMergeTreePrincipalGeodesicsModule.h>
53#include <vtkMultiBlockDataSet.h>
54#include <vtkUnstructuredGrid.h>
73 double oldEpsilonTree1;
74 int DiagramPairTypes = 0;
81 std::vector<ttk::ftm::MergeTree<double>> intermediateDTrees;
82 std::vector<vtkUnstructuredGrid *> treesNodes, treesNodes2;
83 std::vector<vtkUnstructuredGrid *> treesArcs, treesArcs2;
84 std::vector<vtkDataSet *> treesSegmentation, treesSegmentation2;
88 void setDataVisualization(
int ttkNotUsed(numInputs),
92 void resetDataVisualization() {
93 setDataVisualization(0, 0);
100 bool isDataVisualizationFilled() {
113 resetDataVisualization();
122 resetDataVisualization();
131 resetDataVisualization();
140 resetDataVisualization();
149 resetDataVisualization();
158 resetDataVisualization();
167 resetDataVisualization();
174 DiagramPairTypes = diagramPairTypes;
176 resetDataVisualization();
178 vtkGetMacro(DiagramPairTypes,
int);
183 resetDataVisualization();
192 resetDataVisualization();
202 resetDataVisualization();
211 resetDataVisualization();
220 resetDataVisualization();
229 resetDataVisualization();
238 resetDataVisualization();
248 resetDataVisualization();
285 vtkInformationVector **inputVector,
286 vtkInformationVector *outputVector)
override;
288 template <
class dataType>
289 int run(vtkInformationVector *outputVector,
293 template <
class dataType>
295 vtkInformationVector *outputVector,
299 template <
class dataType>
301 vtkInformationVector *outputVector,
305 template <
class dataType>
308 vtkMultiBlockDataSet *output_barycenter);
#define ttkNotUsed(x)
Mark function/method parameters that are not used in the function body at all.
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
bool GetNormalizedWasserstein()
void makeBarycenterOutput(ttk::ftm::MergeTree< dataType > &barycenter, int blockId, vtkMultiBlockDataSet *output_barycenter)
int runCompute(vtkInformationVector *outputVector, std::vector< vtkSmartPointer< vtkMultiBlockDataSet > > &inputTrees, std::vector< vtkSmartPointer< vtkMultiBlockDataSet > > &inputTrees2)
void SetDeterministic(bool deterministic)
int runOutput(vtkInformationVector *outputVector, std::vector< vtkSmartPointer< vtkMultiBlockDataSet > > &inputTrees, std::vector< vtkSmartPointer< vtkMultiBlockDataSet > > &inputTrees2)
void SetJoinSplitMixtureCoefficient(double joinSplitMixtureCoefficient)
void SetDiagramPairTypes(int diagramPairTypes)
void SetNumberOfProjectionSteps(unsigned int steps)
void SetNormalizedWasserstein(bool nW)
bool GetDeleteMultiPersPairs()
void SetDeleteMultiPersPairs(bool delMultiPersPairs)
unsigned int GetNumberOfGeodesics()
void SetNumberOfGeodesics(unsigned int numberOfGeodesics)
static ttkMergeTreePrincipalGeodesics * New()
unsigned int GetNumberOfProjectionSteps()
void SetComputeReconstructionError(bool b)
double GetEpsilon3Tree1()
void SetBarycenterSizeLimitPercent(double percent)
double GetEpsilon2Tree1()
double GetBarycenterSizeLimitPercent()
void SetEpsilonTree1(double epsilonTree1)
void SetNumberOfProjectionIntervals(unsigned int intervals)
void SetEpsilon3Tree1(double epsilon3Tree1)
bool GetComputeReconstructionError()
void SetEpsilon1UseFarthestSaddle(bool epsilon1UseFarthestSaddle)
void SetKeepState(bool keepState)
unsigned int GetNumberOfProjectionIntervals()
double GetJoinSplitMixtureCoefficient()
double GetPersistenceThreshold()
void SetPersistenceThreshold(double persistenceThreshold)
ttkMergeTreePrincipalGeodesics()
void SetEpsilon2Tree1(double epsilon2Tree1)
int run(vtkInformationVector *outputVector, std::vector< vtkSmartPointer< vtkMultiBlockDataSet > > &inputTrees, std::vector< vtkSmartPointer< vtkMultiBlockDataSet > > &inputTrees2)
bool GetEpsilon1UseFarthestSaddle()
unsigned int numberOfAxes_
double barycenterSizeLimitPercent_
double mixtureCoefficient_
bool epsilon1UseFarthestSaddle_
bool normalizedWasserstein_
bool deleteMultiPersPairs_
double persistenceThreshold_
std::vector< std::vector< double > > allTs_
ftm::MergeTree< double > barycenter_
unsigned int noProjectionStep_
bool doComputeReconstructionError_