VTK-m
2.0
|
Implicit function that can switch among known implicit function types. More...
#include <ImplicitFunction.h>
Private Types | |
using | Superclass = vtkm::ImplicitFunctionMultiplexer< vtkm::Box, vtkm::Cylinder, vtkm::Frustum, vtkm::Plane, vtkm::Sphere > |
Additional Inherited Members | |
Public Types inherited from vtkm::ImplicitFunctionMultiplexer< vtkm::Box, vtkm::Cylinder, vtkm::Frustum, vtkm::Plane, vtkm::Sphere > | |
using | Scalar = typename Superclass::Scalar |
using | Vector = typename Superclass::Vector |
Public Member Functions inherited from vtkm::ImplicitFunctionMultiplexer< vtkm::Box, vtkm::Cylinder, vtkm::Frustum, vtkm::Plane, vtkm::Sphere > | |
ImplicitFunctionMultiplexer ()=default | |
VTKM_EXEC_CONT | ImplicitFunctionMultiplexer (const vtkm::internal::ImplicitFunctionBase< FunctionType > &function) |
VTKM_EXEC_CONT Scalar | Value (const Vector &point) const |
VTKM_EXEC_CONT Vector | Gradient (const Vector &point) const |
Implicit function that can switch among known implicit function types.
ImplicitFunctionGeneral
can behave as any of the predefined implicit functions provided by VTK-m. This is helpful when the type of implicit function is not known at compile time. For example, say you want a filter that can operate on an implicit function. Rather than compile separate versions of the filter, one for each type of implicit function, you can compile the filter once for ImplicitFunctionGeneral
and then set the desired implicit function at runtime.
To use ImplicitFunctionGeneral
, simply create the actual implicit function that you want to use, and then set the ImplicitFunctionGeneral
to that concrete implicit function object.
|
private |