TTK
Loading...
Searching...
No Matches
Public Member Functions | List of all members
ttk::ImplicitWithPreconditions Class Referencefinal

Implicit Triangulation class with preconditioning. More...

#include <ImplicitPreconditions.h>

Inheritance diagram for ttk::ImplicitWithPreconditions:
ttk::ImplicitTriangulationCRTP< ImplicitWithPreconditions > ttk::ImplicitTriangulation ttk::RegularGridTriangulation ttk::AbstractTriangulation ttk::Wrapper ttk::Debug ttk::BaseClass

Public Member Functions

 ImplicitWithPreconditions ()
 
int preconditionVerticesInternal () override
 
int preconditionEdgesInternal () override
 
int preconditionTrianglesInternal () override
 
int preconditionTetrahedronsInternal () override
 
VertexPosition getVertexPosition (const SimplexId v) const
 
std::array< SimplexId, 3 > const & getVertexCoords (const SimplexId v) const
 
EdgePosition getEdgePosition (const SimplexId e) const
 
std::array< SimplexId, 3 > const & getEdgeCoords (const SimplexId e) const
 
TrianglePosition getTrianglePosition (const SimplexId t) const
 
std::array< SimplexId, 3 > const & getTriangleCoords (const SimplexId t) const
 
const std::array< SimplexId, 3 > & getTetrahedronCoords (const SimplexId t) const
 
int clear ()
 
- Public Member Functions inherited from ttk::ImplicitTriangulationCRTP< ImplicitWithPreconditions >
SimplexId TTK_TRIANGULATION_INTERNAL() getVertexNeighborNumber (const SimplexId &vertexId) const override
 
bool TTK_TRIANGULATION_INTERNAL() isVertexOnBoundary (const SimplexId &vertexId) const override
 
bool TTK_TRIANGULATION_INTERNAL() isEdgeOnBoundary (const SimplexId &edgeId) const override
 
int TTK_TRIANGULATION_INTERNAL() getVertexNeighbor (const SimplexId &vertexId, const int &localNeighborId, SimplexId &neighborId) const override
 
int getVertexEdgeInternal (const SimplexId &vertexId, const int &id, SimplexId &edgeId) const override
 
SimplexId getVertexTriangleNumberInternal (const SimplexId &vertexId) const override
 
int getVertexTriangleInternal (const SimplexId &vertexId, const int &id, SimplexId &triangleId) const override
 
int TTK_TRIANGULATION_INTERNAL() getVertexLink (const SimplexId &vertexId, const int &localLinkId, SimplexId &linkId) const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getVertexStarNumber (const SimplexId &vertexId) const override
 
int TTK_TRIANGULATION_INTERNAL() getVertexStar (const SimplexId &vertexId, const int &localStarId, SimplexId &starId) const override
 
int TTK_TRIANGULATION_INTERNAL() getVertexPoint (const SimplexId &vertexId, float &x, float &y, float &z) const override
 
int getEdgeVertexInternal (const SimplexId &edgeId, const int &localVertexId, SimplexId &vertexId) const override
 
SimplexId getEdgeTriangleNumberInternal (const SimplexId &edgeId) const override
 
int getEdgeTriangleInternal (const SimplexId &edgeId, const int &id, SimplexId &triangleId) const override
 
int TTK_TRIANGULATION_INTERNAL() getEdgeLink (const SimplexId &edgeId, const int &localLinkId, SimplexId &linkId) const override
 
int TTK_TRIANGULATION_INTERNAL() getEdgeStar (const SimplexId &edgeId, const int &localStarId, SimplexId &starId) const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getEdgeStarNumber (const SimplexId &edgeId) const override
 
int getTriangleVertexInternal (const SimplexId &triangleId, const int &localVertexId, SimplexId &vertexId) const override
 
int getTriangleEdgeInternal (const SimplexId &triangleId, const int &id, SimplexId &edgeId) const override
 
int TTK_TRIANGULATION_INTERNAL() getTriangleLink (const SimplexId &triangleId, const int &localLinkId, SimplexId &linkId) const override
 
int TTK_TRIANGULATION_INTERNAL() getTriangleStar (const SimplexId &triangleId, const int &localStarId, SimplexId &starId) const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getTriangleStarNumber (const SimplexId &triangleId) const override
 
int getTriangleNeighbor (const SimplexId &triangleId, const int &localNeighborId, SimplexId &neighborId) const override
 
SimplexId getTriangleNeighborNumber (const SimplexId &triangleId) const override
 
int getTetrahedronVertex (const SimplexId &tetId, const int &localVertexId, SimplexId &vertexId) const override
 
int getTetrahedronEdge (const SimplexId &tetId, const int &id, SimplexId &edgeId) const override
 
int getTetrahedronTriangle (const SimplexId &tetId, const int &id, SimplexId &triangleId) const override
 
SimplexId getTetrahedronNeighborNumber (const SimplexId &tetId) const override
 
int getTetrahedronNeighbor (const SimplexId &tetId, const int &localNeighborId, SimplexId &neighborId) const override
 
- Public Member Functions inherited from ttk::ImplicitTriangulation
 ImplicitTriangulation ()
 
 ~ImplicitTriangulation () override
 
 ImplicitTriangulation (const ImplicitTriangulation &)=default
 
 ImplicitTriangulation (ImplicitTriangulation &&)=default
 
ImplicitTriangulationoperator= (const ImplicitTriangulation &)=default
 
