TTK
Loading...
Searching...
No Matches
base

The Topology ToolKit - Base code processing packages. More...

Namespaces

namespace  ttk
 TTK base package defining the standard types.
 
namespace  ttk::rpd
 
namespace  ripser
 

Classes

struct  ttk::cta::AlignmentTree
 Basic tree data structure for an alignment of two rooted binary trees. More...
 
struct  ttk::cta::AlignmentNode
 Basic data structure for a node of an unrooted alignment tree. More...
 
struct  ttk::cta::AlignmentEdge
 Basic data structure for an edge of an unrooted alignment tree. More...
 
struct  ttk::cta::Tree
 Basic tree data structure for a rooted contour tree of unbounded degree. More...
 
struct  ttk::cta::BinaryTree
 Basic tree data structure for a rooted contour tree of degree 2 and rooted contour tree alignments of degree 2. More...
 
struct  ttk::cta::CTNode
 Basic data structure for a node of an unrooted contour tree. More...
 
struct  ttk::cta::CTEdge
 Basic data structure for an edge of an unrooted contour tree. More...
 
class  ttk::cta::ContourTree
 ##################################################################################################################### More...
 
class  DisjointSets
 
class  ttk::AbstractTriangulation
 AbstractTriangulation is an interface class that defines an interface for efficient traversal methods on triangulations of piecewise linear manifolds. More...
 
class  ttk::ApproximateTopology
 TTK processing package for progressive Topological Data Analysis. More...
 
class  ttk::ArrayPreconditioning
 
class  ttk::AssignmentAuction< dataType >
 
class  ttk::AssignmentExhaustive< dataType >
 
class  ttk::AssignmentMunkres< dataType >
 
class  ttk::AssignmentSolver< dataType >
 
class  ttk::BarycentricSubdivision
 Subdivise a triangulation according to triangle barycenter. More...
 
class  ttk::BottleneckDistance
 
class  ttk::BoundingVolumeHierarchy< IT >
 Acceleration structure for native ray tracer. Based on implementation described in Physically Based Rendering: From Theory to Implementation by Matt Pharr, Wenzel Jakob and Greg Humphreys. More...
 
class  ttk::Ray
 Data structure for a ray. More...
 
class  ttk::CinemaImaging
 TTK modules that generates images of a dataset. More...
 
class  ttk::CinemaImagingEmbree
 TTK CinemaImagingEmbree processing package. More...
 
class  ttk::CinemaImagingNative
 Native renderer that uses a bounding volume hierarchy for accelerated raycasting. More...
 
class  ttk::CinemaQuery
 TTK cinemaQuery processing package. More...
 
class  ttk::ClusteringMetrics
 
class  ttk::ArrayLinkedList< datatype, size >
 This class describes a dynamic size data structure for thread safe computation. It is a linked list of arrays that also stores the current number of elements. Its key feature is that the addition of an element will never cause the moving of the data structure in memory, unlike an std::vector, making the access to an element thread safe even if another thread is adding elements. More...
 
class  ttk::BaseClass
 
class  ttk::CommandLineParser
 Basic command line parsing. More...
 
class  DataTypes
 
class  ttk::Debug
 Minimalist debugging class. More...
 
class  ttk::OsCall
 Os-specifics. More...
 
class  ttk::ProgramBase
 Base editor class for standalone programs. This class parses the the command line, execute the TTK module and takes care of the IO. More...
 
class  ttk::VisitedMask
 Auto-cleaning re-usable graph propagations data structure. More...
 
class  ttk::Wrapper
 Wrapper class to wrap ttk code. More...
 
class  ttk::CompactTriangulation
 CompactTriangulation is a class implemented based on the TopoCluster data structure, which is a localized data structure for simplicial meshes. The key idea of TopoCluster is to subdivide the simplicial mesh into clusters. Then, the connectivity information is computed locally for each cluster and discarded when it is no longer needed. The simplicial mesh needs to be subdivided before using TopoCluster, i.e., there has to be a scalar field named "ttkCompactTriangulationIndex" to denote the cluster index of each vertex. Note Topocluster will reindex the simplices based on the clustering input array. Related publications
"TopoCluster: A Localized Data Structure for Topology-based Visualization" Guoxi Liu, Federico Iuricich, Riccardo Fellegara, and Leila De Floriani IEEE Transactions on Visualization and Computer Graphics, 2021. More...
 
class  ttk::CompactTriangulationPreconditioning
 TTK processing package for mesh preprocessing before using TopoCluster. More...
 
class  ttk::ConnectedComponents
 TTK connectedComponents processing package. More...
 
class  ttk::ContinuousScatterPlot
 TTK processing package that computes the continuous scatterplot of bivariate volumetric data. More...
 
