TTK
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
ttkMandatoryCriticalPoints Class Reference

TTK VTK-filter for the computation of mandatory critical points in uncertain scalar data. More...

#include <ttkMandatoryCriticalPoints.h>

Inheritance diagram for ttkMandatoryCriticalPoints:
ttkAlgorithm ttk::MandatoryCriticalPoints ttk::Debug ttk::Debug ttk::BaseClass ttk::BaseClass

Public Types

typedef ttkAlgorithm Superclass
 
- Public Types inherited from ttkAlgorithm
typedef vtkAlgorithm Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void SetSimplificationThreshold (double threshold)
 
void SetOutputMinimumComponentId (int id)
 
void SetOutputJoinSaddleComponentId (int id)
 
void SetOutputSplitSaddleComponentId (int id)
 
void SetOutputMaximumComponentId (int id)
 
void setOutputAllMinimumComponents (bool outputAll)
 
void setOutputAllJoinSaddleComponents (bool outputAll)
 
void setOutputAllSplitSaddleComponents (bool outputAll)
 
void setOutputAllMaximumComponents (bool outputAll)
 
- Public Member Functions inherited from ttkAlgorithm
void UpdateThreadNumber ()
 
void SetThreadNumber (int threadNumber)
 
void SetUseAllCores (bool useAllCores)
 
void SetDebugLevel (int debugLevel)
 
void SetCompactTriangulationCacheSize (float cacheSize)
 
vtkDataArray * GetOptionalArray (const bool &enforceArrayIndex, const int &arrayIndex, const std::string &arrayName, vtkDataSet *const inputData, const int &inputPort=0)
 
vtkDataArray * GetOrderArray (vtkDataSet *const inputData, const int scalarArrayIdx, ttk::Triangulation *triangulation, const bool getGlobalOrder=false, const int orderArrayIdx=0, const bool enforceOrderArrayIdx=false)
 
vtkDataArray * checkForGlobalAndComputeOrderArray (vtkDataSet *const inputData, vtkDataArray *scalarArray, const int scalarArrayIdx, const bool getGlobalOrder, vtkDataArray *orderArray, ttk::Triangulation *triangulation, const bool enforceOrderArrayIdx)
 
vtkDataArray * ComputeOrderArray (vtkDataSet *const inputData, vtkDataArray *scalarArray, const int scalarArrayIdx, const bool getGlobalOrder, vtkDataArray *oldOrderArray, ttk::Triangulation *triangulation)
 
ttk::SimplexIdGetIdentifierArrayPtr (const bool &enforceArrayIndex, const int &arrayIndex, const std::string &arrayName, vtkDataSet *const inputData, std::vector< ttk::SimplexId > &spareStorage, const int inputPort=0, const bool printErr=true)
 
ttk::TriangulationGetTriangulation (vtkDataSet *dataSet)
 
int ProcessRequest (vtkInformation *request, vtkInformationVector **inputVectors, vtkInformationVector *outputVector) override
 
vtkDataSet * GetOutput ()
 
vtkDataSet * GetOutput (int)
 
void SetInputData (vtkDataSet *)
 
void SetInputData (int, vtkDataSet *)
 
void AddInputData (vtkDataSet *)
 
void AddInputData (int, vtkDataSet *)
 
template<typename inputType >
int checkEmptyMPIInput (inputType *input)
 This method tests whether the input is a nullptr. If the computation is being done on multiple processes, it is possible that the domain of one process or more is empty, but not others, therefore in that particular case the rest of the filter will not be computed but an error message will not be sent.
 
- Public Member Functions inherited from ttk::Debug
 Debug ()
 
 ~Debug () override
 
int setWrapper (const Wrapper *wrapper) override
 
int printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
void setDebugMsgPrefix (const std::string &prefix)
 
- Public Member Functions inherited from ttk::BaseClass
 BaseClass ()
 
virtual ~BaseClass ()=default
 
int getThreadNumber () const
 
virtual int setThreadNumber (const int threadNumber)
 

Static Public Member Functions

static ttkMandatoryCriticalPointsNew ()
 
static int IsTypeOf (const char *type)
 
static ttkMandatoryCriticalPointsSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from ttkAlgorithm
static ttkAlgorithmNew ()
 
static int IsTypeOf (const char *type)
 
