PeriDyno 1.0.0
Loading...
Searching...
No Matches
FastSweepingMethod.h
Go to the documentation of this file.
1
16#pragma once
17#include "Topology/LevelSet.h"
18#include "Topology/TriangleSet.h"
19
21
22namespace dyno {
24 typedef Vector<int, 3> Vec3i;
25
29
35 template<typename TDataType>
37 {
39 public:
40 typedef typename TDataType::Real Real;
41 typedef typename TDataType::Coord Coord;
42
44 ~FastSweepingMethod() override;
45
46 DEF_VAR(Real, Spacing, 0.05f, "");
47
48 DEF_VAR(uint, Padding, 10, "");
49
50 public:
52
54
55 protected:
56 void compute() override;
57
58 private:
59 void loadClosedSurface();
60 void makeLevelSet();
61
64
65 int ni;
66 int nj;
67 int nk;
71 };
72}
#define DECLARE_TCLASS(name, T1)
Definition Object.h:87
DEF_INSTANCE_IN(TriangleSet< TDataType >, TriangleSet, "")
DEF_VAR(Real, Spacing, 0.05f, "")
DEF_VAR(uint, Padding, 10, "")
DEF_INSTANCE_OUT(LevelSet< TDataType >, LevelSet, "")
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25
Vector< int, 3 > Vec3i
Definition Vector3D.h:95
CArray3D< int > CArray3i
Vector< unsigned int, 3 > Vec3ui
Vector< float, 3 > Vec3f
Definition Vector3D.h:93
Array< T, DeviceType::CPU > CArray
Definition Array.h:151
unsigned int uint
Definition VkProgram.h:14
CArray3D< float > CArray3f
CArray3D< unsigned int > CArray3ui
Array3D< T, DeviceType::CPU > CArray3D
Definition Array3D.h:136