SPHPointsToImplicit3.h
Go to the documentation of this file.
1 /*************************************************************************
2 > File Name: SPHPointsToImplicit3.h
3 > Project Name: CubbyFlow
4 > Author: Chan-Ho Chris Ohk
5 > Purpose: 3-D points-to-implicit converter based on standard SPH kernel.
6 > Created Time: 2017/11/18
7 > Copyright (c) 2018, Chan-Ho Chris Ohk
8 *************************************************************************/
9 #ifndef CUBBYFLOW_SPH_POINTS_TO_IMPLICIT3_H
10 #define CUBBYFLOW_SPH_POINTS_TO_IMPLICIT3_H
11 
13 
14 namespace CubbyFlow
15 {
25  {
26  public:
28  SPHPointsToImplicit3(double kernelRadius = 1.0, double cutOffDensity = 0.5, bool isOutputSDF = true);
29 
31  void Convert(const ConstArrayAccessor1<Vector3D>& points, ScalarGrid3* output) const override;
32 
33  private:
34  double m_kernelRadius = 1.0;
35  double m_cutOffDensity = 0.5;
36  bool m_isOutputSDF = true;
37  };
38 
40  using SPHPointsToImplicit3Ptr = std::shared_ptr<SPHPointsToImplicit3>;
41 }
42 
43 #endif
void Convert(const ConstArrayAccessor1< Vector3D > &points, ScalarGrid3 *output) const override
Converts the given points to implicit surface scalar field.
1-D read-only array accessor class.
Definition: ArrayAccessor1.h:185
3-D points-to-implicit converter based on standard SPH kernel.
Definition: SPHPointsToImplicit3.h:24
Definition: pybind11Utils.h:24
Abstract base class for 3-D points-to-implicit converters.
Definition: PointsToImplicit3.h:19
std::shared_ptr< SPHPointsToImplicit3 > SPHPointsToImplicit3Ptr
Shared pointer type for SPHPointsToImplicit3 class.
Definition: SPHPointsToImplicit3.h:40
Abstract base class for 3-D scalar grid structure.
Definition: ScalarGrid3.h:21
SPHPointsToImplicit3(double kernelRadius=1.0, double cutOffDensity=0.5, bool isOutputSDF=true)
Constructs the converter with given kernel radius and cut-off density.