static ttkAlgorithmSafeDownCast (vtkObject *o)
 
static std::string GetOrderArrayName (vtkDataArray *const array)
 
static vtkInformationIntegerKey * SAME_DATA_TYPE_AS_INPUT_PORT ()
 

Protected Member Functions

 ttkMandatoryCriticalPoints ()
 
int FillInputPortInformation (int port, vtkInformation *info) override
 
int FillOutputPortInformation (int port, vtkInformation *info) override
 
int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
 
- Protected Member Functions inherited from ttkAlgorithm
 ttkAlgorithm ()
 
 ~ttkAlgorithm () override
 
void MPIGhostPipelinePreconditioning (vtkDataSet *input)
 
void MPIPipelinePreconditioning (vtkDataSet *input, std::vector< int > &neighbors, std::map< int, int > &neighToId, ttk::Triangulation *triangulation=nullptr)
 
bool checkGlobalIdValidity (ttk::LongSimplexId *globalIds, ttk::SimplexId simplexNumber, unsigned char *ghost, int *rankArray)
 
int GenerateGlobalIds (vtkDataSet *input, std::unordered_map< ttk::SimplexId, ttk::SimplexId > &vertGtoL, std::vector< int > &neighborRanks, std::map< int, int > &neighborsToId)
 
void MPITriangulationPreconditioning (ttk::Triangulation *triangulation, vtkDataSet *input)
 
virtual int RequestDataObject (vtkInformation *request, vtkInformationVector **inputVectors, vtkInformationVector *outputVector)
 
