HDK
|
Hyperbolic advection of narrow-band level sets in an external velocity field. More...
#include <LevelSetAdvect.h>
Public Types | |
using | GridType = GridT |
using | TrackerT = LevelSetTracker< GridT, InterruptT > |
using | LeafRange = typename TrackerT::LeafRange |
using | LeafType = typename TrackerT::LeafType |
using | BufferType = typename TrackerT::BufferType |
using | ValueType = typename TrackerT::ValueType |
using | VectorType = typename FieldT::VectorType |
Public Member Functions | |
LevelSetAdvection (GridT &grid, const FieldT &field, InterruptT *interrupt=nullptr) | |
Main constructor. More... | |
virtual | ~LevelSetAdvection () |
math::BiasedGradientScheme | getSpatialScheme () const |
Return the spatial finite difference scheme. More... | |
void | setSpatialScheme (math::BiasedGradientScheme scheme) |
Set the spatial finite difference scheme. More... | |
math::TemporalIntegrationScheme | getTemporalScheme () const |
Return the temporal integration scheme. More... | |
void | setTemporalScheme (math::TemporalIntegrationScheme scheme) |
Set the spatial finite difference scheme. More... | |
math::BiasedGradientScheme | getTrackerSpatialScheme () const |
Return the spatial finite difference scheme. More... | |
void | setTrackerSpatialScheme (math::BiasedGradientScheme scheme) |
Set the spatial finite difference scheme. More... | |
math::TemporalIntegrationScheme | getTrackerTemporalScheme () const |
Return the temporal integration scheme. More... | |
void | setTrackerTemporalScheme (math::TemporalIntegrationScheme scheme) |
Set the spatial finite difference scheme. More... | |
int | getNormCount () const |
Return The number of normalizations performed per track or normalize call. More... | |
void | setNormCount (int n) |
Set the number of normalizations performed per track or normalize call. More... | |
int | getGrainSize () const |
Return the grain-size used for multi-threading. More... | |
void | setGrainSize (int grainsize) |
Set the grain-size used for multi-threading. More... | |
size_t | advect (ValueType time0, ValueType time1) |
Hyperbolic advection of narrow-band level sets in an external velocity field.
The FieldType
template argument below refers to any functor with the following interface (see tools/VelocityFields.h for examples):
The InterruptType
template argument below refers to any class with the following interface:
Definition at line 73 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::BufferType = typename TrackerT::BufferType |
Definition at line 80 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::GridType = GridT |
Definition at line 76 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::LeafRange = typename TrackerT::LeafRange |
Definition at line 78 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::LeafType = typename TrackerT::LeafType |
Definition at line 79 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::TrackerT = LevelSetTracker<GridT, InterruptT> |
Definition at line 77 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::ValueType = typename TrackerT::ValueType |
Definition at line 81 of file LevelSetAdvect.h.
using openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::VectorType = typename FieldT::VectorType |
Definition at line 82 of file LevelSetAdvect.h.
|
inline |
Main constructor.
Definition at line 85 of file LevelSetAdvect.h.
|
inlinevirtual |
Definition at line 90 of file LevelSetAdvect.h.
size_t openvdb::OPENVDB_VERSION_NAME::tools::LevelSetAdvection< GridT, FieldT, InterruptT >::advect | ( | ValueType | time0, |
ValueType | time1 | ||
) |
Advect the level set from its current time, time0, to its final time, time1. If time0>time1 backward advection is performed.
Definition at line 217 of file LevelSetAdvect.h.
|
inline |
Return the grain-size used for multi-threading.
Definition at line 127 of file LevelSetAdvect.h.
|
inline |
Return The number of normalizations performed per track or normalize call.
Definition at line 121 of file LevelSetAdvect.h.
|
inline |
Return the spatial finite difference scheme.
Definition at line 93 of file LevelSetAdvect.h.
|
inline |
Return the temporal integration scheme.
Definition at line 98 of file LevelSetAdvect.h.
|
inline |
Return the spatial finite difference scheme.
Definition at line 103 of file LevelSetAdvect.h.
|
inline |
Return the temporal integration scheme.
Definition at line 111 of file LevelSetAdvect.h.
|
inline |
Set the grain-size used for multi-threading.
Definition at line 130 of file LevelSetAdvect.h.
|
inline |
Set the number of normalizations performed per track or normalize call.
Definition at line 124 of file LevelSetAdvect.h.
|
inline |
Set the spatial finite difference scheme.
Definition at line 95 of file LevelSetAdvect.h.
|
inline |
Set the spatial finite difference scheme.
Definition at line 100 of file LevelSetAdvect.h.
|
inline |
Set the spatial finite difference scheme.
Definition at line 107 of file LevelSetAdvect.h.
|
inline |
Set the spatial finite difference scheme.
Definition at line 115 of file LevelSetAdvect.h.