class  ttk::ContourAroundPoint
 TTK contourAroundPoint processing package. More...
 
class  ContourForests
 
class  ContourForestsTree
 
class  MergeTree
 
class  ExtendedUnionFind
 
class  ttk::ContourTree
 TTK processing package that computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  ttk::ContourTreeAlignment
 TTK contourTreeAlignment processing package. More...
 
class  ttk::DelaunayRipsPersistenceDiagram
 TTK base class that computes the persistence diagram of a Delaunay-Rips filtration. More...
 
class  ttk::DepthImageBasedGeometryApproximation
 This module approximates the depicted geometry of a depth image. More...
 
class  ttk::DimensionReduction
 TTK VTK-filter that apply dimension reduction algorithms on input. More...
 
class  ttk::DimensionReductionMetrics
 TTK base class that computes different scores for the quality of a dimension reduction. More...
 
class  ttk::DistanceField
 TTK processing package for distance field computation on PL manifolds. More...
 
class  ttk::DistanceMatrixDistortion
 
class  ttk::DynamicTree
 Implements the Dynamic Tree data-structure (or ST-Tree) More...
 
class  ttk::EigenField
 TTK processing package for computing eigenfunctions of a triangular mesh. More...
 
class  ttk::ExplicitTriangulation
 ExplicitTriangulation is a class that provides time efficient traversal methods on triangulations of piecewise linear manifolds. More...
 
class  ttk::ExTreeM
 
class  ttk::FiberSurface
 TTK processing package that computes fiber surfaces. More...
 
class  AtomicUF
 
class  ttk::FTMAtomicVector< type >
 
class  DataTypes
 
class  FTMTree_MT
 
class  FTMTree
 
class  ttk::ftm::FTMTree
 
class  FTMTree_CT
 
class  FTMTreeUtils_Template
 
class  FTMTreePP
 
class  FTMTreePPUtils
 
class  ttk::ftr::DynamicGraph< Type >
 TTK fTRGraph dynamic graph tracking the evolution of level sets. More...
 
class  ttk::ftr::AtomicUF
 
class  ttk::FTRAtomicVector< type >
 
class  DataTypes
 
class  ttk::ftr::FTRGraph< ScalarType, triangulationType >
 TTK FTRGraph processing package. More...
 
class  ttk::ftr::Lazy
 TTK DynamicGraph laziness. More...
 
class  ttk::ftr::Node
 TTK FTRGraph node of the Graph. More...
 
class  ttk::ftr::Propagation
 TTK fTRGraph propagation management with Fibonacci heaps. More...
 
class  ttk::ftr::Propagations
 manage propagations for FTR Graph More...
 
class  ttk::ftr::Segment
 
class  ttk::ftr::SuperArc
 TTK FTRGraph graph arc. More...
 
class  ttk::ftr::Tasks
 TTK FTRGraph tasks management tools. More...
 
class  ttk::ftr::Graph
 TTK FTRGraph graph skeleton. More...
 
class  ttk::ftr::Mesh< triangulationType >
 TTK FTRGraph mesh related operations. More...
 
class  ttk::GaussianPointCloud
 TTK gaussianPointCloud processing package that generates a 1D, 2D or 3D point cloud by randomly casting samples from a Gaussian distribution. More...
 
class  ttk::HarmonicField
 TTK processing package for the topological simplification of scalar data. More...
 
class  ttk::HelloWorld
 
class  ttk::Icosphere
 
class  ttk::Identifiers
 
class  ttk::ImplicitTriangulation
 ImplicitTriangulation is a class that provides time and memory efficient traversal methods on triangulations of piecewise linear manifolds represented by regular grids. More...
 
class  ttk::IntegralLines
 TTK processing package for the computation of edge-based integral lines of the gradient of an input scalar field defined on a PL manifold. More...
 
class  ttk::JacobiSet
 TTK processing package for the computation of the Jacobi set of bivariate volumetric data. More...
 
class  ttk::KDTree< dataType, Container >
 TTK KD-Tree. More...
 
class  ttk::LDistance
 TTK lDistance processing package. More...
 
class  ttk::LDistanceMatrix
 
class  ttk::LegacyTopologicalSimplification
 TTK processing package for the topological simplification of scalar data. More...
 
class  LocalizedTopologicalSimplification
 
class  ttk::LowestCommonAncestor
 Class to answer the lowest common ancestor requests of pairs of nodes in a tree in constant time after a linear time preprocess. More...
 
class  ttk::MandatoryCriticalPoints
 TTK processing package for the computation of mandatory critical points in uncertain scalar data. More...
 
class  ttk::ManifoldCheck
 TTK processing package for manifold checks. More...
 
class  ttk::MarchingTetrahedra
 TTK processing package for Marching Tetra/Triangles computations. More...
 