ImplicitTriangulationoperator= (ImplicitTriangulation &&)=default
 
const std::array< SimplexId, 3 > & getGridDimensions () const override
 
int getCellEdgeInternal (const SimplexId &cellId, const int &id, SimplexId &edgeId) const override
 
SimplexId getCellEdgeNumberInternal (const SimplexId &cellId) const override
 
const std::vector< std::vector< SimplexId > > * getCellEdgesInternal () override
 
int TTK_TRIANGULATION_INTERNAL() getCellNeighbor (const SimplexId &cellId, const int &localNeighborId, SimplexId &neighborId) const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getCellNeighborNumber (const SimplexId &cellId) const override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getCellNeighbors () override
 
int getCellTriangleInternal (const SimplexId &cellId, const int &id, SimplexId &triangleId) const override
 
SimplexId getCellTriangleNumberInternal (const SimplexId &) const override
 
const std::vector< std::vector< SimplexId > > * getCellTrianglesInternal () override
 
int TTK_TRIANGULATION_INTERNAL() getCellVertex (const SimplexId &cellId, const int &localVertexId, SimplexId &vertexId) const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getCellVertexNumber (const SimplexId &cellId) const override
 
int TTK_TRIANGULATION_INTERNAL() getDimensionality () const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getEdgeLinkNumber (const SimplexId &edgeId) const override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getEdgeLinks () override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getEdgeStars () override
 
const std::vector< std::vector< SimplexId > > * getEdgeTrianglesInternal () override
 
const std::vector< std::array< SimplexId, 2 > > *TTK_TRIANGULATION_INTERNAL() getEdges () override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getNumberOfCells () const override
 
SimplexId getNumberOfEdgesInternal () const override
 
SimplexId getNumberOfTrianglesInternal () const override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getNumberOfVertices () const override
 
virtual int getTetrahedronEdge (const SimplexId &tetId, const int &id, SimplexId &edgeId) const =0
 
int getTetrahedronEdges (std::vector< std::vector< SimplexId > > &edges) const
 
virtual int getTetrahedronTriangle (const SimplexId &tetId, const int &id, SimplexId &triangleId) const =0
 
int getTetrahedronTriangles (std::vector< std::vector< SimplexId > > &triangles) const
 
virtual int getTetrahedronNeighbor (const SimplexId &tetId, const int &localNeighborId, SimplexId &neighborId) const =0
 
virtual SimplexId getTetrahedronNeighborNumber (const SimplexId &tetId) const =0
 
int getTetrahedronNeighbors (std::vector< std::vector< SimplexId > > &neighbors)
 
virtual int getTetrahedronVertex (const SimplexId &tetId, const int &localVertexId, SimplexId &vertexId) const =0
 
SimplexId getTriangleEdgeNumberInternal (const SimplexId &) const override
 
const std::vector< std::vector< SimplexId > > * getTriangleEdgesInternal () override
 
int getTriangleEdgesInternal (std::vector< std::vector< SimplexId > > &edges) const
 
SimplexId TTK_TRIANGULATION_INTERNAL() getTriangleLinkNumber (const SimplexId &triangleId) const override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getTriangleLinks () override
 
virtual int getTriangleNeighbor (const SimplexId &triangleId, const int &localNeighborId, SimplexId &neighborId) const =0
 
virtual SimplexId getTriangleNeighborNumber (const SimplexId &triangleId) const =0
 
int getTriangleNeighbors (std::vector< std::vector< SimplexId > > &neighbors)
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getTriangleStars () override
 
const std::vector< std::array< SimplexId, 3 > > *TTK_TRIANGULATION_INTERNAL() getTriangles () override
 
SimplexId getVertexEdgeNumberInternal (const SimplexId &vertexId) const override
 
const std::vector< std::vector< SimplexId > > * getVertexEdgesInternal () override
 
SimplexId TTK_TRIANGULATION_INTERNAL() getVertexLinkNumber (const SimplexId &vertexId) const override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getVertexLinks () override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getVertexNeighbors () override
 
const std::vector< std::vector< SimplexId > > *TTK_TRIANGULATION_INTERNAL() getVertexStars () override
 
const std::vector< std::vector< SimplexId > > * getVertexTrianglesInternal () override
 
bool isEmpty () const override
 
bool TTK_TRIANGULATION_INTERNAL() isTriangleOnBoundary (const SimplexId &triangleId) const override
 
int setInputGrid (const float &xOrigin, const float &yOrigin, const float &zOrigin, const float &xSpacing, const float &ySpacing, const float &zSpacing, const SimplexId &xDim, const SimplexId &yDim, const SimplexId &zDim) override
 
virtual int preconditionVerticesInternal ()=0
 
int preconditionVertexNeighborsInternal () override
 
int preconditionEdgesInternal () override=0
 
int preconditionTrianglesInternal () override=0
 
virtual int preconditionTetrahedronsInternal ()=0
 
int preconditionCellsInternal ()
 
int preconditionVerticesAndCells ()
 
int getCellVTKIDInternal (const int &ttkId, int &vtkId) const override
 
- Public Member Functions inherited from ttk::RegularGridTriangulation
 RegularGridTriangulation ()
 
 ~RegularGridTriangulation () override=default
 
 RegularGridTriangulation (const RegularGridTriangulation &)=default
 
 RegularGridTriangulation (RegularGridTriangulation &&)=default
 
