PeriDyno
0.9.2
Loading...
Searching...
No Matches
peridyno
src
Dynamics
Cuda
DualParticleSystem
SurfaceLevelSetConstructionNode.h
Go to the documentation of this file.
1
17
#include "
Node.h
"
18
#include "ParticleSystem/ParticleSystem.h"
19
#include "
Topology/SignedDistanceField.h
"
20
#include "Topology/TriangleSet.h"
21
#include "
Mapping/MarchingCubes.h
"
22
namespace
dyno
23
{
24
template
<
typename
TDataType>
25
class
SurfaceLevelSetConstructionNode
:
public
Node
26
{
27
DECLARE_TCLASS
(
SurfaceLevelSetConstructionNode
,
TDataType
)
28
public
:
29
typedef
typename
TDataType::Real
Real
;
30
typedef
typename
TDataType::Coord
Coord
;
31
32
SurfaceLevelSetConstructionNode
() ;
33
~SurfaceLevelSetConstructionNode
() {};
34
35
void
UpdateLevelset
();
36
37
DEF_NODE_PORT
(
ParticleSystem<TDataType>
,
ParticleSystem
,
"Initial Fluid Particles"
);
38
39
DEF_ARRAY_STATE
(
Coord
,
Points
, DeviceType::GPU,
"Point positions"
);
40
41
DEF_INSTANCE_STATE
(
SignedDistanceField<TDataType>
,
LevelSet
,
"A 3D signed distance field"
);
42
43
DEF_INSTANCE_STATE
(
TriangleSet<TDataType>
,
TriangleSet
,
"An iso surface"
);
44
45
DEF_ARRAY_STATE
(
Coord
,
GridPoistion
, DeviceType::GPU,
"Grid positions"
);
46
47
DEF_VAR_STATE
(
Real
,
GridSpacing
, 0.01,
"Grid spacing"
);
48
49
protected
:
50
void
resetStates
();
51
52
void
preUpdateStates
();
53
54
void
constrGridPositionArray
();
55
56
};
57
58
59
}
MarchingCubes.h
Node.h
DECLARE_TCLASS
#define DECLARE_TCLASS(name, T1)
Definition
Object.h:87
SignedDistanceField.h
dyno::ArrayMap
Definition
ArrayMap.h:25
dyno::Node
Definition
Node.h:68
dyno::ParticleSystem
This class represents the base class for more advanced particle-based nodes.
Definition
ParticleSystem.h:14
dyno::SurfaceLevelSetConstructionNode
Definition
SurfaceLevelSetConstructionNode.h:26
dyno::SurfaceLevelSetConstructionNode::DEF_ARRAY_STATE
DEF_ARRAY_STATE(Coord, GridPoistion, DeviceType::GPU, "Grid positions")
dyno::SurfaceLevelSetConstructionNode::resetStates
void resetStates()
dyno::SurfaceLevelSetConstructionNode::constrGridPositionArray
void constrGridPositionArray()
dyno::SurfaceLevelSetConstructionNode::~SurfaceLevelSetConstructionNode
~SurfaceLevelSetConstructionNode()
Definition
SurfaceLevelSetConstructionNode.h:33
dyno::SurfaceLevelSetConstructionNode::Coord
TDataType::Coord Coord
Definition
SurfaceLevelSetConstructionNode.h:30
dyno::SurfaceLevelSetConstructionNode::SurfaceLevelSetConstructionNode
SurfaceLevelSetConstructionNode()
dyno::SurfaceLevelSetConstructionNode::Real
TDataType::Real Real
Definition
SurfaceLevelSetConstructionNode.h:29
dyno::SurfaceLevelSetConstructionNode::DEF_INSTANCE_STATE
DEF_INSTANCE_STATE(TriangleSet< TDataType >, TriangleSet, "An iso surface")
dyno::SurfaceLevelSetConstructionNode::DEF_NODE_PORT
DEF_NODE_PORT(ParticleSystem< TDataType >, ParticleSystem, "Initial Fluid Particles")
dyno::SurfaceLevelSetConstructionNode::UpdateLevelset
void UpdateLevelset()
dyno::SurfaceLevelSetConstructionNode::DEF_ARRAY_STATE
DEF_ARRAY_STATE(Coord, Points, DeviceType::GPU, "Point positions")
dyno::SurfaceLevelSetConstructionNode::DEF_INSTANCE_STATE
DEF_INSTANCE_STATE(SignedDistanceField< TDataType >, LevelSet, "A 3D signed distance field")
dyno::SurfaceLevelSetConstructionNode::preUpdateStates
void preUpdateStates()
dyno::SurfaceLevelSetConstructionNode::DEF_VAR_STATE
DEF_VAR_STATE(Real, GridSpacing, 0.01, "Grid spacing")
dyno::TriangleSet
Definition
TriangleSet.h:7
dyno
This is an implementation of AdditiveCCD based on peridyno.
Definition
Array.h:24
Generated by
1.9.8