class  ttk::MergeTreeAutoencoder
 
class  ttk::MergeTreeAutoencoderDecoding
 
class  BranchMappingDistance
 
class  MergeTreeBarycenter
 
class  MergeTreeBase
 
class  MergeTreeClustering
 
class  MergeTreeDistance
 
class  MergeTreeUtils
 
class  PathMappingDistance
 
class  ttk::MergeTreeDistanceMatrix
 
class  ttk::MergeTreeNeuralBase
 
class  ttk::MergeTreeNeuralLayer
 
class  ttk::MergeTreeNeuralNetwork
 
class  ttk::MergeTreeAxesAlgorithmBase
 
class  ttk::MergeTreePrincipalGeodesics
 
class  ttk::MergeTreePrincipalGeodesicsBase
 
class  ttk::MergeTreePrincipalGeodesicsDecoding
 
class  ttk::MergeTreeTemporalReduction
 
class  ttk::MergeTreeTemporalReductionDecoding
 
class  ttk::MeshGraph
 TTK meshGraph processing package. More...
 
class  ttk::MetricDistortion
 
class  ttk::MorphologicalOperators
 TTK morphologicalOperators processing package. More...
 
class  ttk::MorseSmaleComplex
 TTK processing package for the computation of Morse-Smale complexes. More...
 
class  ttk::MorseSmaleQuadrangulation
 TTK processing package for the topological simplification of scalar data. More...
 
class  ttk::MultiresTopology
 TTK processing package for progressive Topological Data Analysis. More...
 
class  ttk::MultiresTriangulation
 MultiresTriangulation. More...
 
class  Octree
 Implementation of the point region (PR) octree. More...
 
class  ttk::PathCompression
 TTK processing package for the computation of Morse-Smale segmentations using Path Compression. More...
 
class  ttk::PeriodicImplicitTriangulation
 TTK triangulation class for grids with periodic boundary conditions implemented in all directions. More...
 
class  ttk::PersistenceCurve
 TTK processing package for the computation of persistence curves. More...
 
class  ttk::PersistenceDiagram
 TTK processing package for the computation of persistence diagrams. More...
 
class  ttk::PDBarycenter
 
class  ttk::PDClustering
 
class  ttk::PersistenceDiagramBarycenter
 
class  ttk::PersistenceDiagramClustering
 TTK processing package for the computation of Wasserstein barycenters and K-Means clusterings of a set of persistence diagrams. More...
 
class  ttk::PersistenceDiagramDistanceMatrix
 
class  ttk::PersistenceDiagramWarmRestartAuction< T >
 TTK base class that computes the Wasserstein distance between two persistence diagrams. More...
 
class  ttk::PersistentSimplexPairs
 Textbook algorithm to find persistence pairs. More...
 
class  MergeTreeVisualization
 
class  ttk::PlanarGraphLayout
 TTK planarGraphLayout processing package. More...
 
class  ttk::ProgressiveTopology
 TTK processing package for progressive Topological Data Analysis. More...
 
class  ttk::ProjectionFromTable
 
class  ttk::QuadrangulationSubdivision
 TTK processing package for the topological simplification of scalar data. More...
 
class  ttk::RangeDrivenOctree
 TTK optional package for octree based range queries in bivariate volumetric data. More...
 
class  ttk::RangeMinimumQuery< DataType >
 Class to answer range minimum queries in an array in constant time after a linearithmic time preprocess. More...
 
class  ttk::ReebSpace
 TTK processing package that efficiently computes the Reeb space of bivariate volumetric data. More...
 
class  ttk::RegularGridTriangulation
 RegularGridTriangulation is an abstract subclass of ttk::AbstractTriangulation that exposes a common MPI API for triangulation on regular grids. The virtual methods in this class are meant to be implemented in ttk::ImplicitTriangulation and ttk::PeriodicImplicitTriangulation. This meta-class only holds an interface for MPI-related features for the moment but will maybe be enlarged in the future. More...
 
class  ttk::RipsComplex
 TTK VTK-filter that computes a Rips complex. More...
 
class  FastRipsPersistenceDiagram2
 TTK base class that computes the persistence diagram of a Rips complex of a planar point cloud using a fast, dedicated algorithm. More...
 
class  ttk::rpd::PairCells
 TTK base class that executes the PairCells persistence algorithm on a Rips complex. More...
 
class  ttk::rpd::PairCellsWithOracle
 TTK base class that partially executes on a Rips complex the PairCells persistence algorithm where needed, when the persistence pairs are already known. More...
 
class  ttk::RipsPersistenceDiagram
 TTK base class that computes the persistence diagram of a Rips complex. More...
 
class  ttk::RipsPersistenceGenerators
 TTK base class that computes 1-dimensional persistence generators in a Rips filtration. More...
 