RegularGridTriangulationoperator= (const RegularGridTriangulation &)=default
 
RegularGridTriangulationoperator= (RegularGridTriangulation &&)=default
 
virtual int setInputGrid (const float &xOrigin, const float &yOrigin, const float &zOrigin, const float &xSpacing, const float &ySpacing, const float &zSpacing, const SimplexId &xDim, const SimplexId &yDim, const SimplexId &zDim)=0
 
- Public Member Functions inherited from ttk::AbstractTriangulation
 AbstractTriangulation ()
 
 ~AbstractTriangulation () override
 
 AbstractTriangulation (const AbstractTriangulation &)=default
 
 AbstractTriangulation (AbstractTriangulation &&)=default
 
AbstractTriangulationoperator= (const AbstractTriangulation &)=default
 
AbstractTriangulationoperator= (AbstractTriangulation &&)=default
 
int clear ()
 
size_t footprint (size_t size=0) const
 
virtual int getCellEdge (const SimplexId &cellId, const int &localEdgeId, SimplexId &edgeId) const
 
virtual SimplexId getCellEdgeNumber (const SimplexId &cellId) const
 
virtual const std::vector< std::vector< SimplexId > > * getCellEdges ()
 
virtual int getCellNeighbor (const SimplexId &cellId, const int &localNeighborId, SimplexId &neighborId) const
 
virtual SimplexId getCellNeighborNumber (const SimplexId &cellId) const
 
virtual const std::vector< std::vector< SimplexId > > * getCellNeighbors ()
 
virtual int getCellTriangle (const SimplexId &cellId, const int &localTriangleId, SimplexId &triangleId) const
 
virtual SimplexId getCellTriangleNumber (const SimplexId &cellId) const
 
virtual const std::vector< std::vector< SimplexId > > * getCellTriangles ()
 
virtual int getCellVertex (const SimplexId &cellId, const int &localVertexId, SimplexId &vertexId) const
 
virtual SimplexId getCellVertexNumber (const SimplexId &cellId) const
 
virtual int getDimensionality () const
 
virtual const std::vector< std::array< SimplexId, 2 > > * getEdges ()
 
virtual int getEdgeLink (const SimplexId &edgeId, const int &localLinkId, SimplexId &linkId) const
 
virtual SimplexId getEdgeLinkNumber (const SimplexId &edgeId) const
 
virtual const std::vector< std::vector< SimplexId > > * getEdgeLinks ()
 
virtual int getEdgeStar (const SimplexId &edgeId, const int &localStarId, SimplexId &starId) const
 
virtual SimplexId getEdgeStarNumber (const SimplexId &edgeId) const
 
virtual const std::vector< std::vector< SimplexId > > * getEdgeStars ()
 
virtual int getEdgeTriangle (const SimplexId &edgeId, const int &localTriangleId, SimplexId &triangleId) const
 
virtual SimplexId getEdgeTriangleNumber (const SimplexId &edgeId) const
 
virtual const std::vector< std::vector< SimplexId > > * getEdgeTriangles ()
 
virtual int getEdgeVertex (const SimplexId &edgeId, const int &localVertexId, SimplexId &vertexId) const
 
int getEdgeVertexNumber (const SimplexId ttkNotUsed(edgeId)) const
 
virtual const std::array< SimplexId, 3 > & getGridDimensions () const
 
virtual SimplexId getNumberOfCells () const
 
virtual SimplexId getNumberOfEdges () const
 
virtual SimplexId getNumberOfTriangles () const
 
virtual SimplexId getNumberOfVertices () const
 
virtual const std::vector< std::array< SimplexId, 3 > > * getTriangles ()
 
virtual int getTriangleEdge (const SimplexId &triangleId, const int &localEdgeId, SimplexId &edgeId) const
 
virtual SimplexId getTriangleEdgeNumber (const SimplexId &triangleId) const
 
virtual const std::vector< std::vector< SimplexId > > * getTriangleEdges ()
 
virtual int getTriangleLink (const SimplexId &triangleId, const int &localLinkId, SimplexId &linkId) const
 
virtual SimplexId getTriangleLinkNumber (const SimplexId &triangleId) const
 
virtual const std::vector< std::vector< SimplexId > > * getTriangleLinks ()
 
virtual int getTriangleStar (const SimplexId &triangleId, const int &localStarId, SimplexId &starId) const
 
virtual SimplexId getTriangleStarNumber (const SimplexId &triangleId) const
 
virtual const std::vector< std::vector< SimplexId > > * getTriangleStars ()
 
virtual int getTriangleVertex (const SimplexId &triangleId, const int &localVertexId, SimplexId &vertexId) const
 
int getTriangleVertexNumber (const SimplexId ttkNotUsed(triangleId)) const
 
virtual int getVertexEdge (const SimplexId &vertexId, const int &localEdgeId, SimplexId &edgeId) const
 
virtual SimplexId getVertexEdgeNumber (const SimplexId &vertexId) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexEdges ()
 
virtual int getVertexLink (const SimplexId &vertexId, const int &localLinkId, SimplexId &linkId) const
 
virtual SimplexId getVertexLinkNumber (const SimplexId &vertexId) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexLinks ()
 
virtual int getVertexNeighbor (const SimplexId &vertexId, const int &localNeighborId, SimplexId &neighborId) const
 
virtual SimplexId getVertexNeighborNumber (const SimplexId &vertexId) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexNeighbors ()
 
virtual int getVertexPoint (const SimplexId &vertexId, float &x, float &y, float &z) const
 
virtual int getVertexStar (const SimplexId &vertexId, const int &localStarId, SimplexId &starId) const
 
virtual SimplexId getVertexStarNumber (const SimplexId &vertexId) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexStars ()
 
virtual int getVertexTriangle (const SimplexId &vertexId, const int &localTriangleId, SimplexId &triangleId) const
 
virtual SimplexId getVertexTriangleNumber (const SimplexId &vertexId) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexTriangles ()
 
bool hasPeriodicBoundaries () const
 Returns true if the grid uses period boundary conditions.
 
virtual bool isEdgeOnBoundary (const SimplexId &edgeId) const
 
virtual bool isEmpty () const
 
virtual bool isManifold () const
 
virtual int preconditionManifold ()
 
virtual bool isTriangleOnBoundary (const SimplexId &triangleId) const
 
virtual bool isVertexOnBoundary (const SimplexId &vertexId) const
 
virtual int preconditionBoundaryEdges ()
 
virtual int preconditionBoundaryTriangles ()
 
virtual int preconditionBoundaryVertices ()
 
virtual int preconditionCellEdges ()
 
virtual int preconditionCellNeighbors ()
 
virtual int preconditionCellTriangles ()
 
virtual int preconditionEdges ()
 
virtual int preconditionEdgeLinks ()
 
virtual int preconditionEdgeStars ()
 
virtual int preconditionEdgeTriangles ()
 
virtual int preconditionTriangles ()
 
virtual int preconditionTriangleEdges ()
 
virtual int preconditionTriangleLinks ()
 
virtual int preconditionTriangleStars ()
 
virtual int preconditionVertexEdges ()
 
virtual int preconditionVertexLinks ()
 
virtual int preconditionVertexNeighbors ()
 
virtual int preconditionVertexStars ()
 
virtual int preconditionVertexTriangles ()
 
int getEdgeIncenter (const SimplexId edgeId, float incenter[3]) const
 
int getTriangleIncenter (const SimplexId triangleId, float incenter[3]) const
 
int getTetraIncenter (const SimplexId tetraId, float incenter[3]) const
 
int getCellIncenter (const SimplexId cellid, const int dim, float incenter[3]) const
 
virtual int getCellVTKID (const int &ttkId, int &vtkId) const
 
template<class itemType >
size_t tableTableFootprint (const vector< vector< itemType > > &table, const string &tableName, ostream &stream) const
 
- Public Member Functions inherited from ttk::Wrapper
 Wrapper ()
 
 ~Wrapper () override=default
 
virtual bool needsToAbort ()=0
 
virtual int updateProgress (const float &progress)=0
 
- Public Member Functions inherited from ttk::Debug
 Debug ()
 
 ~Debug () override
 
virtual int setDebugLevel (const int &debugLevel)
 
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)
 
virtual int setWrapper (const Wrapper *wrapper)
 

Additional Inherited Members

- Protected Types inherited from ttk::ImplicitTriangulation
enum class  VertexPosition : char {
  LEFT_CORNER_1D , RIGHT_CORNER_1D , CENTER_1D , TOP_LEFT_CORNER_2D ,
  TOP_RIGHT_CORNER_2D , BOTTOM_LEFT_CORNER_2D , BOTTOM_RIGHT_CORNER_2D , TOP_EDGE_2D ,
  BOTTOM_EDGE_2D , LEFT_EDGE_2D , RIGHT_EDGE_2D , CENTER_2D ,
  TOP_LEFT_FRONT_CORNER_3D , TOP_RIGHT_FRONT_CORNER_3D , BOTTOM_LEFT_FRONT_CORNER_3D , BOTTOM_RIGHT_FRONT_CORNER_3D ,
  TOP_LEFT_BACK_CORNER_3D , TOP_RIGHT_BACK_CORNER_3D , BOTTOM_LEFT_BACK_CORNER_3D , BOTTOM_RIGHT_BACK_CORNER_3D ,
  TOP_FRONT_EDGE_3D , BOTTOM_FRONT_EDGE_3D , LEFT_FRONT_EDGE_3D , RIGHT_FRONT_EDGE_3D ,
  TOP_BACK_EDGE_3D , BOTTOM_BACK_EDGE_3D , LEFT_BACK_EDGE_3D , RIGHT_BACK_EDGE_3D ,
  TOP_LEFT_EDGE_3D , TOP_RIGHT_EDGE_3D , BOTTOM_LEFT_EDGE_3D , BOTTOM_RIGHT_EDGE_3D ,
  FRONT_FACE_3D , BACK_FACE_3D , TOP_FACE_3D , BOTTOM_FACE_3D ,
  LEFT_FACE_3D , RIGHT_FACE_3D , CENTER_3D
}
 
