TTK
Loading...
Searching...
No Matches
Namespaces | Classes | Variables
base

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

Namespaces

namespace  ttk
 The Topology ToolKit.
 

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
 Contour Tree Data Structure for an unrooted contour tree of unbounded degree for internal use from the ttk:ContourTreeAlignment module. More...
 
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::BettiNumbers
 
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
 TTK base package. More...
 
class  ttk::CommandLineParser
 Basic command line parsing. More...
 
class  DataTypes
 TTK base package defining the standard types. More...
 
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
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  ContourForestsTree
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  MergeTree
 TTK container representing a node of the MergeTree. More...
 
class  ExtendedUnionFind
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
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::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::DistanceField
 TTK processing package for distance field computation on PL manifolds. More...
 
class  ttk::DistanceMatrixDistorsion
 
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::FiberSurface
 TTK processing package that computes fiber surfaces. More...
 
class  AtomicUF
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  ttk::FTMAtomicVector< type >
 TTK processing package that manage a parallel vecrion of vector. More...
 
class  DataTypes
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  FTMTree_MT
 TTK container representing a node of the FTMTree_MT. More...
 
class  FTMTree
 TTK processing package that deal with segmentation. More...
 
class  ttk::ftm::FTMTree
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  FTMTree_CT
 TTK processing package that efficiently computes the contour tree of scalar data and more (data segmentation, topological simplification, persistence diagrams, persistence curves, etc.). More...
 
class  FTMTreeUtils_Template
 
class  FTMTreePP
 TTK processing package that add persistence pairs features. More...
 
class  FTMTreePPUtils
 
class  ttk::ftr::DynamicGraph< Type >
 TTK fTRGraph dynamic graph tracking the evolution of level sets. More...
 
class  ttk::ftr::AtomicUF
 Union find compliant with parallel find and maintaining the current local propagation inspired by ttk::UnionFind. More...
 
class  ttk::FTRAtomicVector< type >
 TTK processing package that manage a parallel version of vector Same as in FTM: Common ? More...
 
class  DataTypes
 TTK DataType management for the reeb graph. More...
 
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
 TTK processing package that deal with segmentation of an arc in the Reeb Graph. More...
 
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  BranchMappingDistance
 
class  MergeTreeBarycenter
 
class  MergeTreeBase
 
class  MergeTreeClustering
 
class  MergeTreeDistance
 
class  MergeTreeUtils
 
class  PathMappingDistance
 
class  ttk::MergeTreeDistanceMatrix
 
class  ttk::MergeTreeAxesAlgorithmBase
 
class  ttk::MergeTreePrincipalGeodesics
 
class  ttk::MergeTreePrincipalGeodesicsBase
 
class  ttk::MergeTreePrincipalGeodesicsDecoding
 
class  ttk::MergeTreeTemporalReductionDecoding
 
class  ttk::MergeTreeTemporalReductionEncoding
 
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::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  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::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  ttk::TopologicalSimplification
 TTK processing package for the topological simplification of scalar data. More...
 
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::WebSocketIO
 

Variables

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

Detailed Description

The Topology ToolKit - Base code processing packages.

Variable Documentation

◆ tetLookupWall

constexpr 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.