class  ttk::ScalarFieldCriticalPoints
 TTK processing package for the computation of critical points in PL scalar fields defined on PL manifolds. More...
 
class  ttk::ScalarFieldSmoother
 TTK processing package for scalar field smoothing. More...
 
class  ttk::SeparatrixStability
 Compute the occurrence rate of separatrices in an ensemble. More...
 
class  ttk::SignedDistanceField
 This filter computes a signed distance field given a surface in input. More...
 
class  ttk::CellArray
 CellArray generic array of cells More...
 
class  ttk::OneSkeleton
 OneSkeleton processing package. More...
 
class  ttk::ThreeSkeleton
 ThreeSkeleton processing package. More...
 
class  ttk::TwoSkeleton
 TwoSkeleton processing package. More...
 
class  ttk::ZeroSkeleton
 ZeroSkeleton processing package. More...
 
class  ttk::SurfaceGeometrySmoother
 TTK VTK-filter for smoothing meshes on surfaces. More...
 
class  DimensionReductionModel
 TTK base class for containing reduction dimension models. More...
 
class  ttk::TopologicalDimensionReduction
 TTK base class that embeds points into 2D, under topological constraints. More...
 
class  ttk::TopologicalLoss
 TTK base class for representing differentiable topological losses to be used in dimension reduction. More...
 
class  ttk::TopologicalOptimization
 
class  ttk::TopologicalSimplification
 TTK processing package for the topological simplification of scalar data. More...
 
class  ttk::TopologicalSkeleton
 TTK processing package for the computation of Topological Skeleton of Vector Fields. The skeleton consists of four components: critical points, 1-separatrices(including orbits), 2-separatrices, and segmentation of where cells flow to and from. More...
 
class  ttk::TopoMap
 
class  ttk::TrackingFromPersistenceDiagrams
 
class  ttk::TrackingFromOverlap
 TTK trackingFromOverlap processing package that tracks labeled point sets. More...
 
class  ttk::Triangulation
 Triangulation is a class that provides time and memory efficient traversal methods on triangulations of piecewise linear manifolds. It provides the following features: More...
 
class  ttk::UncertainDataEstimator
 TTK processing package that takes an input ensemble data set (represented by a list of scalar fields) and which computes various vertexwise statistics (PDF estimation, bounds, moments, etc.) More...
 
class  ttk::UnionFind
 Union Find implementation for connectivity tracking. More...
 
class  ttk::VectorWeightCurve
 TTK processing package for the computation of weight curve associated with the discrete vector field topology. More...
 
class  ttk::WebSocketIO
 

Variables

constexpr int tetLookupWall [28][15]
 Lookuptables used in MarchingTetrahedra algorithm.
 

Detailed Description

The Topology ToolKit - Base code processing packages.

Variable Documentation

◆ tetLookupWall

int tetLookupWall[28][15]
constexpr
Initial value:
= {
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{2, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{1, 3, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{1, 2, 4, 1, 3, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{5, 8, 9, 1, 9, 8, 1, 9, 3, 2, 9, 4, 2, 9, 8},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{0, 3, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{0, 2, 3, 2, 3, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{4, 7, 9, 0, 7, 9, 0, 3, 9, 2, 7, 9, 2, 5, 9},
{0, 1, 4, 1, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{0, 1, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},
{2, 7, 8, 1, 7, 8, 0, 1, 7, 4, 7, 8, 4, 5, 8},
{3, 6, 9, 4, 6, 9, 0, 4, 6, 1, 6, 9, 1, 5, 9},
{1, 6, 8, 2, 6, 8, 2, 6, 0, 3, 8, 5, 3, 8, 6},
{0, 6, 7, 2, 6, 1, 2, 6, 7, 3, 7, 4, 3, 7, 6},
{10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10}
}

Lookuptables used in MarchingTetrahedra algorithm.

Author
Robin G. C. Maack maack.nosp@m.@rpt.nosp@m.u.de
Date
May 2023. Lookup table to retrieve the indices of the edges (0-5) and triangles (6-9) of the tetrahedron used for each generated triangle. The indices are ordered by the combination of vertex indices that span the simplex (e.g. [0,1] = edge 0, [0,2] = edge 1, [1,2] = edge 3, [0,1,3] = triangle 7). Every 3 entries represent one generated triangle by using the middle of the edges and triangles respectively. The comments next to each line first indicate the number of unique vertex labels on the tetrahedron, the 2nd label, 3rd label, 4th label, and its index (the first label is alway considered to be 0). This allows to directly retrieve the triangulation from this lookup table by supplying a bit code, where the 4th label supplies the two LSB

Definition at line 19 of file MarchingTetrahedraLookupTables.inl.