enum class  EdgePosition : char {
  L_xnn_3D , L_xn0_3D , L_xnN_3D , L_x0n_3D ,
  L_x00_3D , L_x0N_3D , L_xNn_3D , L_xN0_3D ,
  L_xNN_3D , H_nyn_3D , H_ny0_3D , H_nyN_3D ,
  H_0yn_3D , H_0y0_3D , H_0yN_3D , H_Nyn_3D ,
  H_Ny0_3D , H_NyN_3D , P_nnz_3D , P_n0z_3D ,
  P_nNz_3D , P_0nz_3D , P_00z_3D , P_0Nz_3D ,
  P_Nnz_3D , P_N0z_3D , P_NNz_3D , D1_xyn_3D ,
  D1_xy0_3D , D1_xyN_3D , D2_nyz_3D , D2_0yz_3D ,
  D2_Nyz_3D , D3_xnz_3D , D3_x0z_3D , D3_xNz_3D ,
  D4_3D , L_xn_2D , L_x0_2D , L_xN_2D ,
  H_ny_2D , H_0y_2D , H_Ny_2D , D1_2D ,
  FIRST_EDGE_1D , LAST_EDGE_1D , CENTER_1D
}
 
enum class  TrianglePosition : char {
  F_3D , C_3D , H_3D , D1_3D ,
  D2_3D , D3_3D , TOP_2D , BOTTOM_2D
}
 
- Protected Types inherited from ttk::AbstractTriangulation
using gradIdType = SimplexId
 
using gradientType = std::array< std::vector< gradIdType >, 6 >
 Discrete gradient internal struct.
 
using gradientKeyType = std::pair< const void *, size_t >
 Key type for gradientCacheType.
 
using gradientCacheType = LRUCache< gradientKeyType, gradientType >
 
- Protected Member Functions inherited from ttk::ImplicitTriangulation
int checkAcceleration ()
 
bool isPowerOfTwo (unsigned long long int v, unsigned long long int &r)
 
- Protected Member Functions inherited from ttk::RegularGridTriangulation
virtual void vertexToPosition2d (const SimplexId vertex, SimplexId p[2]) const =0
 
virtual void vertexToPosition (const SimplexId vertex, SimplexId p[3]) const =0
 
virtual void triangleToPosition2d (const SimplexId triangle, SimplexId p[2]) const =0
 
virtual void triangleToPosition (const SimplexId triangle, const int k, SimplexId p[3]) const =0
 
virtual void tetrahedronToPosition (const SimplexId tetrahedron, SimplexId p[3]) const =0
 
SimplexId findEdgeFromVertices (const SimplexId v0, const SimplexId v1) const
 
SimplexId findTriangleFromVertices (std::array< SimplexId, 3 > &verts) const
 
- Protected Member Functions inherited from ttk::AbstractTriangulation
virtual int getCellEdgeInternal (const SimplexId &ttkNotUsed(cellId), const int &ttkNotUsed(localEdgeId), SimplexId &ttkNotUsed(edgeId)) const
 
