TTK
|
This filter computes a signed distance field given a surface in input. More...
#include <SignedDistanceField.h>
Public Member Functions | |
SignedDistanceField () | |
template<typename triangulationType , typename triangulationType2 > | |
int | execute (float *const outputScalars, triangulationType *const triangulation, triangulationType2 *const boundingTriangulation, int *const edgeCrossing, int *const isInterior) const |
int | preconditionTriangulation (AbstractTriangulation *triangulation) const |
![]() | |
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) |
![]() | |
BaseClass () | |
virtual | ~BaseClass ()=default |
int | getThreadNumber () const |
virtual int | setThreadNumber (const int threadNumber) |
Protected Types | |
enum class | VertexMarchingType { FAR , NARROW , FROZEN } |
Protected Member Functions | |
template<typename triangulationType > | |
void | findOutsideVertices (const SimplexId vertexId, triangulationType *const boundingTriangulation, const std::vector< bool > &vertexIntersection, int *const isInterior) const |
int | getNeighbor (unsigned int vertexId, unsigned int dim, int dir) const |
template<typename dataType > | |
void | fastMarching (std::vector< bool > &vertexIntersection, dataType *const distances, int *const isInterior) const |
template<typename dataType > | |
void | fastMarchingIterativeNode (std::vector< VertexMarchingType > &vertexType, dataType *const distances, int *const isInterior) const |
template<typename dataType > | |
void | fastMarchingIterativeBand (std::vector< VertexMarchingType > &vertexType, dataType *const distances, int *const isInterior) const |
template<typename dataType > | |
dataType | fastMarchingUpdatePoint (unsigned int vertexId, dataType *const distances, int *const isInterior, std::vector< VertexMarchingType > &vertexType) const |
template<typename dataType > | |
dataType | fastMarchingUpdatePointOrderTwo (unsigned int vertexId, dataType *const distances, int *const isInterior, std::vector< VertexMarchingType > &vertexType) const |
template<typename dataType > | |
dataType | fastMarchingUpdatePointOrderOne (unsigned int vertexId, dataType *const distances, int *const isInterior, std::vector< VertexMarchingType > &vertexType) const |
template<typename dataType > | |
bool | fastMarchingSolveQuadratic (unsigned int vertexId, dataType a, dataType b, dataType c, int *const isInterior, dataType &out) const |
![]() | |
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 | |
unsigned int | xResolution_ {1} |
unsigned int | yResolution_ {1} |
unsigned int | zResolution_ {1} |
std::array< double, 3 > | spacing_ {1.0, 1.0, 1.0} |
std::array< double, 3 > | invSpacingSquared_ {1.0, 1.0, 1.0} |
bool | expandBox_ = true |
int | backend_ = 0 |
int | fastMarchingOrder_ = 1 |
![]() | |
int | debugLevel_ |
std::string | debugMsgPrefix_ |
std::string | debugMsgNamePrefix_ |
![]() | |
bool | lastObject_ |
int | threadNumber_ |
Wrapper * | wrapper_ |
Additional Inherited Members | |
![]() | |
static COMMON_EXPORTS debug::LineMode | lastLineMode = ttk::debug::LineMode::NEW |
This filter computes a signed distance field given a surface in input.
It implements three backends (accelerated with a BVH data structure):
J.A. Sethian. A Fast Marching Level Set Method for Monotonically Advancing Fronts, Proc. Natl. Acad. Sci., 93, 4, pp.1591–1595, 1996
Online examples:
Definition at line 52 of file SignedDistanceField.h.
|
strongprotected |
Enumerator | |
---|---|
FAR | |
NARROW | |
FROZEN |
Definition at line 94 of file SignedDistanceField.h.
ttk::SignedDistanceField::SignedDistanceField | ( | ) |
Definition at line 3 of file SignedDistanceField.cpp.
int ttk::SignedDistanceField::execute | ( | float *const | outputScalars, |
triangulationType *const | triangulation, | ||
triangulationType2 *const | boundingTriangulation, | ||
int *const | edgeCrossing, | ||
int *const | isInterior | ||
) | const |
Definition at line 508 of file SignedDistanceField.h.
|
protected |
Definition at line 151 of file SignedDistanceField.h.
|
protected |
Definition at line 294 of file SignedDistanceField.h.
|
protected |
Definition at line 190 of file SignedDistanceField.h.
|
protected |
Definition at line 443 of file SignedDistanceField.h.
|
protected |
Definition at line 337 of file SignedDistanceField.h.
|
protected |
Definition at line 406 of file SignedDistanceField.h.
|
protected |
Definition at line 353 of file SignedDistanceField.h.
|
protected |
Definition at line 463 of file SignedDistanceField.h.
|
inlineprotected |
Definition at line 80 of file SignedDistanceField.h.
|
inline |
Definition at line 64 of file SignedDistanceField.h.
|
protected |
Definition at line 144 of file SignedDistanceField.h.
|
protected |
Definition at line 143 of file SignedDistanceField.h.
|
protected |
Definition at line 145 of file SignedDistanceField.h.
|
protected |
Definition at line 142 of file SignedDistanceField.h.
|
protected |
Definition at line 141 of file SignedDistanceField.h.
|
protected |
Definition at line 140 of file SignedDistanceField.h.
|
protected |
Definition at line 140 of file SignedDistanceField.h.
|
protected |
Definition at line 140 of file SignedDistanceField.h.