PeriDyno 1.0.0
Loading...
Searching...
No Matches
TriangularMeshBoundary.h
Go to the documentation of this file.
1
16#pragma once
17#include "Node.h"
18
19#include "ParticleSystem/ParticleSystem.h"
20
21#include "Topology/TriangleSet.h"
22
23namespace dyno
24{
28 template<typename TDataType>
30 {
32 public:
33 typedef typename TDataType::Real Real;
34 typedef typename TDataType::Coord Coord;
35
37 ~TriangularMeshBoundary() override;
38
39
40 public:
41 DEF_VAR(Real, Thickness, 0.0065, "Mesh thickness used for collision detection");
42
43 DEF_VAR(Real, TangentialFriction, 0, "Tangential friction");
44 DEF_VAR(Real, NormalFriction, 0, "Normal friction");
45
46 public:
48
50
51 public:
52 DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Particle position");
53 DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Particle velocity");
54
55 protected:
56 void preUpdateStates() override;
57 void updateStates() override;
58 void postUpdateStates() override;
59
60 private:
61 };
62}
#define DECLARE_TCLASS(name, T1)
Definition Object.h:87
This class represents the base class for more advanced particle-based nodes.
DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Particle velocity")
DEF_VAR(Real, Thickness, 0.0065, "Mesh thickness used for collision detection")
DEF_INSTANCE_IN(TriangleSet< TDataType >, TriangleSet, "")
DEF_NODE_PORTS(ParticleSystem< TDataType >, ParticleSystem, "Particle Systems")
DEF_VAR(Real, NormalFriction, 0, "Normal friction")
DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Particle position")
DEF_VAR(Real, TangentialFriction, 0, "Tangential friction")
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25