virtual SimplexId getCellEdgeNumberInternal (const SimplexId &ttkNotUsed(cellId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getCellEdgesInternal ()
 
virtual int getCellNeighborInternal (const SimplexId &ttkNotUsed(cellId), const int &ttkNotUsed(localNeighborId), SimplexId &ttkNotUsed(neighborId)) const
 
virtual SimplexId getCellNeighborNumberInternal (const SimplexId &ttkNotUsed(cellId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getCellNeighborsInternal ()
 
virtual int getCellTriangleInternal (const SimplexId &ttkNotUsed(cellId), const int &ttkNotUsed(localTriangleId), SimplexId &ttkNotUsed(triangleId)) const
 
virtual SimplexId getCellTriangleNumberInternal (const SimplexId &ttkNotUsed(cellId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getCellTrianglesInternal ()
 
virtual int getCellVertexInternal (const SimplexId &ttkNotUsed(cellId), const int &ttkNotUsed(localVertexId), SimplexId &ttkNotUsed(vertexId)) const
 
virtual SimplexId getCellVertexNumberInternal (const SimplexId &ttkNotUsed(cellId)) const
 
virtual int getDimensionalityInternal () const
 
virtual const std::vector< std::array< SimplexId, 2 > > * getEdgesInternal ()
 
virtual int getEdgeLinkInternal (const SimplexId &ttkNotUsed(edgeId), const int &ttkNotUsed(localLinkId), SimplexId &ttkNotUsed(linkId)) const
 
virtual SimplexId getEdgeLinkNumberInternal (const SimplexId &ttkNotUsed(edgeId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getEdgeLinksInternal ()
 
virtual int getEdgeStarInternal (const SimplexId &ttkNotUsed(edgeId), const int &ttkNotUsed(localStarId), SimplexId &ttkNotUsed(starId)) const
 
virtual SimplexId getEdgeStarNumberInternal (const SimplexId &ttkNotUsed(edgeId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getEdgeStarsInternal ()
 
virtual int getEdgeTriangleInternal (const SimplexId &ttkNotUsed(edgeId), const int &ttkNotUsed(localTriangleId), SimplexId &ttkNotUsed(triangleId)) const
 
virtual SimplexId getEdgeTriangleNumberInternal (const SimplexId &ttkNotUsed(edgeId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getEdgeTrianglesInternal ()
 
virtual int getEdgeVertexInternal (const SimplexId &ttkNotUsed(edgeId), const int &ttkNotUsed(localVertexId), SimplexId &ttkNotUsed(vertexId)) const
 
virtual SimplexId getNumberOfCellsInternal () const
 
virtual SimplexId getNumberOfEdgesInternal () const
 
virtual SimplexId getNumberOfTrianglesInternal () const
 
virtual SimplexId getNumberOfVerticesInternal () const
 
virtual const std::vector< std::array< SimplexId, 3 > > * getTrianglesInternal ()
 
virtual int getTriangleEdgeInternal (const SimplexId &ttkNotUsed(triangleId), const int &ttkNotUsed(localEdgeId), SimplexId &ttkNotUsed(edgeId)) const
 
virtual SimplexId getTriangleEdgeNumberInternal (const SimplexId &ttkNotUsed(triangleId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getTriangleEdgesInternal ()
 
virtual int getTriangleLinkInternal (const SimplexId &ttkNotUsed(triangleId), const int &ttkNotUsed(localLinkId), SimplexId &ttkNotUsed(linkId)) const
 
virtual SimplexId getTriangleLinkNumberInternal (const SimplexId &ttkNotUsed(triangleId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getTriangleLinksInternal ()
 
virtual int getTriangleStarInternal (const SimplexId &ttkNotUsed(triangleId), const int &ttkNotUsed(localStarId), SimplexId &ttkNotUsed(starId)) const
 
virtual SimplexId getTriangleStarNumberInternal (const SimplexId &ttkNotUsed(triangleId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getTriangleStarsInternal ()
 
virtual int getTriangleVertexInternal (const SimplexId &ttkNotUsed(triangleId), const int &ttkNotUsed(localVertexId), SimplexId &ttkNotUsed(vertexId)) const
 
virtual int getVertexEdgeInternal (const SimplexId &ttkNotUsed(vertexId), const int &ttkNotUsed(localEdgeId), SimplexId &ttkNotUsed(edgeId)) const
 
virtual SimplexId getVertexEdgeNumberInternal (const SimplexId &ttkNotUsed(vertexId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexEdgesInternal ()
 
virtual int getVertexLinkInternal (const SimplexId &ttkNotUsed(vertexId), const int &ttkNotUsed(localLinkId), SimplexId &ttkNotUsed(linkId)) const
 
virtual SimplexId getVertexLinkNumberInternal (const SimplexId &ttkNotUsed(vertexId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexLinksInternal ()
 
virtual int getVertexNeighborInternal (const SimplexId &ttkNotUsed(vertexId), const int &ttkNotUsed(localNeighborId), SimplexId &ttkNotUsed(neighborId)) const
 
virtual SimplexId getVertexNeighborNumberInternal (const SimplexId &ttkNotUsed(vertexId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexNeighborsInternal ()
 
virtual int getVertexPointInternal (const SimplexId &ttkNotUsed(vertexId), float &ttkNotUsed(x), float &ttkNotUsed(y), float &ttkNotUsed(z)) const
 
virtual int getVertexStarInternal (const SimplexId &ttkNotUsed(vertexId), const int &ttkNotUsed(localStarId), SimplexId &ttkNotUsed(starId)) const
 
virtual SimplexId getVertexStarNumberInternal (const SimplexId &ttkNotUsed(vertexId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexStarsInternal ()
 
virtual int getVertexTriangleInternal (const SimplexId &ttkNotUsed(vertexId), const int &ttkNotUsed(localTriangleId), SimplexId &ttkNotUsed(triangleId)) const
 
virtual SimplexId getVertexTriangleNumberInternal (const SimplexId &ttkNotUsed(vertexId)) const
 
virtual const std::vector< std::vector< SimplexId > > * getVertexTrianglesInternal ()
 
virtual bool isEdgeOnBoundaryInternal (const SimplexId &ttkNotUsed(edgeId)) const
 
virtual bool isTriangleOnBoundaryInternal (const SimplexId &ttkNotUsed(triangleId)) const
 
virtual bool isVertexOnBoundaryInternal (const SimplexId &ttkNotUsed(vertexId)) const
 
bool hasPreconditionedBoundaryEdges () const
 
bool hasPreconditionedBoundaryTriangles () const
 
bool hasPreconditionedBoundaryVertices () const
 
bool hasPreconditionedCellEdges () const
 
bool hasPreconditionedCellNeighbors () const
 
bool hasPreconditionedCellTriangles () const
 
bool hasPreconditionedEdgeLinks () const
 
bool hasPreconditionedEdgeStars () const
 
bool hasPreconditionedEdgeTriangles () const
 
bool hasPreconditionedEdges () const
 
bool hasPreconditionedTriangles () const
 
bool hasPreconditionedTriangleEdges () const
 
bool hasPreconditionedTriangleLinks () const
 
bool hasPreconditionedTriangleStars () const
 
bool hasPreconditionedVertexEdges () const
 
bool hasPreconditionedVertexLinks () const
 
bool hasPreconditionedVertexNeighbors () const
 
bool hasPreconditionedVertexStars () const
 
bool hasPreconditionedVertexTriangles () const
 
bool hasPreconditionedManifold () const
 
bool needsToAbort () override
 
virtual int preconditionBoundaryEdgesInternal ()
 
virtual int preconditionBoundaryTrianglesInternal ()
 
virtual int preconditionBoundaryVerticesInternal ()
 
virtual int preconditionCellEdgesInternal ()
 
virtual int preconditionCellNeighborsInternal ()
 
virtual int preconditionCellTrianglesInternal ()
 
virtual int preconditionEdgesInternal ()
 
virtual int preconditionEdgeLinksInternal ()
 
virtual int preconditionEdgeStarsInternal ()
 
virtual int preconditionEdgeTrianglesInternal ()
 
virtual int preconditionTrianglesInternal ()
 
virtual int preconditionTriangleEdgesInternal ()
 
virtual int preconditionTriangleLinksInternal ()
 
virtual int preconditionTriangleStarsInternal ()
 
virtual int preconditionVertexEdgesInternal ()
 
virtual int preconditionVertexLinksInternal ()
 
virtual int preconditionVertexNeighborsInternal ()
 
virtual int preconditionVertexStarsInternal ()
 
virtual int preconditionVertexTrianglesInternal ()
 
virtual int preconditionManifoldInternal ()
 
virtual int getCellVTKIDInternal (const int &ttkId, int &vtkId) const
 
template<class itemType >
size_t tableFootprint (const std::vector< itemType > &table, const std::string &tableName="", std::ostream &stream=std::cout) const
 
template<class itemType >
size_t tableTableFootprint (const std::vector< std::vector< itemType > > &table, const std::string &tableName="", std::ostream &stream=std::cout) const
 
int updateProgress (const float &ttkNotUsed(progress)) override
 
gradientCacheTypegetGradientCacheHandler () const
 
- 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 Attributes inherited from ttk::ImplicitTriangulation
std::array< SimplexId, 14 > vertexNeighborABCDEFGH_ {}
 
std::array< SimplexId, 10 > vertexNeighborABCD_ {}
 
std::array< SimplexId, 10 > vertexNeighborEFGH_ {}
 
std::array< SimplexId, 10 > vertexNeighborAEFB_ {}
 
std::array< SimplexId, 10 > vertexNeighborGHDC_ {}
 
std::array< SimplexId, 10 > vertexNeighborAEGC_ {}
 
std::array< SimplexId, 10 > vertexNeighborBFHD_ {}
 
std::array< SimplexId, 8 > vertexNeighborAB_ {}
 
std::array< SimplexId, 8 > vertexNeighborBD_ {}
 
std::array< SimplexId, 8 > vertexNeighborGH_ {}
 
std::array< SimplexId, 8 > vertexNeighborEG_ {}
 
std::array< SimplexId, 8 > vertexNeighborCG_ {}
 
std::array< SimplexId, 8 > vertexNeighborBF_ {}
 
std::array< SimplexId, 7 > vertexNeighborB_ {}
 
std::array< SimplexId, 7 > vertexNeighborG_ {}
 
std::array< SimplexId, 6 > vertexNeighborEF_ {}
 
std::array< SimplexId, 6 > vertexNeighborCD_ {}
 
std::array< SimplexId, 6 > vertexNeighborAC_ {}
 
std::array< SimplexId, 6 > vertexNeighborAE_ {}
 
std::array< SimplexId, 6 > vertexNeighborFH_ {}
 
std::array< SimplexId, 6 > vertexNeighborDH_ {}
 
std::array< SimplexId, 4 > vertexNeighborA_ {}
 
std::array< SimplexId, 4 > vertexNeighborC_ {}
 
std::array< SimplexId, 4 > vertexNeighborD_ {}
 
std::array< SimplexId, 4 > vertexNeighborE_ {}
 
std::array< SimplexId, 4 > vertexNeighborF_ {}
 
std::array< SimplexId, 4 > vertexNeighborH_ {}
 
std::array< SimplexId, 6 > vertexNeighbor2dABCD_ {}
 
std::array< SimplexId, 4 > vertexNeighbor2dAB_ {}
 
std::array< SimplexId, 4 > vertexNeighbor2dCD_ {}
 
std::array< SimplexId, 4 > vertexNeighbor2dAC_ {}
 
std::array< SimplexId, 4 > vertexNeighbor2dBD_ {}
 
std::array< SimplexId, 3 > vertexNeighbor2dB_ {}
 
std::array< SimplexId, 3 > vertexNeighbor2dC_ {}
 
std::array< SimplexId, 2 > vertexNeighbor2dA_ {}
 
std::array< SimplexId, 2 > vertexNeighbor2dD_ {}
 
bool hasPreconditionedVerticesAndCells_ {false}
 
float origin_ [3]
 
float spacing_ [3]
 
SimplexId nbvoxels_ [3]
 
SimplexId vshift_ [2]
 
SimplexId esetdims_ [7]
 
SimplexId esetshift_ [7]
 
SimplexId eshift_ [14]
 
SimplexId tsetdims_ [6]
 
SimplexId tsetshift_ [6]
 
SimplexId tshift_ [12]
 
SimplexId tetshift_ [2]
 
SimplexId cellNumber_
 
SimplexId vertexNumber_
 
SimplexId edgeNumber_
 
SimplexId triangleNumber_
 
SimplexId tetrahedronNumber_
 
SimplexId Di_
 
SimplexId Dj_
 
bool isAccelerated_
 
SimplexId mod_ [2]
 
SimplexId div_ [2]
 
- Protected Attributes inherited from ttk::RegularGridTriangulation
std::array< SimplexId, 3 > dimensions_
 
int dimensionality_
 
- Protected Attributes inherited from ttk::AbstractTriangulation
bool hasPeriodicBoundaries_
 
bool hasPreconditionedBoundaryEdges_
 
bool hasPreconditionedBoundaryTriangles_
 
bool hasPreconditionedBoundaryVertices_
 
bool hasPreconditionedCellEdges_
 
bool hasPreconditionedCellNeighbors_
 
bool hasPreconditionedCellTriangles_
 
bool hasPreconditionedEdges_
 
bool hasPreconditionedEdgeLinks_
 
bool hasPreconditionedEdgeStars_
 
bool hasPreconditionedEdgeTriangles_
 
bool hasPreconditionedTriangles_
 
bool hasPreconditionedTriangleEdges_
 
bool hasPreconditionedTriangleLinks_
 
bool hasPreconditionedTriangleStars_
 
bool hasPreconditionedVertexEdges_
 
bool hasPreconditionedVertexLinks_
 
bool hasPreconditionedVertexNeighbors_
 
bool hasPreconditionedVertexStars_
 
bool hasPreconditionedVertexTriangles_
 
bool hasPreconditionedManifold_
 
bool isManifold_ {true}
 
std::array< SimplexId, 3 > gridDimensions_
 
std::vector< bool > boundaryEdges_
 
std::vector< bool > boundaryTriangles_
 
std::vector< bool > boundaryVertices_
 
std::vector< std::array< SimplexId, 6 > > tetraEdgeList_
 
std::vector< std::vector< SimplexId > > cellNeighborList_
 
std::vector< std::array< SimplexId, 4 > > tetraTriangleList_
 
std::vector< std::vector< SimplexId > > edgeLinkList_
 
std::vector< std::array< SimplexId, 2 > > edgeList_
 
std::vector< std::vector< SimplexId > > edgeStarList_
 
std::vector< std::vector< SimplexId > > edgeTriangleList_
 
std::vector< std::array< SimplexId, 3 > > triangleList_
 
std::vector< std::array< SimplexId, 3 > > triangleEdgeList_
 
std::vector< std::vector< SimplexId > > triangleLinkList_
 
std::vector< std::vector< SimplexId > > triangleStarList_
 
std::vector< std::vector< SimplexId > > vertexEdgeList_
 
std::vector< std::vector< SimplexId > > vertexLinkList_
 
std::vector< std::vector< SimplexId > > vertexNeighborList_
 
std::vector< std::vector< SimplexId > > vertexStarList_
 
std::vector< std::vector< SimplexId > > vertexTriangleList_
 
std::vector< std::vector< SimplexId > > cellEdgeVector_ {}
 
std::vector< std::vector< SimplexId > > cellTriangleVector_ {}
 
std::vector< std::vector< SimplexId > > triangleEdgeVector_ {}
 
gradientCacheType gradientCache_ {}
 
- Protected Attributes inherited from ttk::Wrapper
float processingProgress_
 
- 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_
 
- Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW
 

Detailed Description

Implicit Triangulation class with preconditioning.

Definition at line 9 of file ImplicitPreconditions.h.

Constructor & Destructor Documentation

◆ ImplicitWithPreconditions()

ttk::ImplicitWithPreconditions::ImplicitWithPreconditions ( )
inline

Definition at line 12 of file ImplicitPreconditions.h.

Member Function Documentation

◆ clear()

int ttk::ImplicitWithPreconditions::clear ( )
inline

Definition at line 47 of file ImplicitPreconditions.h.

◆ getEdgeCoords()

std::array< SimplexId, 3 > const & ttk::ImplicitWithPreconditions::getEdgeCoords ( const SimplexId  e) const
inline

Definition at line 32 of file ImplicitPreconditions.h.

◆ getEdgePosition()

EdgePosition ttk::ImplicitWithPreconditions::getEdgePosition ( const SimplexId  e) const
inline

Definition at line 28 of file ImplicitPreconditions.h.

◆ getTetrahedronCoords()

const std::array< SimplexId, 3 > & ttk::ImplicitWithPreconditions::getTetrahedronCoords ( const SimplexId  t) const
inline

Definition at line 43 of file ImplicitPreconditions.h.

◆ getTriangleCoords()

std::array< SimplexId, 3 > const & ttk::ImplicitWithPreconditions::getTriangleCoords ( const SimplexId  t) const
inline

Definition at line 39 of file ImplicitPreconditions.h.

◆ getTrianglePosition()

TrianglePosition ttk::ImplicitWithPreconditions::getTrianglePosition ( const SimplexId  t) const
inline

Definition at line 35 of file ImplicitPreconditions.h.

◆ getVertexCoords()

std::array< SimplexId, 3 > const & ttk::ImplicitWithPreconditions::getVertexCoords ( const SimplexId  v) const
inline

Definition at line 25 of file ImplicitPreconditions.h.

◆ getVertexPosition()

VertexPosition ttk::ImplicitWithPreconditions::getVertexPosition ( const SimplexId  v) const
inline

Definition at line 21 of file ImplicitPreconditions.h.

◆ preconditionEdgesInternal()

int ttk::ImplicitWithPreconditions::preconditionEdgesInternal ( )
overridevirtual

Implements ttk::ImplicitTriangulation.

Definition at line 139 of file ImplicitPreconditions.cpp.

◆ preconditionTetrahedronsInternal()

int ttk::ImplicitWithPreconditions::preconditionTetrahedronsInternal ( )
overridevirtual

Implements ttk::ImplicitTriangulation.

Definition at line 350 of file ImplicitPreconditions.cpp.

◆ preconditionTrianglesInternal()

int ttk::ImplicitWithPreconditions::preconditionTrianglesInternal ( )
overridevirtual

Implements ttk::ImplicitTriangulation.

Definition at line 303 of file ImplicitPreconditions.cpp.

◆ preconditionVerticesInternal()

int ttk::ImplicitWithPreconditions::preconditionVerticesInternal ( )
overridevirtual

Implements ttk::ImplicitTriangulation.

Definition at line 3 of file ImplicitPreconditions.cpp.


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