virtual int RequestInformation (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestUpdateTime (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestUpdateTimeDependentInformation (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestUpdateExtent (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
virtual int RequestDataNotGenerated (vtkInformation *ttkNotUsed(request), vtkInformationVector **ttkNotUsed(inputVectors), vtkInformationVector *ttkNotUsed(outputVector))
 
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
 
- Protected Member Functions inherited from ttk::Debug
int printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const
 
int welcomeMsg (std::ostream &stream)
 
- Protected Member Functions inherited from ttk::MandatoryCriticalPoints
int buildMandatoryTree (const TreeType treeType, Graph &mdtTree, std::vector< int > &mdtTreePointComponentId, std::vector< PointType > &mdtTreePointType, std::vector< double > &mdtTreePointLowInterval, std::vector< double > &mdtTreePointUpInterval, std::vector< int > &mdtTreeEdgeSwitchable, const std::vector< int > &mdtExtremumParentSaddle, const std::vector< int > &mdtSaddleParentSaddle, const std::vector< bool > &isExtremumSimplified, const std::vector< bool > &isSaddleSimplified, const std::vector< std::pair< double, double > > &extremumInterval, const std::vector< std::pair< int, int > > &mandatorySaddleVertices, const int extremaNumber, const int saddleNumber, const PointType extremumType, const PointType saddleType, const PointType otherExtremumType, const double globalOtherExtremumValue) const
 
int buildPairs (const TreeType treeType, const std::vector< std::pair< int, int > > &saddleList, const std::vector< std::vector< int > > &mergedExtrema, const std::vector< std::pair< double, double > > &extremumInterval, SubLevelSetTree &lowerTree, SubLevelSetTree &upperTree, std::vector< std::pair< std::pair< int, int >, double > > &extremaSaddlePair) const
 TODO : Replace SubLevelSetTrees by scalar fields for vertex value.
 
int computePlanarLayout (const TreeType &treeType, const Graph &mdtTree, const std::vector< PointType > &mdtTreePointType, const std::vector< double > &mdtTreePointLowInterval, const std::vector< double > &mdtTreePointUpInterval, std::vector< double > &xCoord, std::vector< double > &yCoord) const
 
int computeExtremumComponent (const PointType &pointType, const SubLevelSetTree &tree, const int seedVertexId, const std::vector< double > &vertexScalars, std::vector< int > &componentVertexList) const
 
template<typename triangulationType >
int computeSaddleComponent (const int componentId, const PointType &pointType, const std::vector< std::pair< int, int > > &mandatorySaddleVertex, const std::vector< double > &lowVertexScalars, const std::vector< double > &upVertexInterval, std::vector< int > &componentVertexList, const triangulationType &triangulation) const
 
int enumerateMandatoryExtrema (const PointType pointType, SubLevelSetTree &firstTree, SubLevelSetTree &secondTree, std::vector< int > &mandatoryExtremum, std::vector< std::pair< double, double > > &criticalInterval) const
 
int enumerateMandatorySaddles (const PointType pointType, SubLevelSetTree &lowerTree, SubLevelSetTree &upperTree, const std::vector< int > &mandatoryExtremumVertex, std::vector< std::pair< int, int > > &mandatorySaddleVertex, std::vector< std::vector< int > > &mandatoryMergedExtrema)
 TODO : Multiplicity.
 
int getSubTreeRootSuperArcId (const SubLevelSetTree *tree, const int &startingSuperArcId, const double &targetValue) const
 
void getSubTreeSuperArcIds (const SubLevelSetTree *tree, const int &rootSuperArcId, std::vector< int > &subTreeSuperArcId) const
 
int getVertexSuperArcId (const int &vertexId, const SubLevelSetTree *tree) const
 
int simplify (const double normalizedThreshold, const TreeType treeType, const std::vector< std::pair< std::pair< int, int >, double > > &extremaSaddlePair, const std::vector< std::vector< int > > &mergedExtrema, const int numberOfExtrema, std::vector< bool > &extremumSimplified, std::vector< bool > &saddleSimplified, std::vector< int > &extremumParentSaddle, std::vector< int > &saddleParentSaddle) const
 
 MandatoryCriticalPoints ()
 
int buildJoinTreePlanarLayout ()
 
int buildSplitTreePlanarLayout ()
 
template<typename triangulationType >
int buildSubTrees (const triangulationType &triangulation)
 
template<class dataType , typename triangulationType >
int execute (const triangulationType &triangulation)
 
template<class dataType >
int fillVertexScalars (void *upperData, void *lowerData)
 
int findCommonAncestorNodeId (const SubLevelSetTree *tree, const int &vertexId0, const int &vertexId1) const
 
void flush ()
 
double getGlobalMaximum () const
 
double getGlobalMinimum () const
 
const GraphgetJoinTreeGraph ()
 
const std::vector< double > * getJoinTreeXLayout ()
 
const std::vector< double > * getJoinTreeYLayout ()
 
const GraphgetSplitTreeGraph ()
 
const std::vector< double > * getSplitTreeXLayout ()
 
const std::vector< double > * getSplitTreeYLayout ()
 
const std::vector< int > * getMdtJoinTreePointComponentId () const
 
const std::vector< int > * getMdtSplitTreePointComponentId () const
 
const std::vector< PointType > * getMdtJoinTreePointType () const
 
const std::vector< PointType > * getMdtSplitTreePointType () const
 
const std::vector< double > * getMdtJoinTreePointLowInterval () const
 
const std::vector< double > * getMdtSplitTreePointLowInterval () const
 
const std::vector< double > * getMdtJoinTreePointUpInterval () const
 
const std::vector< double > * getMdtSplitTreePointUpInterval () const
 
const std::vector< int > * getMdtJoinTreeEdgeSwitchable ()
 
const std::vector< int > * getMdtSplitTreeEdgeSwitchable ()
 
bool areSaddlesSwitchables (const TreeType treeType, const int &firstId, const int &secondId) const
 
template<typename triangulationType >
int computeAllJoinSaddle (const triangulationType &triangulation)
 
int computeAllMaxima ()
 
int computeAllMinima ()
 
template<typename triangulationType >
int computeAllSplitSaddle (const triangulationType &triangulation)
 
template<typename triangulationType >
int computeJoinSaddle (const int &id, const triangulationType &triangulation, const bool &reset=true)
 
int computeMaximum (const int &id, const bool &reset=true, const bool &ttkNotUsed(parallel)=true)
 
int computeMinimum (const int &id, const bool &reset=true, const bool &ttkNotUsed(parallel)=true)
 
template<typename triangulationType >
int computeSplitSaddle (const int &id, const triangulationType &triangulation, const bool &reset=true)
 
int setDebugLevel (const int &debugLevel) override
 
int setLowerBoundFieldPointer (void *data)
 
int setOutputJoinSaddleDataPointer (void *data)
 
int setOutputMaximumDataPointer (void *data)
 
int setOutputMinimumDataPointer (void *data)
 
int setOutputSplitSaddleDataPointer (void *data)
 
int setUpperBoundFieldPointer (void *data)
 
int setSimplificationThreshold (double normalizedThreshold)
 
int setSoSoffsets (int *offsets=nullptr)
 
void preconditionTriangulation (AbstractTriangulation *const triangulation)
 
int setVertexNumber (const int &vertexNumber)
 
int setVertexPosition (const int &i, const double point[3])
 
int simplifyJoinTree ()
 
int simplifySplitTree ()
 

Additional Inherited Members

- Protected Types inherited from ttk::MandatoryCriticalPoints
enum class  PointType : unsigned char { Minimum = 0 , JoinSaddle = 1 , SplitSaddle = 2 , Maximum = 3 }
 
enum class  TreeType { JoinTree , SplitTree }
 
- Protected Attributes inherited from ttkAlgorithm
float CompactTriangulationCacheSize {0.2f}
 
- Protected Attributes inherited from ttk::Debug
int debugLevel_
 
std::string debugMsgPrefix_
 
std::string debugMsgNamePrefix_
 
- Protected Attributes inherited from ttk::BaseClass
bool lastObject_
 
int threadNumber_
 
Wrapperwrapper_
 
- Protected Attributes inherited from ttk::MandatoryCriticalPoints
void * inputUpperBoundField_ {}
 Void pointer to the input upper bound scalar field.
 
void * inputLowerBoundField_ {}
 Void pointer to the input lower bound scalar field.
 
int * outputMandatoryMinimum_ {}
 Void pointer to the output mandatory minima components.
 
int * outputMandatoryJoinSaddle_ {}
 Void pointer to the output mandatory join saddles components.
 
int * outputMandatorySplitSaddle_ {}
 Void pointer to the output mandatory split saddles components.
 
int * outputMandatoryMaximum_ {}
 Void pointer to the output mandatory maxima components.
 
int vertexNumber_ {}
 Number of vertices.
 
std::vector< std::vector< double > > vertexPositions_ {}
 Position (x,y,z) of each vertex.
 
std::vector< int > vertexSoSoffsets_ {}
 Offsets.
 
std::vector< double > upperVertexScalars_ {}
 Copy of the input upper scalar field converted in double.
 
std::vector< double > lowerVertexScalars_ {}
 Copy of the input lower scalar field converted in double.
 
SubLevelSetTree upperJoinTree_ {}
 Join tree of the upper bound scalar field.
 
SubLevelSetTree lowerJoinTree_ {}
 Join tree of the lower bound scalar field.
 
SubLevelSetTree upperSplitTree_ {}
 Split tree of the upper bound scalar field.
 
SubLevelSetTree lowerSplitTree_ {}
 Split tree of the lower bound scalar field.
 
std::vector< int > upperMinimumList_ {}
 List of vertex id of the minima in the upper bound scalar field.
 
std::vector< int > lowerMinimumList_ {}
 List of vertex id of the minima in the lower bound scalar field.
 
std::vector< int > upperMaximumList_ {}
 List of vertex id of the maxima in the upper bound scalar field.
 
std::vector< int > lowerMaximumList_ {}
 List of vertex id of the maxima in the lower bound scalar field.
 
std::vector< int > mandatoryMinimumVertex_ {}
 Mandatory vertex for each minimum component.
 
std::vector< int > mandatoryMaximumVertex_ {}
 Mandatory vertex for each maximum component.
 
std::vector< std::pair< double, double > > mandatoryMinimumInterval_ {}
 Critical interval for each minimum component.
 
std::vector< std::pair< double, double > > mandatoryMaximumInterval_ {}
 Critical interval for each maximum component.
 
std::vector< std::pair< int, int > > mandatoryJoinSaddleVertex_ {}
 Pair of mandatory vertices for each join saddle component.
 
std::vector< std::pair< int, int > > mandatorySplitSaddleVertex_ {}
 Pair of mandatory vertices for each split saddle component.
 
std::vector< std::vector< int > > mergedMaximaId_ {}
 
std::vector< std::vector< int > > mergedMinimaId_ {}
 
std::vector< std::pair< std::pair< int, int >, double > > mdtMinJoinSaddlePair_ {}
 Pairs ( (M,S), d(M,S) ) Of minima and join saddles.
 
std::vector< std::pair< std::pair< int, int >, double > > mdtMaxSplitSaddlePair_ {}
 Pairs ( (M,S), d(M,S) ) Of maxima and split saddles.
 
double normalizedThreshold_ {0.0}
 Value of the simplification threshold.
 
std::vector< bool > isMdtMinimumSimplified_
 
std::vector< bool > isMdtJoinSaddleSimplified_ {}
 
std::vector< bool > isMdtSplitSaddleSimplified_ {}
 
std::vector< bool > isMdtMaximumSimplified_ {}
 
std::vector< int > mdtMinimumParentSaddleId_ {}
 
std::vector< int > mdtJoinSaddleParentSaddleId_ {}
 
std::vector< int > mdtSplitSaddleParentSaddleId_ {}
 
std::vector< int > mdtMaximumParentSaddleId_ {}
 
Graph mdtJoinTree_ {}
 
Graph mdtSplitTree_ {}
 
std::vector< int > mdtJoinTreePointComponentId_ {}
 
std::vector< int > mdtSplitTreePointComponentId_ {}
 
std::vector< PointTypemdtJoinTreePointType_ {}
 
std::vector< PointTypemdtSplitTreePointType_ {}
 
std::vector< double > mdtJoinTreePointLowInterval_ {}
 
std::vector< double > mdtSplitTreePointLowInterval_ {}
 
std::vector< double > mdtJoinTreePointUpInterval_ {}
 
std::vector< double > mdtSplitTreePointUpInterval_ {}
 
std::vector< int > mdtJoinTreeEdgeSwitchable_ {}
 
std::vector< int > mdtSplitTreeEdgeSwitchable_ {}
 
std::vector< double > mdtJoinTreePointXCoord_ {}
 
std::vector< double > mdtSplitTreePointXCoord_ {}
 
std::vector< double > mdtJoinTreePointYCoord_ {}
 
std::vector< double > mdtSplitTreePointYCoord_ {}
 
double globalMinimumValue_ {}
 
double globalMaximumValue_ {}
 
std::vector< std::vector< int > > mandatoryMaximumComponentVertices_ {}
 List of the vertices forming each of the mandatory maximum components.
 
std::vector< std::vector< int > > mandatoryMinimumComponentVertices_ {}
 
std::vector< std::vector< int > > mandatoryJoinSaddleComponentVertices_ {}
 
std::vector< std::vector< int > > mandatorySplitSaddleComponentVertices_ {}
 
- Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW
 

Detailed Description

TTK VTK-filter for the computation of mandatory critical points in uncertain scalar data.

Author
Michael Michaux micha.nosp@m.uxmi.nosp@m.chael.nosp@m.89@g.nosp@m.mail..nosp@m.com
Julien Tierny julie.nosp@m.n.ti.nosp@m.erny@.nosp@m.lip6.nosp@m..fr
Date
August 2016.

This filter computes the mandatory critical points of uncertain scalar fields defined on triangulations. The input uncertain data is represented by reliable bound fields for each vertex. In particular, the input geometry must be associated with two point data scalar fields, representing the lower and upper bounds for each vertex.

The output is a domain segmentation into the mandatory critical points.

Parameters
InputInput uncertain scalar field represented by lower and upper bounds, either 2D or 3D, either regular grid or triangulation (vtkDataSet) triangulation (vtkDataSet)
Output0Output mandatory minimum segmentation (vtkDataSet)
Output1Output mandatory join saddle segmentation (vtkDataSet)
Output2Output mandatory split saddle segmentation (vtkDataSet)
Output3Output mandatory maximum segmentation (vtkDataSet)
Output4Output mandatory join tree (vtkUnstructuredGrid)
Output5Output mandatory split tree (vtkUnstructuredGrid)

This filter can be used as any other VTK filter (for instance, by using the sequence of calls SetInputData(), Update(), GetOutput()).

The input data arrays needs to be specified via the standard VTK call vtkAlgorithm::SetInputArrayToProcess() with the following parameters:

Parameters
idx0 for the lowerBoundField, 1 for the upperBoundField
port0 (FIXED: first port)
connection0 (FIXED: first connection)
fieldAssociation0 (FIXED: point data)
arrayName(DYNAMIC: string identifier of the input array)

See the related ParaView example state files for usage examples within a VTK pipeline.

Related publication
"Mandatory Critical Points of 2D Uncertain Scalar Fields"
David Guenther, Joseph Salmon, Julien Tierny
Proc. of EuroVis 2014.
Computer Graphics Forum, 2014.

See also
ttk::MandatoryCriticalPoints
vtkUncertainDataEstimator

Online examples:

Definition at line 65 of file ttkMandatoryCriticalPoints.h.

Member Typedef Documentation

◆ Superclass

Definition at line 72 of file ttkMandatoryCriticalPoints.h.

Constructor & Destructor Documentation

◆ ttkMandatoryCriticalPoints()

ttkMandatoryCriticalPoints::ttkMandatoryCriticalPoints ( )
protected

Definition at line 18 of file ttkMandatoryCriticalPoints.cpp.

Member Function Documentation

◆ FillInputPortInformation()

int ttkMandatoryCriticalPoints::FillInputPortInformation ( int  port,
vtkInformation *  info 
)
overrideprotected

Definition at line 23 of file ttkMandatoryCriticalPoints.cpp.

◆ FillOutputPortInformation()

int ttkMandatoryCriticalPoints::FillOutputPortInformation ( int  port,
vtkInformation *  info 
)
overrideprotected

Definition at line 32 of file ttkMandatoryCriticalPoints.cpp.

◆ GetClassName()

virtual const char * ttkMandatoryCriticalPoints::GetClassName ( )
virtual

Reimplemented from ttkAlgorithm.

◆ IsA()

virtual int ttkMandatoryCriticalPoints::IsA ( const char *  type)
virtual

Reimplemented from ttkAlgorithm.

◆ IsTypeOf()

static int ttkMandatoryCriticalPoints::IsTypeOf ( const char *  type)
static

◆ New()

static ttkMandatoryCriticalPoints * ttkMandatoryCriticalPoints::New ( )
static

◆ RequestData()

int ttkMandatoryCriticalPoints::RequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
overrideprotected

Definition at line 112 of file ttkMandatoryCriticalPoints.cpp.

◆ SafeDownCast()

static ttkMandatoryCriticalPoints * ttkMandatoryCriticalPoints::SafeDownCast ( vtkObject *  o)
static

◆ setOutputAllJoinSaddleComponents()

void ttkMandatoryCriticalPoints::setOutputAllJoinSaddleComponents ( bool  outputAll)
inline

Definition at line 112 of file ttkMandatoryCriticalPoints.h.

◆ setOutputAllMaximumComponents()

void ttkMandatoryCriticalPoints::setOutputAllMaximumComponents ( bool  outputAll)
inline

Definition at line 124 of file ttkMandatoryCriticalPoints.h.

◆ setOutputAllMinimumComponents()

void ttkMandatoryCriticalPoints::setOutputAllMinimumComponents ( bool  outputAll)
inline

Definition at line 106 of file ttkMandatoryCriticalPoints.h.

◆ setOutputAllSplitSaddleComponents()

void ttkMandatoryCriticalPoints::setOutputAllSplitSaddleComponents ( bool  outputAll)
inline

Definition at line 118 of file ttkMandatoryCriticalPoints.h.

◆ SetOutputJoinSaddleComponentId()

void ttkMandatoryCriticalPoints::SetOutputJoinSaddleComponentId ( int  id)
inline

Definition at line 88 of file ttkMandatoryCriticalPoints.h.

◆ SetOutputMaximumComponentId()

void ttkMandatoryCriticalPoints::SetOutputMaximumComponentId ( int  id)
inline

Definition at line 100 of file ttkMandatoryCriticalPoints.h.

◆ SetOutputMinimumComponentId()

void ttkMandatoryCriticalPoints::SetOutputMinimumComponentId ( int  id)
inline

Definition at line 82 of file ttkMandatoryCriticalPoints.h.

◆ SetOutputSplitSaddleComponentId()

void ttkMandatoryCriticalPoints::SetOutputSplitSaddleComponentId ( int  id)
inline

Definition at line 94 of file ttkMandatoryCriticalPoints.h.

◆ SetSimplificationThreshold()

void ttkMandatoryCriticalPoints::SetSimplificationThreshold ( double  threshold)
inline

Definition at line 74 of file ttkMandatoryCriticalPoints.h.


The documentation for this class was generated from the following files: